From nobody Mon May 6 03:15:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXml364Hrz5J19X; Mon, 06 May 2024 03:15: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 4VXml35TWsz4MvP; Mon, 6 May 2024 03:15:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714965359; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IKXvezQFzcSViTP46FmjjKOdUDQb92v57JCO2h5e2SA=; b=ixHJdFFvj3rduUwMolyXKiYrV5BQnKOpAZeIdiVObbiX3PUayoP+snvczc1CbwOcY3YgT2 30IdSt1d1ICEm+SpkrTXJLvP3jqKMwNXPSP3WUmjRnIXqhSd/mmOrVQW5dKikeiZK6wXTI mYlVLzaA2/65EOkidEMdjNPJXH3LqWfaM3IIqpEgHm6EqwlprrTPVAJ7vCkoyswT+atfV+ cHwC9iuw/5MhnVUT8i3IxikcFTxgU3ovDUG7U4xFuFyIUyCBi+otukjuCtQooRDRYdZYvE Fo6bwpMwCMo5BjrfdoHBEJ+PIRtPCYdYeCeh0N12uJ3rWRSbEKjeCWe6RmdAcg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1714965359; a=rsa-sha256; cv=none; b=gRBN4K9fF4NRqeXmu1SV5fG3mQoCPmOKA0ltt/R79FJkdi3S3+g+w7v9Jw13KT7Bdj7R/e zOxdPr/L/UIH1TwKAZoJ3By4nFUhRGfH6obZjuC+yS0QdteD3AZYqh+/bj/NAkf8OUxhjf +GmYes6mAJt39viV8utnsbwCrgc/EW+s0TqNjnROM7aZ0DQnZlHjPQanj4Eh+KwKOtBFXv kkPevDCALcbzUVtIMyNxsidpnjE5TWfN/gy4TNTn69iplrS13rBtdflp3paUhovX5bDIsS U45lTJri+txis0ynNN3Hx6+m3f4h3UULerKb8e9dqLKRMdyZ+3ebHcTXySF2gw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714965359; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IKXvezQFzcSViTP46FmjjKOdUDQb92v57JCO2h5e2SA=; b=SDERbd/NvE9kaikb3GbnngrPXLXwtlUQy1VEewEq7OZ/sYGEkt4gdTE8mbKCtKwYzjJ+jJ H44RhUwm3O1CVS+msGW+6kMJ6s9FvfHpvnLYQX+IVv5NEYNq9KIjwdXzcL1kOZ03yQCLOj K2H61ao1N3JXnml0j6dsICtc5VQjhL3sal6P4JyY/EbLxbPYFnEDndnbIFfED0+E5j0X2z fnY9CS/6qs3ALNtTF3F47mWjYVyZkYYp4A/ofdAYWOOSCnVIr+IFvPtJOmI/+jKUS99ZIP QHNz28IqcnZsORkykg0hjb8igH5ZpBAwB3YJYKJ+rjCTSsZ3LUqmmAiyXsHM5A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VXml34znmzgkB; Mon, 6 May 2024 03:15: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 4463FxM6098474; Mon, 6 May 2024 03:15:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4463FxP6098471; Mon, 6 May 2024 03:15:59 GMT (envelope-from git) Date: Mon, 6 May 2024 03:15:59 GMT Message-Id: <202405060315.4463FxP6098471@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: c097967b9af9 - main - mlx5en: add diagnostic in one more case of failed eeprom read preparation List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c097967b9af946cf46246cce5adde53f7e955ecc Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=c097967b9af946cf46246cce5adde53f7e955ecc commit c097967b9af946cf46246cce5adde53f7e955ecc Author: Konstantin Belousov AuthorDate: 2024-05-05 07:09:07 +0000 Commit: Konstantin Belousov CommitDate: 2024-05-06 03:15:35 +0000 mlx5en: add diagnostic in one more case of failed eeprom read preparation Sponsored by: Nvidia Networking MFC after: 1 week --- sys/dev/mlx5/mlx5_en/mlx5_en_main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c index e1dbd02fcf3a..962705e6d258 100644 --- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c +++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c @@ -3674,6 +3674,9 @@ out: /* Check if module is present before doing an access */ module_status = mlx5_query_module_status(priv->mdev, module_num); if (module_status != MLX5_MODULE_STATUS_PLUGGED_ENABLED) { + mlx5_en_err(ifp, + "Query module %d status: not plugged (%d), eeprom reading is not supported\n", + module_num, module_status); error = EINVAL; goto err_i2c; } From nobody Mon May 6 07:27:31 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXtLX17WTz5JWSV; Mon, 06 May 2024 07:28:36 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Received: from mailgate.Leidinger.net (mailgate.leidinger.net [IPv6:2a00:1828:2000:313::1:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature ECDSA (P-256) client-digest SHA256) (Client CN "mailgate.leidinger.net", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VXtLW4tYcz4mMn; Mon, 6 May 2024 07:28:35 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Authentication-Results: mx1.freebsd.org; none List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leidinger.net; s=outgoing-alex; t=1714980499; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=ZJzFhsNK4+FZVspsUg/USQRWdXrdq+PCEQi1/Kj/NYs=; b=ZLNibk/u/lfKtb0c460hbq6qluRHDoJO7OHLaW7gX1BjxGNdeGXzPww3ptCDjPlx3ZOH62 o8PwzOSHlJB0kcvM5s0nJaoMJdLeNyv25wmkVp7rng5Cd/6hAP3ywjA+9wsF2PocBgqALG ildHwJBS7E2+AAQ90ZIWEEzmRtv79bZsk9O3vd7aPm9PA8plsdiaU6BR4Kd1NBFf8eetzp XAii6Usj2qPTVRB6//cSscnp1v/0FCXQ8/FjJZ4vSsAcpULMc5luGCPvSqcsxWY4SR+5B6 pZRgFlirWnnQ3NA1B3NwyTBfihdm7jY595fBCWVozQ29Utve4VuopLpWp5cDWQ== Date: Mon, 06 May 2024 09:27:31 +0200 From: Alexander Leidinger To: Randall Stewart Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: fce03f85c5bf - main - TCP can be subject to Sack Attacks lets fix this issue. In-Reply-To: <202405051310.445DAMEO069675@gitrepo.freebsd.org> References: <202405051310.445DAMEO069675@gitrepo.freebsd.org> Message-ID: <97c2eddd682d7347b0d26c0f042401bb@Leidinger.net> Organization: No organization, this is a private message. Content-Type: multipart/signed; protocol="application/pgp-signature"; boundary="=_ac10579ddc816563745799399c6fecbf"; micalg=pgp-sha256 X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:34240, ipnet:2a00:1828::/32, country:DE] X-Rspamd-Queue-Id: 4VXtLW4tYcz4mMn This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --=_ac10579ddc816563745799399c6fecbf Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed Am 2024-05-05 15:10, schrieb Randall Stewart: > The branch main has been updated by rrs: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=fce03f85c5bfc0d73fb5c43ac1affad73efab11a > > commit fce03f85c5bfc0d73fb5c43ac1affad73efab11a > Author: Randall Stewart > AuthorDate: 2024-05-05 13:08:47 +0000 > Commit: Randall Stewart > CommitDate: 2024-05-05 13:08:47 +0000 > > TCP can be subject to Sack Attacks lets fix this issue. > > There is a type of attack that a TCP peer can launch on a > connection. This is for sure in Rack or BBR and probably even the > default stack if it uses lists in sack processing. The idea of the > attack is that the attacker is driving you to look at 100's of sack > blocks that only update 1 byte. So for example if you have 1 - 10,000 > bytes outstanding the attacker sends in something like: > > ACK 0 SACK(1-512) SACK(1024 - 1536), SACK(2048-2536), SACK(4096 - > 4608), SACK(8192-8704) > This first sack looks fine but then the attacker sends > > ACK 0 SACK(1-512) SACK(1025 - 1537), SACK(2049-2537), SACK(4097 - > 4609), SACK(8193-8705) > ACK 0 SACK(1-512) SACK(1027 - 1539), SACK(2051-2539), SACK(4099 - > 4611), SACK(8195-8707) > ... > These blocks are making you hunt across your linked list and split > things up so that you have an entry for every other byte. Has your list > grows you spend more and more CPU running through the lists. The idea > here is the attacker chooses entries as far apart as possible that make > you run through the list. This example is small but in theory if the > window is open to say 1Meg you could end up with 100's of thousands > link list entries. Would it make sense to use a tree list (generic example: https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/list/TreeList.html) instead of a linked list additional/independently to what you committed? > diff --git a/sys/netinet/tcp_stacks/sack_filter.c > b/sys/netinet/tcp_stacks/sack_filter.c > index e82fcee2ffac..fc9ee8454a1e 100644 > --- a/sys/netinet/tcp_stacks/sack_filter.c > +++ b/sys/netinet/tcp_stacks/sack_filter.c > #ifndef _KERNEL > + > +static u_int tcp_fixed_maxseg(const struct tcpcb *tp) > +{ > + /* Lets pretend their are timestamps on for user space */ > + return (tp->t_maxseg - 12); > +} Typo in the comment? Bye, Alexander. -- http://www.Leidinger.net Alexander@Leidinger.net: PGP 0x8F31830F9F2772BF http://www.FreeBSD.org netchild@FreeBSD.org : PGP 0x8F31830F9F2772BF --=_ac10579ddc816563745799399c6fecbf Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc; size=833 Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEER9UlYXp1PSd08nWXEg2wmwP42IYFAmY4hnEACgkQEg2wmwP4 2IZ4LQ//agGP6jJNatCBAVq+eYwkuSANG3Gjc1k0X+M5gYDyfLygwS32Nh+xNnmr lLgZi9zECoPjOY+iWQCaW5v0u62IZVk4JWA2kQ2yys+wAKx4RHZBvXcorrQx/PLa EBf87h14rfPFHHYHfOxrH9iE1Eu6ANdzqW490yKTSEaD6ELkROqkgjXAtD9LZra8 S1bvmrDHX4EZm2Ski9OI7D1eNMUd6u0Swr7eeJoqDIjLLL3b2lO4xM24mlIPVQf8 BQBZOjx2QJaQy2Xw6Rsaf+ze8hOXKe/HVFRU6y+utH6dtUjPIogHsIMzdhPsGdxz /FtGcZXr/dJpcCmo8vLW+3mK24SVEVcr/ByL6fw55E61g8dhL2ksL/rbgLRTpzP/ 0FPX0JhSkHjE+Vv2sL80JmyueJbmwwiyNMdFC6YeLIDatOJFjLWPIj6HNEC8n/x5 C+hu/Cxy3MYM1IVgeKh8X1iF/Y5cWQIFhyGi8ob/DKl8arszm13oZi7IxZxIwYOT Sv5Q2JDjU5p8GzDkpP6vijZhrfG2Mb65RzmzWf8L7zriPZ20XS2egDzALZLtDtti KIiywBY6TPw1OpGec2hiH5hHCC8dyW1n9It+avL+z2I+Ml2uv0eySy/Bi2HOMB5L XGRU7x0hgYDwFBVB/5RWQJE3c7YojCc5matpn2tXQOOMn3vqM3M= =S0f9 -----END PGP SIGNATURE----- --=_ac10579ddc816563745799399c6fecbf-- From nobody Mon May 6 08:44:42 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXw2M4PBbz5JggL; Mon, 06 May 2024 08:44: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 4VXw2M46wKz4xVV; Mon, 6 May 2024 08:44:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985083; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8BloHFnmu+euEFxVA9ujPzvMUvKD+gzu1NCAo+O7lKI=; b=ZeoqB+k91xQ++cEiCWyYg34cT+WKO981T3WhTHTRg1JuCCSsSn9d6seUXoHlQdbY8ZuCyQ lV4TwIFhF3RrARfg8a27jBaV7FemDeotvH5VbBV/EYizvI7c0UynZ4m6Lh1nEJbov8tEW7 m+AkxmbLrei1HIqle3uYxWo8uxksPszWuqf33XT0jI9+WW8FmwLmUmPaxLO8Um2ybu6VrI owvUCGhvzfzZigEKnfgqCV0nYsGNiS3t7TqVNzvrySW6xbmwVfkgpgfexgqtjzKsss7uwf ED6uiamZ4+yqKwyUoMRpq8HErDsC2rOyC63KQEcPEyBBpuB+Rnp9oARba0/saQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1714985083; a=rsa-sha256; cv=none; b=MFaOt+PXQyVrMUte5V5MXjdhemGiAfr43YX8sq/NVecI14ac+l9cS6B+JcglAbVCFTxvQI 8w8AV4onMQxPfMljdKSUxvf+3apJhpKDyVvdV686fnR9bmMy6AQsl/ONXKmB6LQMrxfToY XMMFgXClvBk0+kc+x2QS/XJJXH1CgAVS0UB2OWPodYeZ0g9xur4B4J0+rwQAbZlOArIT+j 1n3sZfOFUO/VskRvKswOTSYXNunYqZPbWjQ4yg0J1+aiTZHc7Lj8WdUMoC18Wz8nsuI2pr zCnPuK8cXvd2mDCtNGtd9QmVbVmcSs9li8zEyLBqiYD9WkHLv7NdIy+dwHUhHQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985083; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8BloHFnmu+euEFxVA9ujPzvMUvKD+gzu1NCAo+O7lKI=; b=CXTi1SpU/85iOjDnVbyi4fVe7uZitFrqHMnqNLoUOlA1r5JYtMJtCVwTUfR2M2YcId0GR5 3M6b0lMRHl1IRjdC1z0ICIbIpV5wpYIyI/8HsBDxRdTUz+8vT4GesItYCLaW+vcVRgQeEp QnprI7Xf/6N6eNUAr/1HcO+Dt1RELf9pBD/O2qbwYLMqc2hqyAgWQzRiGO1WVCEYEsgefd lox+E7yirvz/wn6iQpMcxz4cd6WZdrnja8+7uCjR1Dk3T4tappI9IercGzP4rvL58HHPbv 5eng19oN0mUkHGS2JU+iYUNajGHGkMyibv9SZWRcVFVdZDncL+WQSvlgeIpiNg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VXw2M3jRYzqx5; Mon, 6 May 2024 08:44: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 4468ihGg058716; Mon, 6 May 2024 08:44:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4468igcx058713; Mon, 6 May 2024 08:44:42 GMT (envelope-from git) Date: Mon, 6 May 2024 08:44:42 GMT Message-Id: <202405060844.4468igcx058713@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: aa1a8ff2d6db - main - Import device-tree files from Linux 6.6 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145 commit aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145 Merge: c097967b9af9 dbacf41c9775 Author: Emmanuel Vadot AuthorDate: 2024-05-06 08:43:59 +0000 Commit: Emmanuel Vadot CommitDate: 2024-05-06 08:43:59 +0000 Import device-tree files from Linux 6.6 Sponsored by: Beckhoff Automation GmbH & Co. KG sys/contrib/device-tree/Bindings/.yamllint | 5 + sys/contrib/device-tree/Bindings/arm/amlogic.yaml | 8 + .../Bindings/arm/arm,coresight-cti.yaml | 2 +- .../Bindings/arm/arm,coresight-dummy-sink.yaml | 2 +- .../Bindings/arm/arm,coresight-dummy-source.yaml | 2 +- .../Bindings/arm/arm,embedded-trace-extension.yaml | 6 +- .../Bindings/arm/arm,trace-buffer-extension.yaml | 9 +- .../Bindings/arm/arm,versatile-sysreg.yaml | 2 +- .../Bindings/arm/arm,vexpress-juno.yaml | 2 +- .../Bindings/arm/aspeed/aspeed,sbc.yaml | 4 +- .../device-tree/Bindings/arm/aspeed/aspeed.yaml | 4 +- .../device-tree/Bindings/arm/bcm/brcm,bcm4708.yaml | 1 + .../Bindings/arm/bcm/brcm,bcm53573.yaml | 39 + sys/contrib/device-tree/Bindings/arm/cpus.yaml | 3 + .../arm/firmware/tlm,trusted-foundations.yaml | 4 +- sys/contrib/device-tree/Bindings/arm/fsl.yaml | 53 +- .../Bindings/arm/hisilicon/controller/cpuctrl.yaml | 20 + .../device-tree/Bindings/arm/intel,socfpga.yaml | 5 + .../Bindings/arm/keystone/ti,k3-sci-common.yaml | 2 +- .../device-tree/Bindings/arm/keystone/ti,sci.yaml | 2 +- .../arm/marvell/cp110-system-controller.txt | 8 +- .../Bindings/arm/mediatek/mediatek,mipi0a.txt | 2 +- .../Bindings/arm/mediatek/mediatek,vcodecsys.txt | 2 +- .../Bindings/arm/mstar/mstar,l3bridge.yaml | 4 +- .../Bindings/arm/mstar/mstar,smpctrl.yaml | 4 +- sys/contrib/device-tree/Bindings/arm/omap/ctrl.txt | 2 +- sys/contrib/device-tree/Bindings/arm/omap/omap.txt | 99 - sys/contrib/device-tree/Bindings/arm/pmu.yaml | 5 + .../Bindings/arm/qcom,coresight-tpda.yaml | 2 +- .../Bindings/arm/qcom,coresight-tpdm.yaml | 2 +- sys/contrib/device-tree/Bindings/arm/qcom-soc.yaml | 2 +- sys/contrib/device-tree/Bindings/arm/qcom.yaml | 14 + sys/contrib/device-tree/Bindings/arm/rockchip.yaml | 15 + .../device-tree/Bindings/arm/stm32/st,mlahb.yaml | 4 +- .../Bindings/arm/stm32/st,stm32-syscon.yaml | 4 +- .../device-tree/Bindings/arm/stm32/stm32.yaml | 4 +- sys/contrib/device-tree/Bindings/arm/sunxi.yaml | 9 +- sys/contrib/device-tree/Bindings/arm/ti/k3.yaml | 13 + sys/contrib/device-tree/Bindings/arm/ti/omap.yaml | 176 ++ .../device-tree/Bindings/ata/pata-common.yaml | 3 +- .../device-tree/Bindings/bus/brcm,gisb-arb.yaml | 2 +- .../bus/fsl,imx8qxp-pixel-link-msi-bus.yaml | 3 - .../Bindings/bus/nvidia,tegra210-aconnect.yaml | 4 +- .../device-tree/Bindings/bus/qcom,ssbi.yaml | 63 + .../Bindings/cache/andestech,ax45mp-cache.yaml | 81 + .../Bindings/chrome/google,cros-ec-typec.yaml | 6 +- .../clock/allwinner,sun4i-a10-osc-clk.yaml | 2 +- .../device-tree/Bindings/clock/alphascale,acc.txt | 4 +- .../Bindings/clock/amlogic,gxbb-aoclkc.yaml | 85 + .../Bindings/clock/amlogic,gxbb-clkc.yaml | 37 + .../device-tree/Bindings/clock/fsl,imx8-acm.yaml | 282 +++ .../Bindings/clock/intel,agilex5-clkmgr.yaml | 40 + .../device-tree/Bindings/clock/keystone-pll.txt | 2 +- .../device-tree/Bindings/clock/lpc1850-ccu.txt | 2 +- .../Bindings/clock/lpc1850-creg-clk.txt | 4 +- .../device-tree/Bindings/clock/maxim,max9485.txt | 2 +- .../Bindings/clock/nvidia,tegra124-car.yaml | 4 +- .../Bindings/clock/qcom,dispcc-sm6125.yaml | 24 +- .../Bindings/clock/qcom,dispcc-sm8x50.yaml | 4 +- .../Bindings/clock/qcom,gcc-apq8064.yaml | 2 +- .../Bindings/clock/qcom,gcc-ipq4019.yaml | 2 +- .../Bindings/clock/qcom,gcc-ipq8074.yaml | 2 +- .../Bindings/clock/qcom,gcc-msm8976.yaml | 2 +- .../Bindings/clock/qcom,gcc-msm8996.yaml | 2 +- .../Bindings/clock/qcom,gcc-msm8998.yaml | 2 +- .../device-tree/Bindings/clock/qcom,gcc-other.yaml | 5 +- .../Bindings/clock/qcom,gcc-qcs404.yaml | 2 +- .../Bindings/clock/qcom,gcc-sc7180.yaml | 2 +- .../Bindings/clock/qcom,gcc-sc7280.yaml | 2 +- .../Bindings/clock/qcom,gcc-sdm845.yaml | 2 +- .../Bindings/clock/qcom,gcc-sm8150.yaml | 2 +- .../Bindings/clock/qcom,gcc-sm8250.yaml | 2 +- .../Bindings/clock/qcom,gcc-sm8450.yaml | 2 +- .../device-tree/Bindings/clock/qcom,gcc.yaml | 2 +- .../device-tree/Bindings/clock/qcom,gpucc.yaml | 2 +- .../Bindings/clock/qcom,ipq5018-gcc.yaml | 63 + .../Bindings/clock/qcom,kpss-acc-v1.yaml | 2 +- .../device-tree/Bindings/clock/qcom,lcc.yaml | 34 + .../device-tree/Bindings/clock/qcom,mmcc.yaml | 4 +- .../Bindings/clock/qcom,msm8996-cbf.yaml | 4 +- .../Bindings/clock/qcom,msm8998-gpucc.yaml | 2 +- .../Bindings/clock/qcom,qdu1000-gcc.yaml | 3 +- .../device-tree/Bindings/clock/qcom,rpmhcc.yaml | 2 +- .../Bindings/clock/qcom,sc7180-camcc.yaml | 2 +- .../Bindings/clock/qcom,sc7180-dispcc.yaml | 2 +- .../Bindings/clock/qcom,sc7180-lpasscorecc.yaml | 2 +- .../Bindings/clock/qcom,sc7180-mss.yaml | 2 +- .../Bindings/clock/qcom,sc7280-camcc.yaml | 2 +- .../Bindings/clock/qcom,sc7280-dispcc.yaml | 2 +- .../Bindings/clock/qcom,sc7280-lpasscc.yaml | 2 +- .../Bindings/clock/qcom,sc7280-lpasscorecc.yaml | 2 +- .../Bindings/clock/qcom,sdm845-dispcc.yaml | 2 +- .../Bindings/clock/qcom,sm8350-videocc.yaml | 8 +- .../Bindings/clock/qcom,sm8450-camcc.yaml | 4 +- .../Bindings/clock/qcom,sm8450-dispcc.yaml | 4 +- .../Bindings/clock/qcom,sm8450-videocc.yaml | 4 +- .../Bindings/clock/qcom,sm8550-dispcc.yaml | 4 +- .../device-tree/Bindings/clock/qcom,videocc.yaml | 6 +- .../Bindings/clock/renesas,5p35023.yaml | 89 + .../Bindings/clock/sprd,sc9863a-clk.yaml | 2 +- .../Bindings/clock/starfive,jh7110-ispcrg.yaml | 87 + .../Bindings/clock/starfive,jh7110-pll.yaml | 46 + .../Bindings/clock/starfive,jh7110-stgcrg.yaml | 82 + .../Bindings/clock/starfive,jh7110-syscrg.yaml | 18 +- .../Bindings/clock/starfive,jh7110-voutcrg.yaml | 90 + .../device-tree/Bindings/clock/ti,cdce925.yaml | 2 +- .../device-tree/Bindings/clock/ti,sci-clk.yaml | 2 +- sys/contrib/device-tree/Bindings/clock/ti/mux.txt | 2 +- .../device-tree/Bindings/clock/vf610-clock.txt | 2 +- .../Bindings/clock/xlnx,versal-clk.yaml | 87 +- .../Bindings/connector/usb-connector.yaml | 11 +- .../cpu/nvidia,tegra186-ccplex-cluster.yaml | 37 + .../Bindings/cpufreq/cpufreq-qcom-hw.yaml | 5 +- .../Bindings/crypto/qcom,inline-crypto-engine.yaml | 1 + .../device-tree/Bindings/crypto/qcom-qce.yaml | 1 + .../device-tree/Bindings/crypto/st,stm32-hash.yaml | 1 + .../device-tree/Bindings/crypto/ti,sa2ul.yaml | 16 +- .../devfreq/event/samsung,exynos-ppmu.yaml | 2 +- .../Bindings/display/atmel/hlcdc-dc.txt | 2 +- .../Bindings/display/bridge/snps,dw-mipi-dsi.yaml | 2 +- .../Bindings/display/bridge/toshiba,tc358767.yaml | 3 + .../Bindings/display/cirrus,clps711x-fb.txt | 2 +- .../Bindings/display/imx/fsl,imx6-hdmi.yaml | 2 +- .../Bindings/display/msm/dp-controller.yaml | 4 +- .../Bindings/display/msm/dsi-controller-main.yaml | 8 +- .../Bindings/display/msm/dsi-phy-10nm.yaml | 2 +- .../Bindings/display/msm/dsi-phy-14nm.yaml | 13 +- .../Bindings/display/msm/dsi-phy-20nm.yaml | 2 +- .../Bindings/display/msm/dsi-phy-28nm.yaml | 2 +- .../Bindings/display/msm/dsi-phy-7nm.yaml | 2 +- .../Bindings/display/msm/dsi-phy-common.yaml | 2 +- .../device-tree/Bindings/display/msm/gpu.yaml | 6 + .../Bindings/display/msm/mdss-common.yaml | 8 +- .../Bindings/display/msm/qcom,mdp5.yaml | 2 +- .../Bindings/display/msm/qcom,mdss.yaml | 4 +- .../Bindings/display/msm/qcom,msm8998-dpu.yaml | 2 +- .../Bindings/display/msm/qcom,msm8998-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,qcm2290-dpu.yaml | 2 +- .../Bindings/display/msm/qcom,qcm2290-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,sc7180-dpu.yaml | 7 +- .../Bindings/display/msm/qcom,sc7180-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,sc7280-dpu.yaml | 2 +- .../Bindings/display/msm/qcom,sc7280-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,sc8280xp-dpu.yaml | 2 +- .../Bindings/display/msm/qcom,sc8280xp-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,sdm845-dpu.yaml | 2 +- .../Bindings/display/msm/qcom,sdm845-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,sm6115-dpu.yaml | 2 +- .../Bindings/display/msm/qcom,sm6115-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,sm6125-mdss.yaml | 213 ++ .../Bindings/display/msm/qcom,sm6350-mdss.yaml | 9 +- .../Bindings/display/msm/qcom,sm6375-mdss.yaml | 9 +- .../Bindings/display/msm/qcom,sm8150-dpu.yaml | 2 +- .../Bindings/display/msm/qcom,sm8150-mdss.yaml | 2 +- .../Bindings/display/msm/qcom,sm8250-dpu.yaml | 6 +- .../Bindings/display/msm/qcom,sm8250-mdss.yaml | 10 +- .../Bindings/display/msm/qcom,sm8350-dpu.yaml | 6 +- .../Bindings/display/msm/qcom,sm8350-mdss.yaml | 14 +- .../Bindings/display/msm/qcom,sm8450-dpu.yaml | 6 +- .../Bindings/display/msm/qcom,sm8450-mdss.yaml | 18 +- .../Bindings/display/msm/qcom,sm8550-dpu.yaml | 6 +- .../Bindings/display/msm/qcom,sm8550-mdss.yaml | 18 +- .../display/panel/advantech,idk-2121wr.yaml | 3 + .../Bindings/display/panel/himax,hx8394.yaml | 2 +- .../Bindings/display/panel/ilitek,ili9881c.yaml | 1 + .../display/panel/mantix,mlaf057we51-x.yaml | 2 +- .../display/panel/olimex,lcd-olinuxino.yaml | 2 +- .../Bindings/display/panel/orisetech,otm8009a.yaml | 2 +- .../Bindings/display/panel/panel-common.yaml | 2 +- .../Bindings/display/panel/panel-dsi-cm.yaml | 2 +- .../Bindings/display/panel/panel-lvds.yaml | 6 + .../Bindings/display/panel/panel-mipi-dbi-spi.yaml | 3 +- .../Bindings/display/panel/panel-simple-dsi.yaml | 2 +- .../Bindings/display/panel/panel-simple.yaml | 6 +- .../Bindings/display/panel/raydium,rm68200.yaml | 2 +- .../display/panel/rocktech,jh057n00900.yaml | 2 +- .../Bindings/display/panel/sitronix,st7789v.yaml | 13 +- .../display/panel/startek,kd070fhfid015.yaml | 69 + .../Bindings/display/panel/visionox,r66451.yaml | 59 + .../Bindings/display/panel/visionox,rm69299.yaml | 2 +- .../Bindings/display/panel/visionox,vtdr6130.yaml | 2 +- .../Bindings/display/rockchip/rockchip-vop2.yaml | 2 +- .../Bindings/display/solomon,ssd1307fb.yaml | 28 +- .../display/tegra/nvidia,tegra124-sor.yaml | 2 +- .../Bindings/display/ti/ti,am65x-dss.yaml | 18 +- .../device-tree/Bindings/dma/atmel-xdma.txt | 3 +- .../device-tree/Bindings/dma/brcm,bcm2835-dma.yaml | 102 + sys/contrib/device-tree/Bindings/dma/fsl,edma.yaml | 106 +- .../device-tree/Bindings/dma/ingenic,dma.yaml | 2 +- .../Bindings/dma/nvidia,tegra20-apbdma.txt | 2 +- .../device-tree/Bindings/dma/qcom,bam-dma.yaml | 33 +- .../device-tree/Bindings/dma/stericsson,dma40.yaml | 2 +- .../device-tree/Bindings/dma/xilinx/xilinx_dma.txt | 6 + .../Bindings/dma/xilinx/xlnx,zynqmp-dma-1.0.yaml | 3 + sys/contrib/device-tree/Bindings/eeprom/at24.yaml | 7 +- sys/contrib/device-tree/Bindings/eeprom/at25.yaml | 4 +- .../Bindings/extcon/maxim,max77843.yaml | 1 + .../Bindings/extcon/qcom,pm8941-misc.yaml | 2 +- .../Bindings/extcon/siliconmitus,sm5502-muic.yaml | 4 + .../intel,ixp4xx-network-processing-engine.yaml | 4 +- .../Bindings/firmware/nvidia,tegra186-bpmp.yaml | 39 +- .../device-tree/Bindings/firmware/qcom,scm.yaml | 1 + .../firmware/xilinx/xlnx,zynqmp-firmware.yaml | 14 + .../device-tree/Bindings/fpga/fpga-region.txt | 4 +- .../Bindings/fsi/ibm,i2cr-fsi-master.yaml | 41 + .../device-tree/Bindings/gpio/adi,ds4520-gpio.yaml | 51 + .../device-tree/Bindings/gpio/brcm,kona-gpio.yaml | 100 + .../device-tree/Bindings/gpio/fsl-imx-gpio.yaml | 2 + .../device-tree/Bindings/gpio/gpio-pca95xx.yaml | 1 + .../device-tree/Bindings/gpio/gpio-xgene-sb.txt | 2 +- .../Bindings/gpio/snps,dw-apb-gpio.yaml | 6 +- .../device-tree/Bindings/gpio/st,stmpe-gpio.yaml | 4 + .../device-tree/Bindings/gpio/ti,omap-gpio.yaml | 4 +- .../Bindings/gpio/x-powers,axp209-gpio.yaml | 4 +- .../Bindings/gpio/xlnx,zynqmp-gpio-modepin.yaml | 4 +- .../Bindings/gpio/xylon,logicvc-gpio.yaml | 4 +- .../hwlock/allwinner,sun6i-a31-hwspinlock.yaml | 2 +- .../Bindings/hwlock/ti,omap-hwspinlock.yaml | 2 +- .../device-tree/Bindings/hwmon/adi,adm1177.yaml | 2 +- .../Bindings/hwmon/adi,axi-fan-control.yaml | 2 +- .../device-tree/Bindings/hwmon/adi,ltc2992.yaml | 2 +- .../Bindings/hwmon/aspeed-pwm-tacho.txt | 2 +- .../device-tree/Bindings/hwmon/iio-hwmon.yaml | 4 +- .../device-tree/Bindings/hwmon/jedec,jc42.yaml | 2 +- .../device-tree/Bindings/hwmon/lltc,ltc4151.yaml | 2 +- sys/contrib/device-tree/Bindings/hwmon/lm75.yaml | 2 +- sys/contrib/device-tree/Bindings/hwmon/lm87.txt | 2 +- .../device-tree/Bindings/hwmon/ltq-cputemp.txt | 2 +- .../Bindings/hwmon/microchip,mcp3021.yaml | 2 +- .../Bindings/hwmon/moortec,mr75203.yaml | 2 +- .../device-tree/Bindings/hwmon/national,lm90.yaml | 2 +- .../device-tree/Bindings/hwmon/npcm750-pwm-fan.txt | 2 +- .../device-tree/Bindings/hwmon/nxp,mc34vr500.yaml | 2 +- .../Bindings/hwmon/sensirion,sht15.yaml | 2 +- .../Bindings/hwmon/sensirion,shtc1.yaml | 2 +- .../Bindings/hwmon/starfive,jh71x0-temp.yaml | 8 +- .../device-tree/Bindings/hwmon/ti,tmp102.yaml | 2 +- .../device-tree/Bindings/hwmon/ti,tmp108.yaml | 2 +- .../device-tree/Bindings/hwmon/ti,tmp513.yaml | 2 +- .../device-tree/Bindings/hwmon/ti,tps23861.yaml | 2 +- .../device-tree/Bindings/i2c/cdns,i2c-r1p10.yaml | 3 + .../Bindings/i2c/i2c-arb-gpio-challenge.yaml | 135 ++ sys/contrib/device-tree/Bindings/i2c/i2c-atr.yaml | 34 + .../device-tree/Bindings/i2c/i2c-mux-pca954x.yaml | 46 +- sys/contrib/device-tree/Bindings/i2c/i2c-mxs.yaml | 5 +- sys/contrib/device-tree/Bindings/i2c/i2c-sprd.txt | 2 +- .../device-tree/Bindings/i2c/nxp,pca9541.yaml | 56 + .../device-tree/Bindings/i2c/qcom,i2c-cci.yaml | 1 + sys/contrib/device-tree/Bindings/i3c/i3c.yaml | 15 +- .../device-tree/Bindings/i3c/mipi-i3c-hci.yaml | 4 +- .../Bindings/iio/accel/fsl,mma7455.yaml | 4 +- .../device-tree/Bindings/iio/adc/adi,ad7292.yaml | 2 +- .../iio/adc/allwinner,sun20i-d1-gpadc.yaml | 91 + .../Bindings/iio/adc/atmel,sama9260-adc.yaml | 4 +- .../device-tree/Bindings/iio/adc/ti,ads1015.yaml | 15 +- .../Bindings/iio/adc/xlnx,zynqmp-ams.yaml | 2 +- .../Bindings/iio/addac/adi,ad74115.yaml | 3 +- .../device-tree/Bindings/iio/cdc/adi,ad7150.yaml | 2 +- sys/contrib/device-tree/Bindings/iio/common.yaml | 2 +- .../device-tree/Bindings/iio/dac/adi,ad5758.yaml | 3 +- .../Bindings/iio/dac/microchip,mcp4728.yaml | 49 + .../Bindings/iio/frequency/adi,admv1013.yaml | 60 + .../Bindings/iio/frequency/adi,admv1014.yaml | 10 +- .../Bindings/iio/health/ti,afe4403.yaml | 3 +- .../Bindings/iio/health/ti,afe4404.yaml | 3 +- .../Bindings/iio/humidity/ti,hdc2010.yaml | 2 +- .../Bindings/iio/light/rohm,bu27010.yaml | 50 + .../iio/pressure/honeywell,mprls0025pa.yaml | 2 +- .../Bindings/iio/proximity/ams,as3935.yaml | 2 +- .../Bindings/iio/proximity/murata,irsd200.yaml | 60 + .../Bindings/iio/proximity/semtech,sx9310.yaml | 5 +- .../Bindings/iio/proximity/semtech,sx9324.yaml | 5 +- .../device-tree/Bindings/iio/st,st-sensors.yaml | 2 +- .../device-tree/Bindings/input/azoteq,iqs7222.yaml | 248 ++- .../device-tree/Bindings/input/elan,ekth3000.yaml | 2 +- .../device-tree/Bindings/input/elan,ekth6915.yaml | 5 + .../device-tree/Bindings/input/goodix,gt7375p.yaml | 5 + .../device-tree/Bindings/input/hid-over-i2c.yaml | 2 + .../Bindings/input/ilitek,ili9882t.yaml | 67 + .../device-tree/Bindings/input/syna,rmi4.yaml | 271 +++ .../Bindings/input/touchscreen/azoteq,iqs7211.yaml | 769 +++++++ .../Bindings/input/touchscreen/edt-ft5x06.yaml | 6 + .../Bindings/input/touchscreen/eeti,exc3000.yaml | 2 + .../Bindings/input/touchscreen/melfas,mms114.yaml | 5 + .../Bindings/input/touchscreen/touchscreen.yaml | 7 + .../Bindings/input/touchscreen/tsc2007.txt | 2 +- .../Bindings/interconnect/qcom,msm8998-bwmon.yaml | 6 + .../Bindings/interconnect/qcom,osm-l3.yaml | 1 + .../Bindings/interconnect/qcom,rpmh.yaml | 18 +- .../amlogic,meson-gpio-intc.yaml | 1 + .../Bindings/interrupt-controller/arm,gic-v3.yaml | 14 +- .../arm,versatile-fpga-irq.txt | 4 +- .../brcm,bcm2835-armctrl-ic.txt | 2 +- .../interrupt-controller/brcm,bcm7120-l2-intc.yaml | 2 +- .../Bindings/interrupt-controller/qcom,pdc.yaml | 1 + .../interrupt-controller/renesas,irqc.yaml | 1 + .../interrupt-controller/renesas,rzg2l-irqc.yaml | 230 ++- .../st,stih407-irq-syscfg.yaml | 65 + .../interrupt-controller/ti,pruss-intc.yaml | 2 +- .../device-tree/Bindings/iommu/arm,smmu.yaml | 41 + .../device-tree/Bindings/iommu/mediatek,iommu.yaml | 12 +- .../device-tree/Bindings/iommu/qcom,iommu.yaml | 22 +- .../device-tree/Bindings/iommu/xen,grant-dma.yaml | 2 +- .../Bindings/ipmi/aspeed,ast2400-kcs-bmc.yaml | 8 +- .../device-tree/Bindings/ipmi/ipmi-ipmb.yaml | 2 +- .../device-tree/Bindings/ipmi/ipmi-smic.yaml | 2 +- .../leds/backlight/mediatek,mt6370-backlight.yaml | 2 +- sys/contrib/device-tree/Bindings/leds/common.yaml | 15 +- .../device-tree/Bindings/leds/leds-aw2013.yaml | 13 + .../Bindings/leds/leds-group-multicolor.yaml | 64 + .../device-tree/Bindings/leds/leds-lp55xx.yaml | 4 +- .../device-tree/Bindings/leds/leds-qcom-lpg.yaml | 2 +- .../device-tree/Bindings/leds/nxp,pca953x.yaml | 4 + .../device-tree/Bindings/leds/nxp,pca995x.yaml | 81 + .../Bindings/leds/panasonic,an30259a.yaml | 84 + .../device-tree/Bindings/leds/rohm,bd2606mvv.yaml | 4 +- .../Bindings/leds/rohm,bd71828-leds.yaml | 2 - .../Bindings/mailbox/brcm,iproc-flexrm-mbox.txt | 2 +- .../Bindings/mailbox/ti,omap-mailbox.yaml | 4 +- .../device-tree/Bindings/media/amphion,vpu.yaml | 8 +- .../device-tree/Bindings/media/cdns,csi2rx.yaml | 201 ++ .../Bindings/media/cec/nvidia,tegra114-cec.yaml | 1 - .../Bindings/media/i2c/ovti,ov5693.yaml | 31 +- .../Bindings/media/i2c/ovti,ov7251.yaml | 109 + .../Bindings/media/i2c/sony,imx415.yaml | 1 + .../Bindings/media/i2c/st,st-mipid02.yaml | 1 - .../Bindings/media/i2c/ti,ds90ub913.yaml | 133 ++ .../Bindings/media/i2c/ti,ds90ub953.yaml | 134 ++ .../Bindings/media/i2c/ti,ds90ub960.yaml | 427 ++++ .../Bindings/media/i2c/toshiba,tc358746.yaml | 4 +- .../device-tree/Bindings/media/i2c/tvp5150.txt | 2 +- .../Bindings/media/mediatek,vcodec-decoder.yaml | 67 +- .../media/mediatek,vcodec-subdev-decoder.yaml | 2 +- .../device-tree/Bindings/media/nxp,imx7-csi.yaml | 1 - .../device-tree/Bindings/media/nxp,imx8-isi.yaml | 5 +- .../Bindings/media/qcom,msm8916-venus.yaml | 4 +- .../Bindings/media/qcom,sm8250-venus.yaml | 4 +- .../device-tree/Bindings/media/renesas,vin.yaml | 4 +- .../device-tree/Bindings/media/rockchip-isp1.yaml | 1 + .../device-tree/Bindings/media/samsung,fimc.yaml | 1 + .../Bindings/memory-controllers/ingenic,nemc.yaml | 1 + .../memory-controllers/mc-peripheral-props.yaml | 2 + .../memory-controllers/mediatek,smi-larb.yaml | 2 +- .../memory-controllers/rockchip,rk3399-dmc.yaml | 4 +- .../memory-controllers/xlnx,zynq-ddrc-a05.yaml | 2 +- .../Bindings/mfd/allwinner,sun6i-a31-prcm.yaml | 43 +- .../Bindings/mfd/allwinner,sun8i-a23-prcm.yaml | 42 - .../device-tree/Bindings/mfd/aspeed-lpc.yaml | 2 +- .../device-tree/Bindings/mfd/atmel-flexcom.txt | 1 + .../device-tree/Bindings/mfd/atmel-gpbr.txt | 1 + .../device-tree/Bindings/mfd/atmel-hlcdc.txt | 1 + .../device-tree/Bindings/mfd/atmel-matrix.txt | 1 + sys/contrib/device-tree/Bindings/mfd/atmel-smc.txt | 1 + .../Bindings/mfd/brcm,bcm6318-gpio-sysctl.yaml | 4 +- .../Bindings/mfd/brcm,bcm63268-gpio-sysctl.yaml | 4 +- .../Bindings/mfd/brcm,bcm6328-gpio-sysctl.yaml | 4 +- .../Bindings/mfd/brcm,bcm6358-gpio-sysctl.yaml | 4 +- .../Bindings/mfd/brcm,bcm6362-gpio-sysctl.yaml | 4 +- .../Bindings/mfd/brcm,bcm6368-gpio-sysctl.yaml | 4 +- .../device-tree/Bindings/mfd/maxim,max77693.yaml | 48 + .../device-tree/Bindings/mfd/qcom,pm8008.yaml | 2 +- .../device-tree/Bindings/mfd/qcom,spmi-pmic.yaml | 6 +- .../Bindings/mfd/rohm,bd71847-pmic.yaml | 1 - .../device-tree/Bindings/mfd/rohm,bd9576-pmic.yaml | 4 +- sys/contrib/device-tree/Bindings/mfd/st,stmpe.yaml | 297 +++ .../device-tree/Bindings/mfd/st,stpmic1.yaml | 12 +- .../Bindings/mfd/stericsson,ab8500.yaml | 16 +- .../Bindings/mfd/stericsson,db8500-prcmu.yaml | 22 +- .../Bindings/mips/loongson/ls2k-reset.yaml | 4 +- .../Bindings/mips/loongson/rs780e-acpi.yaml | 4 +- .../misc/intel,ixp4xx-ahb-queue-manager.yaml | 4 +- .../device-tree/Bindings/mmc/arasan,sdhci.yaml | 6 + .../Bindings/mmc/marvell,xenon-sdhci.yaml | 4 +- .../device-tree/Bindings/mmc/mmc-controller.yaml | 2 +- sys/contrib/device-tree/Bindings/mmc/mtk-sd.yaml | 10 - sys/contrib/device-tree/Bindings/mmc/pxa-mmc.txt | 2 +- .../device-tree/Bindings/mmc/sdhci-atmel.txt | 4 +- .../device-tree/Bindings/mmc/sdhci-msm.yaml | 6 +- .../device-tree/Bindings/mmc/ti-omap-hsmmc.txt | 2 +- .../Bindings/mtd/amlogic,meson-nand.yaml | 6 +- .../device-tree/Bindings/mtd/jedec,spi-nor.yaml | 21 +- .../Bindings/mtd/marvell,nand-controller.yaml | 1 + .../Bindings/mtd/microchip,mchp48l640.yaml | 4 +- .../device-tree/Bindings/mtd/nand-controller.yaml | 2 +- .../device-tree/Bindings/mtd/partitions/seama.yaml | 44 + .../Bindings/net/bluetooth/qualcomm-bluetooth.yaml | 25 + .../device-tree/Bindings/net/brcm,asp-v2.0.yaml | 155 ++ .../Bindings/net/brcm,bcm7445-switch-v4.0.txt | 2 +- .../device-tree/Bindings/net/brcm,unimac-mdio.yaml | 2 + .../Bindings/net/can/allwinner,sun4i-a10-can.yaml | 6 +- .../device-tree/Bindings/net/can/bosch,m_can.yaml | 22 +- sys/contrib/device-tree/Bindings/net/can/cc770.txt | 2 +- .../device-tree/Bindings/net/can/tcan4x5x.txt | 11 +- .../device-tree/Bindings/net/can/xilinx,can.yaml | 3 + .../device-tree/Bindings/net/davicom,dm9000.yaml | 59 + .../device-tree/Bindings/net/dsa/brcm,sf2.yaml | 2 +- sys/contrib/device-tree/Bindings/net/dsa/dsa.yaml | 2 +- .../device-tree/Bindings/net/dsa/marvell.txt | 2 +- .../Bindings/net/dsa/microchip,ksz.yaml | 3 + .../Bindings/net/ethernet-controller.yaml | 1 + .../device-tree/Bindings/net/ethernet-phy.yaml | 2 +- .../Bindings/net/faraday,ftgmac100.yaml | 102 + .../device-tree/Bindings/net/mediatek,net.yaml | 109 +- .../device-tree/Bindings/net/mediatek-dwmac.yaml | 2 +- .../Bindings/net/microchip,lan95xx.yaml | 2 +- .../device-tree/Bindings/net/motorcomm,yt8xxx.yaml | 34 + .../device-tree/Bindings/net/nfc/marvell,nci.yaml | 4 +- .../device-tree/Bindings/net/qca,ar803x.yaml | 2 + .../device-tree/Bindings/net/rockchip-dwmac.yaml | 1 + .../device-tree/Bindings/net/samsung-sxgbe.txt | 4 +- .../Bindings/net/snps,dwc-qos-ethernet.txt | 2 +- sys/contrib/device-tree/Bindings/net/sti-dwmac.txt | 2 +- .../device-tree/Bindings/net/ti,icss-iep.yaml | 45 + .../device-tree/Bindings/net/ti,icssg-prueth.yaml | 193 ++ .../Bindings/net/wireless/mediatek,mt76.yaml | 13 +- .../Bindings/net/xlnx,gmii-to-rgmii.yaml | 55 + sys/contrib/device-tree/Bindings/nios2/nios2.txt | 2 +- .../device-tree/Bindings/nvmem/fsl,t1023-sfp.yaml | 37 + .../Bindings/nvmem/layouts/fixed-cell.yaml | 26 + .../Bindings/nvmem/layouts/fixed-layout.yaml | 12 + .../Bindings/nvmem/layouts/onie,tlv-layout.yaml | 2 +- sys/contrib/device-tree/Bindings/nvmem/nvmem.yaml | 5 +- .../device-tree/Bindings/nvmem/qcom,qfprom.yaml | 2 + .../Bindings/nvmem/qcom,sec-qfprom.yaml | 55 + .../Bindings/opp/operating-points-v2-ti-cpu.yaml | 92 + .../device-tree/Bindings/opp/opp-v2-base.yaml | 2 +- .../Bindings/opp/ti,omap-opp-supply.yaml | 101 + .../device-tree/Bindings/pci/brcm,iproc-pcie.yaml | 163 +- .../device-tree/Bindings/pci/qcom,pcie-ep.yaml | 27 +- .../device-tree/Bindings/pci/qcom,pcie.yaml | 28 + .../device-tree/Bindings/pci/rockchip-dw-pcie.yaml | 70 + .../device-tree/Bindings/pci/snps,dw-pcie.yaml | 18 +- .../Bindings/peci/nuvoton,npcm-peci.yaml | 56 + .../Bindings/phy/mediatek,mt7621-pci-phy.yaml | 2 +- .../device-tree/Bindings/phy/mediatek,tphy.yaml | 2 +- .../Bindings/phy/nvidia,tegra210-xusb-padctl.yaml | 2 +- .../Bindings/phy/phy-hisi-inno-usb2.txt | 2 +- .../device-tree/Bindings/phy/pistachio-usb-phy.txt | 2 +- .../device-tree/Bindings/phy/pxa1928-usb-phy.txt | 2 +- .../Bindings/phy/qcom,ipq5332-usb-hsphy.yaml | 59 + .../Bindings/phy/qcom,ipq8074-qmp-pcie-phy.yaml | 278 +-- .../Bindings/phy/qcom,msm8996-qmp-usb3-phy.yaml | 80 - .../Bindings/phy/qcom,msm8998-qmp-pcie-phy.yaml | 97 + .../Bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 55 +- .../Bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml | 48 +- .../phy/qcom,sc8280xp-qmp-usb43dp-phy.yaml | 46 +- .../Bindings/phy/qcom,snps-eusb2-repeater.yaml | 7 +- .../device-tree/Bindings/phy/realtek,usb2phy.yaml | 175 ++ .../device-tree/Bindings/phy/realtek,usb3phy.yaml | 107 + .../Bindings/phy/rockchip,inno-usb2phy.yaml | 21 +- .../Bindings/phy/rockchip,pcie3-phy.yaml | 33 +- .../Bindings/phy/rockchip,px30-dsi-dphy.yaml | 1 + .../Bindings/phy/rockchip-inno-csi-dphy.yaml | 2 +- .../Bindings/phy/samsung,usb3-drd-phy.yaml | 1 + .../Bindings/phy/starfive,jh7110-dphy-rx.yaml | 71 + .../Bindings/phy/starfive,jh7110-pcie-phy.yaml | 58 + .../Bindings/phy/starfive,jh7110-usb-phy.yaml | 50 + .../device-tree/Bindings/phy/ti,phy-j721e-wiz.yaml | 2 +- sys/contrib/device-tree/Bindings/phy/ti-phy.txt | 2 +- .../pinctrl/allwinner,sun4i-a10-pinctrl.yaml | 2 +- .../Bindings/pinctrl/amlogic,meson-pinctrl-a1.yaml | 5 + .../pinctrl/amlogic,meson-pinctrl-common.yaml | 7 + .../pinctrl/amlogic,meson-pinctrl-g12a-aobus.yaml | 3 + .../amlogic,meson-pinctrl-g12a-periphs.yaml | 3 + .../pinctrl/amlogic,meson8-pinctrl-aobus.yaml | 4 + .../pinctrl/amlogic,meson8-pinctrl-cbus.yaml | 4 + .../Bindings/pinctrl/aspeed,ast2400-pinctrl.yaml | 52 +- .../Bindings/pinctrl/aspeed,ast2500-pinctrl.yaml | 56 +- .../Bindings/pinctrl/aspeed,ast2600-pinctrl.yaml | 120 +- .../Bindings/pinctrl/brcm,bcm11351-pinctrl.yaml | 259 +++ .../Bindings/pinctrl/canaan,k210-fpioa.yaml | 2 +- .../Bindings/pinctrl/cypress,cy8c95x0.yaml | 4 + .../Bindings/pinctrl/ingenic,pinctrl.yaml | 4 - .../Bindings/pinctrl/mediatek,mt6779-pinctrl.yaml | 2 +- .../Bindings/pinctrl/mediatek,mt6795-pinctrl.yaml | 2 +- .../Bindings/pinctrl/mediatek,mt7981-pinctrl.yaml | 4 +- .../Bindings/pinctrl/mediatek,mt7986-pinctrl.yaml | 4 +- .../Bindings/pinctrl/mediatek,mt8183-pinctrl.yaml | 2 +- .../Bindings/pinctrl/mediatek,mt8365-pinctrl.yaml | 2 +- .../Bindings/pinctrl/nvidia,tegra114-pinmux.yaml | 2 - .../Bindings/pinctrl/nvidia,tegra124-pinmux.yaml | 2 - .../Bindings/pinctrl/nvidia,tegra194-pinmux.yaml | 2 - .../Bindings/pinctrl/nvidia,tegra20-pinmux.yaml | 2 - .../Bindings/pinctrl/nvidia,tegra210-pinmux.yaml | 2 - .../Bindings/pinctrl/nvidia,tegra30-pinmux.yaml | 2 - .../Bindings/pinctrl/pinctrl-max77620.txt | 2 +- .../device-tree/Bindings/pinctrl/pinctrl-rk805.txt | 2 +- .../Bindings/pinctrl/pinctrl-single.yaml | 207 ++ .../Bindings/pinctrl/qcom,pmic-gpio.yaml | 8 + .../pinctrl/qcom,sc7280-lpass-lpi-pinctrl.yaml | 5 - .../pinctrl/qcom,sm6115-lpass-lpi-pinctrl.yaml | 135 ++ .../pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml | 143 ++ .../device-tree/Bindings/pinctrl/renesas,pfc.yaml | 4 - .../Bindings/pinctrl/renesas,rza1-ports.yaml | 4 - .../Bindings/pinctrl/renesas,rza2-pinctrl.yaml | 61 +- .../Bindings/pinctrl/renesas,rzg2l-pinctrl.yaml | 4 - .../Bindings/pinctrl/renesas,rzn1-pinctrl.yaml | 4 - .../Bindings/pinctrl/renesas,rzv2m-pinctrl.yaml | 4 - .../pinctrl/socionext,uniphier-pinctrl.yaml | 2 - .../device-tree/Bindings/pinctrl/sprd,pinctrl.txt | 2 +- .../Bindings/pinctrl/xlnx,zynqmp-pinctrl.yaml | 4 + .../device-tree/Bindings/pmem/pmem-region.txt | 4 +- .../Bindings/power/amlogic,meson-sec-pwrc.yaml | 3 +- .../device-tree/Bindings/power/qcom,rpmpd.yaml | 1 + .../Bindings/power/renesas,sysc-rmobile.yaml | 2 +- .../Bindings/power/reset/gpio-poweroff.yaml | 2 +- .../Bindings/power/reset/gpio-restart.yaml | 2 +- .../Bindings/power/reset/restart-handler.yaml | 2 +- .../device-tree/Bindings/power/supply/bq256xx.yaml | 2 +- .../Bindings/power/supply/sbs,sbs-manager.yaml | 2 +- .../device-tree/Bindings/powerpc/fsl/cpus.txt | 2 +- .../device-tree/Bindings/powerpc/fsl/dcsr.txt | 4 +- .../device-tree/Bindings/powerpc/fsl/raideng.txt | 2 +- .../Bindings/powerpc/nintendo/gamecube.txt | 2 +- .../device-tree/Bindings/powerpc/nintendo/wii.txt | 2 +- sys/contrib/device-tree/Bindings/pps/pps-gpio.yaml | 49 + .../device-tree/Bindings/pwm/brcm,kona-pwm.yaml | 51 + .../device-tree/Bindings/pwm/pwm-samsung.yaml | 17 +- .../Bindings/pwm/snps,dw-apb-timers-pwm2.yaml | 2 +- .../Bindings/regulator/active-semi,act8846.yaml | 74 +- .../Bindings/regulator/adi,max77857.yaml | 86 + .../Bindings/regulator/awinic,aw37503.yaml | 78 + .../device-tree/Bindings/regulator/dlg,da9121.yaml | 22 +- .../Bindings/regulator/dlg,slg51000.yaml | 132 ++ .../device-tree/Bindings/regulator/mps,mp5416.yaml | 2 + .../Bindings/regulator/mps,mpq7920.yaml | 3 +- .../device-tree/Bindings/regulator/pfuze100.yaml | 4 + .../Bindings/regulator/qcom,rpm-regulator.yaml | 2 +- .../Bindings/regulator/qcom,rpmh-regulator.yaml | 26 +- .../regulator/qcom,sdm845-refgen-regulator.yaml | 57 + .../Bindings/regulator/qcom,smd-rpm-regulator.yaml | 1 + .../Bindings/regulator/regulator-max77620.txt | 2 +- .../device-tree/Bindings/regulator/regulator.yaml | 8 +- .../regulator/richtek,rt4831-regulator.yaml | 1 + .../regulator/richtek,rt5190a-regulator.yaml | 2 +- .../Bindings/regulator/richtek,rt5739.yaml | 1 + .../regulator/richtek,rtmv20-regulator.yaml | 1 + .../Bindings/regulator/richtek,rtq2208.yaml | 197 ++ .../regulator/richtek,rtq6752-regulator.yaml | 1 + .../Bindings/regulator/st,stm32mp1-pwr-reg.yaml | 2 +- .../device-tree/Bindings/regulator/vctrl.txt | 2 +- .../Bindings/regulator/wlf,arizona.yaml | 2 + .../Bindings/remoteproc/fsl,imx-rproc.yaml | 20 + .../device-tree/Bindings/remoteproc/qcom,adsp.yaml | 24 + .../Bindings/remoteproc/qcom,glink-edge.yaml | 3 - .../Bindings/remoteproc/qcom,glink-rpm-edge.yaml | 2 +- .../Bindings/remoteproc/qcom,msm8996-mss-pil.yaml | 12 +- .../Bindings/remoteproc/qcom,pas-common.yaml | 1 - .../Bindings/remoteproc/qcom,qcs404-pas.yaml | 3 +- .../Bindings/remoteproc/qcom,rpm-proc.yaml | 171 ++ .../Bindings/remoteproc/qcom,sc7180-pas.yaml | 3 +- .../Bindings/remoteproc/qcom,sc8180x-pas.yaml | 3 +- .../Bindings/remoteproc/qcom,sc8280xp-pas.yaml | 3 +- .../Bindings/remoteproc/qcom,sdx55-pas.yaml | 3 +- .../Bindings/remoteproc/qcom,sm6115-pas.yaml | 39 +- .../Bindings/remoteproc/qcom,sm6350-pas.yaml | 3 +- .../Bindings/remoteproc/qcom,sm8150-pas.yaml | 3 +- .../Bindings/remoteproc/qcom,sm8350-pas.yaml | 9 +- .../Bindings/remoteproc/qcom,sm8550-pas.yaml | 1 + .../Bindings/remoteproc/ti,k3-dsp-rproc.yaml | 2 +- .../Bindings/remoteproc/ti,k3-r5f-rproc.yaml | 4 +- .../Bindings/remoteproc/ti,omap-remoteproc.yaml | 2 +- .../Bindings/remoteproc/ti,pru-consumer.yaml | 2 +- .../Bindings/remoteproc/ti,pru-rproc.yaml | 2 +- .../Bindings/remoteproc/xlnx,zynqmp-r5fss.yaml | 2 +- .../nvidia,tegra264-bpmp-shmem.yaml | 47 + .../device-tree/Bindings/reset/altr,rst-mgr.yaml | 12 +- .../device-tree/Bindings/reset/ti,sci-reset.yaml | 2 +- .../Bindings/reset/ti,tps380x-reset.yaml | 2 +- .../device-tree/Bindings/reset/ti-syscon-reset.txt | 2 +- .../Bindings/reset/xlnx,zynqmp-reset.yaml | 1 + sys/contrib/device-tree/Bindings/riscv/cpus.yaml | 1 + sys/contrib/device-tree/Bindings/riscv/thead.yaml | 4 + sys/contrib/device-tree/Bindings/rng/omap_rng.yaml | 4 +- .../Bindings/rtc/atmel,at91rm9200-rtc.yaml | 18 +- .../Bindings/rtc/intersil,isl12022.yaml | 64 + .../device-tree/Bindings/rtc/nxp,pcf2127.yaml | 1 + sys/contrib/device-tree/Bindings/rtc/rtc-cmos.txt | 2 +- .../device-tree/Bindings/rtc/st,m48t86.yaml | 38 + .../device-tree/Bindings/rtc/trivial-rtc.yaml | 2 - .../Bindings/serial/amlogic,meson-uart.yaml | 6 + .../device-tree/Bindings/serial/fsl-lpuart.yaml | 6 +- .../Bindings/serial/nvidia,tegra20-hsuart.yaml | 125 ++ .../device-tree/Bindings/serial/nxp,sc16is7xx.txt | 46 + .../Bindings/serial/snps-dw-apb-uart.yaml | 1 - sys/contrib/device-tree/Bindings/serial/st-asc.txt | 2 +- .../soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml | 160 ++ .../Bindings/soc/aspeed/uart-routing.yaml | 4 +- .../Bindings/soc/intel/intel,hps-copy-engine.yaml | 4 +- .../Bindings/soc/litex/litex,soc-controller.yaml | 4 +- .../Bindings/soc/loongson/loongson,ls2k-pmc.yaml | 83 + .../soc/mediatek/mediatek,mt7986-wo-ccif.yaml | 2 +- .../microchip/microchip,mpfs-sys-controller.yaml | 2 +- .../Bindings/soc/qcom/qcom,aoss-qmp.yaml | 2 +- .../Bindings/soc/qcom/qcom,pmic-glink.yaml | 6 - .../Bindings/soc/qcom/qcom,smd-rpm.yaml | 23 +- .../device-tree/Bindings/soc/qcom/qcom,smd.yaml | 7 + .../Bindings/soc/renesas/renesas,rzg2l-sysc.yaml | 4 +- .../soc/starfive/starfive,jh7110-syscon.yaml | 93 + .../Bindings/soc/tegra/nvidia,nvec.yaml | 84 + .../Bindings/soc/tegra/nvidia,tegra20-ahb.yaml | 40 + .../soc/tegra/nvidia,tegra20-flowctrl.yaml | 41 + .../device-tree/Bindings/soc/ti/k3-ringacc.yaml | 13 +- .../device-tree/Bindings/soc/ti/sci-pm-domain.yaml | 2 +- .../Bindings/sound/amlogic,axg-sound-card.yaml | 15 +- .../Bindings/sound/amlogic,gx-sound-card.yaml | 17 +- .../device-tree/Bindings/sound/audio-iio-aux.yaml | 64 + .../device-tree/Bindings/sound/awinic,aw88395.yaml | 4 +- .../Bindings/sound/axentia,tse850-pcm5142.txt | 2 +- .../device-tree/Bindings/sound/cirrus,cs42l43.yaml | 313 +++ sys/contrib/device-tree/Bindings/sound/cs35l35.txt | 2 +- sys/contrib/device-tree/Bindings/sound/cs35l36.txt | 2 +- sys/contrib/device-tree/Bindings/sound/cs53l30.txt | 2 +- .../device-tree/Bindings/sound/dialog,da7219.yaml | 4 +- .../device-tree/Bindings/sound/fsl,easrc.yaml | 8 +- .../device-tree/Bindings/sound/fsl,esai.txt | 2 +- .../device-tree/Bindings/sound/fsl,micfil.yaml | 3 + .../device-tree/Bindings/sound/fsl,rpmsg.yaml | 18 +- .../Bindings/sound/google,sc7180-trogdor.yaml | 17 +- .../Bindings/sound/google,sc7280-herobrine.yaml | 17 +- .../device-tree/Bindings/sound/imx-audio-card.yaml | 18 +- .../device-tree/Bindings/sound/maxim,max98925.yaml | 98 + .../Bindings/sound/mediatek,mt7986-afe.yaml | 160 ++ .../Bindings/sound/mediatek,mt7986-wm8960.yaml | 67 + .../Bindings/sound/mediatek,mt8188-afe.yaml | 9 +- .../Bindings/sound/mediatek,mt8188-mt6359.yaml | 17 +- .../device-tree/Bindings/sound/mt2701-afe-pcm.txt | 2 +- .../device-tree/Bindings/sound/mt8195-afe-pcm.yaml | 4 +- .../Bindings/sound/nuvoton,nau8821.yaml | 132 ++ .../Bindings/sound/nuvoton,nau8822.yaml | 12 + .../sound/nvidia,tegra-audio-max9808x.yaml | 12 +- .../Bindings/sound/nvidia,tegra-audio-rt5631.yaml | 8 +- .../device-tree/Bindings/sound/option,gtm601.yaml | 42 + .../sound/qcom,pm8916-wcd-analog-codec.yaml | 153 ++ .../device-tree/Bindings/sound/renesas,rsnd.txt | 2 +- .../device-tree/Bindings/sound/renesas,rsnd.yaml | 60 +- .../Bindings/sound/rockchip,rk3288-hdmi-analog.txt | 2 +- .../device-tree/Bindings/sound/rockchip-spdif.yaml | 1 + sys/contrib/device-tree/Bindings/sound/rt5663.txt | 2 +- .../Bindings/sound/samsung,aries-wm8994.yaml | 16 +- .../Bindings/sound/samsung,midas-audio.yaml | 16 +- .../device-tree/Bindings/sound/samsung,odroid.yaml | 14 +- .../device-tree/Bindings/sound/samsung,tm2.yaml | 16 +- .../device-tree/Bindings/sound/serial-midi.yaml | 2 +- .../device-tree/Bindings/sound/simple-card.yaml | 53 + .../Bindings/sound/snps,designware-i2s.yaml | 108 +- .../Bindings/sound/sound-card-common.yaml | 27 + .../device-tree/Bindings/sound/sprd-pcm.txt | 2 +- .../device-tree/Bindings/sound/st,stm32-sai.yaml | 2 +- .../Bindings/sound/ti,j721e-cpb-ivi-audio.yaml | 2 +- .../device-tree/Bindings/sound/ti,tas2781.yaml | 2 +- .../device-tree/Bindings/sound/tlv320adcx140.yaml | 2 +- .../device-tree/Bindings/sound/wlf,wm8904.yaml | 74 + .../device-tree/Bindings/sound/wlf,wm8960.yaml | 20 + .../Bindings/soundwire/qcom,soundwire.yaml | 4 +- .../Bindings/spi/brcm,bcm2835-aux-spi.txt | 4 +- .../device-tree/Bindings/spi/brcm,bcm63xx-spi.yaml | 71 + .../Bindings/spi/brcm,spi-bcm-qspi.yaml | 4 +- .../device-tree/Bindings/spi/cdns,qspi-nor.yaml | 12 +- .../device-tree/Bindings/spi/fsl-imx-cspi.yaml | 7 + .../Bindings/spi/loongson,ls2k-spi.yaml | 46 + .../Bindings/spi/nvidia,tegra114-spi.yaml | 100 + .../Bindings/spi/nvidia,tegra20-sflash.yaml | 81 + .../Bindings/spi/nvidia,tegra20-slink.yaml | 90 + sys/contrib/device-tree/Bindings/spi/omap-spi.yaml | 2 +- .../device-tree/Bindings/spi/spi-cadence.yaml | 6 + .../device-tree/Bindings/spi/spi-fsl-lpspi.yaml | 3 + .../device-tree/Bindings/spi/spi-nxp-fspi.yaml | 3 + .../device-tree/Bindings/spi/spi-pl022.yaml | 1 + .../device-tree/Bindings/sram/qcom,ocmem.yaml | 26 +- .../Bindings/thermal/loongson,ls2k-thermal.yaml | 44 + .../Bindings/thermal/nvidia,tegra124-soctherm.yaml | 380 ++++ .../device-tree/Bindings/thermal/qcom-lmh.yaml | 2 +- .../device-tree/Bindings/timer/ingenic,tcu.yaml | 2 +- .../device-tree/Bindings/timer/snps,arc-timer.txt | 2 +- .../device-tree/Bindings/trivial-devices.yaml | 18 +- sys/contrib/device-tree/Bindings/ufs/qcom,ufs.yaml | 44 + .../device-tree/Bindings/ufs/ufs-common.yaml | 2 +- .../device-tree/Bindings/usb/ci-hdrc-usb2.yaml | 19 +- .../device-tree/Bindings/usb/cypress,cypd4226.yaml | 6 +- .../device-tree/Bindings/usb/cypress,hx3.yaml | 77 + .../device-tree/Bindings/usb/fsl,imx8mp-dwc3.yaml | 2 +- .../device-tree/Bindings/usb/generic-ehci.yaml | 2 + .../device-tree/Bindings/usb/generic-ohci.yaml | 1 + .../device-tree/Bindings/usb/genesys,gl850g.yaml | 3 +- sys/contrib/device-tree/Bindings/usb/msm-hsusb.txt | 2 +- .../device-tree/Bindings/usb/qcom,dwc3.yaml | 36 +- .../device-tree/Bindings/usb/realtek,rts5411.yaml | 2 +- .../device-tree/Bindings/usb/richtek,rt1719.yaml | 2 +- .../Bindings/usb/samsung,exynos-dwc3.yaml | 20 +- .../device-tree/Bindings/usb/ti,usb8041.yaml | 2 +- .../device-tree/Bindings/usb/vialab,vl817.yaml | 2 +- .../device-tree/Bindings/vendor-prefixes.yaml | 8 + .../Bindings/watchdog/amlogic,meson-gxbb-wdt.yaml | 1 + .../Bindings/watchdog/marvell,cn10624-wdt.yaml | 83 + .../device-tree/Bindings/watchdog/qcom-wdt.yaml | 1 + .../device-tree/Bindings/watchdog/ti,rti-wdt.yaml | 28 +- .../Bindings/watchdog/toshiba,visconti-wdt.yaml | 4 +- .../device-tree/include/dt-bindings/arm/qcom,ids.h | 3 +- .../device-tree/include/dt-bindings/ata/ahci.h | 2 +- .../clock/amlogic,a1-peripherals-clkc.h | 53 + .../dt-bindings/clock/amlogic,a1-pll-clkc.h | 5 + .../include/dt-bindings/clock/ast2600-clock.h | 12 + .../include/dt-bindings/clock/axg-audio-clkc.h | 65 + .../include/dt-bindings/clock/axg-clkc.h | 48 + .../include/dt-bindings/clock/exynos3250.h | 18 - .../include/dt-bindings/clock/exynos4.h | 5 - .../include/dt-bindings/clock/exynos5250.h | 3 - .../include/dt-bindings/clock/exynos5260-clk.h | 25 - .../include/dt-bindings/clock/exynos5410.h | 2 - .../include/dt-bindings/clock/exynos5420.h | 3 - .../include/dt-bindings/clock/exynos5433.h | 42 - .../include/dt-bindings/clock/exynos7885.h | 4 - .../include/dt-bindings/clock/exynos850.h | 10 - .../include/dt-bindings/clock/g12a-aoclkc.h | 7 + .../include/dt-bindings/clock/g12a-clkc.h | 130 ++ .../include/dt-bindings/clock/gxbb-clkc.h | 65 + .../include/dt-bindings/clock/hi3559av100-clock.h | 2 +- .../include/dt-bindings/clock/imx8-clock.h | 28 + .../include/dt-bindings/clock/imx8mp-clock.h | 2 +- .../include/dt-bindings/clock/imx93-clock.h | 3 +- .../dt-bindings/clock/intel,agilex5-clkmgr.h | 100 + .../include/dt-bindings/clock/marvell,mmp2-audio.h | 1 - .../include/dt-bindings/clock/marvell,mmp2.h | 1 - .../include/dt-bindings/clock/marvell,pxa168.h | 1 - .../include/dt-bindings/clock/marvell,pxa1928.h | 3 - .../include/dt-bindings/clock/marvell,pxa910.h | 1 - .../include/dt-bindings/clock/meson8b-clkc.h | 97 + .../include/dt-bindings/clock/qcom,gcc-ipq4019.h | 6 + .../include/dt-bindings/clock/qcom,gcc-ipq5018.h | 183 ++ .../include/dt-bindings/clock/qcom,gcc-msm8917.h | 1 + .../include/dt-bindings/clock/qcom,gcc-msm8998.h | 3 + .../include/dt-bindings/clock/qcom,gcc-sc8280xp.h | 10 + .../include/dt-bindings/clock/qcom,ipq9574-gcc.h | 2 + .../include/dt-bindings/clock/qcom,qdu1000-gcc.h | 4 +- .../include/dt-bindings/clock/r8a779f0-cpg-mssr.h | 2 +- .../dt-bindings/clock/rockchip,rk3588-cru.h | 2 +- .../dt-bindings/clock/samsung,exynosautov9.h | 18 - .../dt-bindings/clock/starfive,jh7110-crg.h | 80 + .../include/dt-bindings/clock/stm32mp1-clks.h | 2 +- .../include/dt-bindings/clock/sun20i-d1-ccu.h | 2 +- .../include/dt-bindings/clock/sun20i-d1-r-ccu.h | 2 +- .../include/dt-bindings/clock/sun50i-a100-ccu.h | 2 +- .../include/dt-bindings/clock/sun50i-h6-ccu.h | 2 +- .../include/dt-bindings/clock/sun50i-h616-ccu.h | 2 +- .../include/dt-bindings/clock/sun6i-rtc.h | 2 +- .../include/dt-bindings/display/sdtv-standards.h | 2 +- .../include/dt-bindings/firmware/qcom,scm.h | 21 + .../include/dt-bindings/gpio/amlogic-c3-gpio.h | 72 + .../include/dt-bindings/gpio/meson-g12a-gpio.h | 2 +- .../dt-bindings/iio/qcom,spmi-adc7-pm8350.h | 88 +- .../dt-bindings/iio/qcom,spmi-adc7-pm8350b.h | 124 +- .../dt-bindings/iio/qcom,spmi-adc7-pmk8350.h | 50 +- .../dt-bindings/iio/qcom,spmi-adc7-pmr735a.h | 22 +- .../dt-bindings/iio/qcom,spmi-adc7-pmr735b.h | 22 +- .../dt-bindings/interconnect/qcom,rpm-icc.h | 13 + .../include/dt-bindings/interconnect/qcom,sm8250.h | 7 + .../amlogic,meson-g12a-gpio-intc.h | 126 ++ .../memory/mediatek,mt8188-memory-port.h | 489 +++++ .../include/dt-bindings/mux/ti-serdes.h | 8 + .../include/dt-bindings/power/amlogic,c3-pwrc.h | 25 + .../include/dt-bindings/power/meson-a1-power.h | 2 +- .../include/dt-bindings/power/meson-axg-power.h | 2 +- .../include/dt-bindings/power/meson-g12a-power.h | 2 +- .../include/dt-bindings/power/meson-gxbb-power.h | 2 +- .../include/dt-bindings/power/meson-s4-power.h | 2 +- .../include/dt-bindings/power/meson-sm1-power.h | 2 +- .../include/dt-bindings/power/meson8-power.h | 2 +- .../include/dt-bindings/power/qcom,rpmhpd.h | 30 + .../include/dt-bindings/power/r8a779f0-sysc.h | 2 +- .../include/dt-bindings/power/rk3588-power.h | 2 +- .../dt-bindings/power/summit,smb347-charger.h | 2 +- .../dt-bindings/regulator/st,stm32mp13-regulator.h | 42 + .../include/dt-bindings/reset/altr,rst-mgr-s10.h | 5 +- .../include/dt-bindings/reset/qcom,gcc-ipq5018.h | 122 ++ .../dt-bindings/reset/rockchip,rk3588-cru.h | 2 +- .../dt-bindings/reset/starfive,jh7110-crg.h | 60 + .../include/dt-bindings/reset/stm32mp1-resets.h | 2 +- .../include/dt-bindings/reset/sun20i-d1-ccu.h | 2 +- .../include/dt-bindings/reset/sun20i-d1-r-ccu.h | 2 +- .../include/dt-bindings/reset/sun50i-a100-ccu.h | 2 +- .../include/dt-bindings/reset/sun50i-a100-r-ccu.h | 2 +- .../include/dt-bindings/reset/sun50i-h6-ccu.h | 2 +- .../include/dt-bindings/reset/sun50i-h6-r-ccu.h | 2 +- .../include/dt-bindings/reset/sun50i-h616-ccu.h | 2 +- .../allwinner/sun8i-t113s-mangopi-mq-r-t113.dts | 2 +- .../device-tree/src/arm/allwinner/sun8i-t113s.dtsi | 2 +- .../arm/allwinner/sunxi-d1s-t113-mangopi-mq-r.dtsi | 2 +- .../arm/aspeed/aspeed-bmc-ampere-mtmitchell.dts | 129 +- .../src/arm/aspeed/aspeed-bmc-bytedance-g220a.dts | 18 +- .../arm/aspeed/aspeed-bmc-facebook-cloudripper.dts | 10 +- .../src/arm/aspeed/aspeed-bmc-facebook-cmm.dts | 46 +- .../src/arm/aspeed/aspeed-bmc-facebook-elbert.dts | 4 +- .../src/arm/aspeed/aspeed-bmc-facebook-fuji.dts | 30 +- .../arm/aspeed/aspeed-bmc-facebook-minipack.dts | 32 +- .../arm/aspeed/aspeed-bmc-facebook-tiogapass.dts | 8 +- .../arm/aspeed/aspeed-bmc-facebook-wedge100.dts | 2 +- .../arm/aspeed/aspeed-bmc-facebook-wedge400.dts | 10 +- .../src/arm/aspeed/aspeed-bmc-facebook-yamp.dts | 2 +- .../arm/aspeed/aspeed-bmc-facebook-yosemite4.dts | 624 ++++++ .../src/arm/aspeed/aspeed-bmc-ibm-bonnell.dts | 364 +--- .../src/arm/aspeed/aspeed-bmc-ibm-everest.dts | 1855 ++++++++++------- .../src/arm/aspeed/aspeed-bmc-ibm-rainier.dts | 691 +------ .../src/arm/aspeed/aspeed-bmc-inspur-fp5280g2.dts | 4 +- .../src/arm/aspeed/aspeed-bmc-inspur-nf5280m6.dts | 12 +- .../arm/aspeed/aspeed-bmc-inventec-starscream.dts | 389 ++++ .../aspeed/aspeed-bmc-inventec-transformers.dts | 6 +- .../src/arm/aspeed/aspeed-bmc-lenovo-hr630.dts | 4 +- .../src/arm/aspeed/aspeed-bmc-lenovo-hr855xg2.dts | 4 +- .../src/arm/aspeed/aspeed-bmc-opp-zaius.dts | 4 +- .../src/arm/aspeed/aspeed-bmc-quanta-q71l.dts | 6 +- .../src/arm/aspeed/aspeed-bmc-quanta-s6q.dts | 10 +- .../src/arm/aspeed/aspeed-bmc-vegman-n110.dts | 14 +- .../src/arm/aspeed/aspeed-bmc-vegman-rx20.dts | 10 +- .../src/arm/aspeed/aspeed-bmc-vegman-sx20.dts | 14 +- .../src/arm/aspeed/aspeed-g6-pinctrl.dtsi | 10 + .../device-tree/src/arm/aspeed/aspeed-g6.dtsi | 20 + .../arm/aspeed/ast2500-facebook-netbmc-common.dtsi | 4 + .../src/arm/aspeed/ibm-power10-dual.dtsi | 380 ++++ .../src/arm/aspeed/ibm-power10-quad.dtsi | 1305 ++++++++++++ .../device-tree/src/arm/broadcom/bcm-hr2.dtsi | 4 +- .../device-tree/src/arm/broadcom/bcm-ns.dtsi | 18 + .../device-tree/src/arm/broadcom/bcm-nsp.dtsi | 4 +- .../device-tree/src/arm/broadcom/bcm11351.dtsi | 13 +- .../device-tree/src/arm/broadcom/bcm21664.dtsi | 9 +- .../device-tree/src/arm/broadcom/bcm23550.dtsi | 9 +- .../device-tree/src/arm/broadcom/bcm2711.dtsi | 4 +- .../device-tree/src/arm/broadcom/bcm28155-ap.dts | 94 +- .../src/arm/broadcom/bcm2835-common.dtsi | 2 +- .../src/arm/broadcom/bcm2835-rpi-a-plus.dts | 1 + .../device-tree/src/arm/broadcom/bcm2835-rpi-a.dts | 1 + .../src/arm/broadcom/bcm2835-rpi-b-plus.dts | 1 + .../src/arm/broadcom/bcm2835-rpi-b-rev2.dts | 1 + .../device-tree/src/arm/broadcom/bcm2835-rpi-b.dts | 1 + .../src/arm/broadcom/bcm2835-rpi-cm1-io1.dts | 1 + .../src/arm/broadcom/bcm2835-rpi-zero-w.dts | 2 + .../src/arm/broadcom/bcm2835-rpi-zero.dts | 1 + .../device-tree/src/arm/broadcom/bcm2835-rpi.dtsi | 2 - .../src/arm/broadcom/bcm2836-rpi-2-b.dts | 1 + .../src/arm/broadcom/bcm2837-rpi-cm3-io3.dts | 1 + .../src/arm/broadcom/bcm2837-rpi-zero-2-w.dts | 2 + .../device-tree/src/arm/broadcom/bcm283x.dtsi | 2 +- .../src/arm/broadcom/bcm4708-linksys-ea6500-v2.dts | 3 +- .../src/arm/broadcom/bcm47094-asus-rt-ac3100.dts | 23 + .../src/arm/broadcom/bcm47094-asus-rt-ac3100.dtsi | 163 ++ .../src/arm/broadcom/bcm47094-asus-rt-ac88u.dts | 155 +- .../src/arm/broadcom/bcm47094-dlink-dir-885l.dts | 1 + .../src/arm/broadcom/bcm47094-dlink-dir-890l.dts | 1 + .../src/arm/broadcom/bcm47094-linksys-panamera.dts | 2 +- .../src/arm/broadcom/bcm47094-luxul-xap-1610.dts | 37 + .../arm/broadcom/bcm47094-luxul-xwr-3150-v1.dts | 36 + .../src/arm/broadcom/bcm47094-phicomm-k3.dts | 2 +- .../src/arm/broadcom/bcm47189-luxul-xap-1440.dts | 20 +- .../src/arm/broadcom/bcm47189-luxul-xap-810.dts | 21 +- .../src/arm/broadcom/bcm47189-tenda-ac9.dts | 9 +- .../device-tree/src/arm/broadcom/bcm53573.dtsi | 53 +- .../src/arm/broadcom/bcm947189acdbmr.dts | 6 +- .../device-tree/src/arm/hisilicon/hi3519.dtsi | 22 +- .../src/arm/intel/socfpga/socfpga_arria10.dtsi | 6 +- .../src/arm/marvell/armada-370-dlink-dns327l.dts | 83 +- .../arm/marvell/armada-370-seagate-nas-4bay.dts | 43 +- .../arm/marvell/armada-370-seagate-nas-xbay.dtsi | 48 +- .../armada-370-seagate-personal-cloud-2bay.dts | 21 +- .../marvell/armada-370-seagate-personal-cloud.dtsi | 45 +- .../src/arm/marvell/armada-370-synology-ds213j.dts | 54 +- .../arm/marvell/armada-382-rd-ac3x-48g4x2xl.dts | 6 +- .../src/arm/marvell/armada-xp-synology-ds414.dts | 105 +- .../device-tree/src/arm/marvell/dove-cm-a510.dtsi | 18 +- .../device-tree/src/arm/marvell/dove-cubox.dts | 29 +- .../device-tree/src/arm/marvell/dove-d3plug.dts | 29 +- .../device-tree/src/arm/marvell/dove-sbc-a510.dts | 30 +- .../device-tree/src/arm/marvell/kirkwood-l-50.dts | 4 +- .../device-tree/src/arm/marvell/pxa168.dtsi | 2 +- .../device-tree/src/arm/marvell/pxa910.dtsi | 2 +- .../src/arm/microchip/at91-sama5d3_ksz9477_evb.dts | 13 + .../device-tree/src/arm/microchip/at91-vinco.dts | 4 +- .../device-tree/src/arm/microchip/at91rm9200.dtsi | 12 +- .../device-tree/src/arm/microchip/at91sam9260.dtsi | 14 +- .../device-tree/src/arm/microchip/at91sam9261.dtsi | 2 +- .../src/arm/microchip/at91sam9g20ek_2mmc.dts | 2 +- .../device-tree/src/arm/microchip/at91sam9g45.dtsi | 2 +- .../src/arm/microchip/at91sam9m10g45ek.dts | 2 +- .../device-tree/src/arm/microchip/at91sam9rl.dtsi | 2 +- .../device-tree/src/arm/microchip/at91sam9x5.dtsi | 2 +- .../src/arm/microchip/lan966x-pcb8290.dts | 2 +- .../device-tree/src/arm/microchip/sama5d2.dtsi | 6 +- .../device-tree/src/arm/microchip/sama5d3.dtsi | 2 +- .../device-tree/src/arm/microchip/sama5d4.dtsi | 2 +- .../device-tree/src/arm/microchip/sama7g5.dtsi | 40 +- .../device-tree/src/arm/nspire/nspire-classic.dtsi | 2 - .../device-tree/src/arm/nspire/nspire-clp.dts | 93 +- .../device-tree/src/arm/nspire/nspire-cx.dts | 95 +- .../device-tree/src/arm/nspire/nspire-tp.dts | 93 +- sys/contrib/device-tree/src/arm/nspire/nspire.dtsi | 26 +- .../src/arm/nuvoton/nuvoton-common-npcm7xx.dtsi | 9 + .../src/arm/nuvoton/nuvoton-npcm730-gbs.dts | 16 +- .../src/arm/nuvoton/nuvoton-npcm730-gsj.dts | 2 +- .../src/arm/nuvoton/nuvoton-npcm730-kudo.dts | 8 +- .../arm/nuvoton/nuvoton-npcm750-runbmc-olympus.dts | 4 +- .../src/arm/nvidia/tegra114-asus-tf701t.dts | 2 + .../src/arm/nvidia/tegra114-dalmore.dts | 2 + .../device-tree/src/arm/nvidia/tegra114-roth.dts | 2 + .../device-tree/src/arm/nvidia/tegra114-tn7.dts | 2 + .../device-tree/src/arm/nvidia/tegra114.dtsi | 4 - .../src/arm/nvidia/tegra124-apalis-eval.dts | 2 + .../src/arm/nvidia/tegra124-apalis-v1.2-eval.dts | 2 + .../src/arm/nvidia/tegra124-apalis-v1.2.dtsi | 3 + .../src/arm/nvidia/tegra124-apalis.dtsi | 3 + .../src/arm/nvidia/tegra124-jetson-tk1.dts | 4 + .../device-tree/src/arm/nvidia/tegra124-nyan.dtsi | 2 + .../src/arm/nvidia/tegra124-venice2.dts | 2 + .../device-tree/src/arm/nvidia/tegra124.dtsi | 4 - .../src/arm/nvidia/tegra20-acer-a500-picasso.dts | 2 + .../src/arm/nvidia/tegra20-asus-tf101.dts | 4 + .../src/arm/nvidia/tegra20-colibri-eval-v3.dts | 2 + .../src/arm/nvidia/tegra20-colibri-iris.dts | 2 + .../src/arm/nvidia/tegra20-colibri.dtsi | 2 + .../device-tree/src/arm/nvidia/tegra20-harmony.dts | 2 + .../device-tree/src/arm/nvidia/tegra20-paz00.dts | 23 +- .../src/arm/nvidia/tegra20-seaboard.dts | 2 + .../src/arm/nvidia/tegra20-tamonten.dtsi | 2 + .../src/arm/nvidia/tegra20-trimslice.dts | 2 + .../device-tree/src/arm/nvidia/tegra20-ventana.dts | 2 + .../device-tree/src/arm/nvidia/tegra20.dtsi | 5 - .../src/arm/nvidia/tegra30-apalis-eval.dts | 2 + .../src/arm/nvidia/tegra30-apalis-v1.1-eval.dts | 2 + .../src/arm/nvidia/tegra30-apalis-v1.1.dtsi | 3 + .../device-tree/src/arm/nvidia/tegra30-apalis.dtsi | 3 + .../nvidia/tegra30-asus-nexus7-grouper-common.dtsi | 14 +- .../nvidia/tegra30-asus-transformer-common.dtsi | 2 + .../device-tree/src/arm/nvidia/tegra30-beaver.dts | 2 + .../device-tree/src/arm/nvidia/tegra30-cardhu.dtsi | 3 + .../src/arm/nvidia/tegra30-colibri-eval-v3.dts | 2 + .../src/arm/nvidia/tegra30-colibri.dtsi | 2 + .../device-tree/src/arm/nvidia/tegra30-ouya.dts | 3 + .../src/arm/nvidia/tegra30-pegatron-chagall.dts | 4 +- .../device-tree/src/arm/nvidia/tegra30.dtsi | 5 - .../device-tree/src/arm/nxp/imx/imx1-apf9328.dts | 6 +- .../imx25-eukrea-mbimxsd25-baseboard-cmo-qvga.dts | 25 +- .../src/arm/nxp/imx/imx25-karo-tx25.dts | 71 +- .../device-tree/src/arm/nxp/imx/imx25-pdk.dts | 62 +- .../device-tree/src/arm/nxp/imx/imx27-apf27dev.dts | 19 +- .../nxp/imx/imx27-eukrea-mbimxsd27-baseboard.dts | 25 +- .../src/arm/nxp/imx/imx27-phytec-phycard-s-rdk.dts | 19 +- .../src/arm/nxp/imx/imx27-phytec-phycore-rdk.dts | 21 +- .../src/arm/nxp/imx/imx27-phytec-phycore-som.dtsi | 30 +- sys/contrib/device-tree/src/arm/nxp/imx/imx27.dtsi | 2 +- sys/contrib/device-tree/src/arm/nxp/imx/imx31.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx50-evk.dts | 2 +- .../src/arm/nxp/imx/imx50-kobo-aura.dts | 2 +- sys/contrib/device-tree/src/arm/nxp/imx/imx50.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx51-babbage.dts | 25 +- .../nxp/imx/imx51-eukrea-mbimxsd51-baseboard.dts | 23 +- sys/contrib/device-tree/src/arm/nxp/imx/imx51.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx53-ard.dts | 19 +- .../device-tree/src/arm/nxp/imx/imx53-m53.dtsi | 34 +- .../device-tree/src/arm/nxp/imx/imx53-m53evk.dts | 34 +- .../device-tree/src/arm/nxp/imx/imx53-mba53.dts | 33 +- .../src/arm/nxp/imx/imx53-qsb-common.dtsi | 65 +- .../device-tree/src/arm/nxp/imx/imx53-smd.dts | 4 +- .../device-tree/src/arm/nxp/imx/imx53-tqma53.dtsi | 19 +- .../src/arm/nxp/imx/imx53-voipac-dmm-668.dtsi | 36 +- sys/contrib/device-tree/src/arm/nxp/imx/imx53.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b105pv2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b105v2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b125pv2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b125v2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b155v2.dts | 2 +- .../src/arm/nxp/imx/imx6dl-b1x5pv2.dtsi | 4 +- .../device-tree/src/arm/nxp/imx/imx6dl-b1x5v2.dtsi | 2 +- .../src/arm/nxp/imx/imx6dl-emcon-avari.dts | 2 +- *** 1592 LINES SKIPPED *** From nobody Mon May 6 08:45:24 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXw390BDrz5JgLn; Mon, 06 May 2024 08:45: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 4VXw386tB3z4xtr; Mon, 6 May 2024 08:45:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xwwzMDKuocVttMZTxAubt1v9GjM7ueE3iD9CtQEpbMw=; b=efwnK3NqEo5fU8wkphvNVPObxumXoCKtFlkQhi0kNY0k7yQAgN1mbpNb1HbliUzgwsV7gq nJjrST3ZpiiUU/kN2yfVjsC0B25HIpnVhT6RWdxu0SpLjW3BOdQSSGk1MEEQ0qqT1Qm7Q1 Rg51wDqz5A7KOAxpKgp4c4NaEae+Nn1hu8NOQUSEonpeEcjuXrfpWXB1PNdQYPMKGb8xUv MD//2YR9Ey+K1TDZaH+d8ctCIStFQGdBOSH+dNVadj6Dfrw8po8XPShte3gJ6TBvugqhw2 JcM2t2PM9Ob90M2Ojj1t+9tLDjmi6GmesDkQzHrYOThrEswYEZxfVJgFhDpG5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1714985125; a=rsa-sha256; cv=none; b=VTVEIjcIYIwP9YPx0d4lLGiCQJyl2mV7vOwUb9nSZGiwF0/LWrwkLMjSYUN78Qwbdbf1zw 5uLivD5OqvxpdspwrqAcGjnnKPu6SFai2aykdFqKAPBdstzn7MEVfrESpvcYPgMMacS4hJ sZvcOoG0uqmp6BZzQ7+rYdzWqsHAGdEbvzoX3Pr+J5docKlE0vNlzhah972tMnWBeMzvNO 0DPVlCKXeRMkWtdz+657hIrtP0t35stKOFsO//oT2xRqJ7CEc65ZZ4lDd8hz9TMLnCnotV RGJG3IxHOLsppgN1TDfyLXrOLLYc8xazcjJOKZctMEu7y3ZYGZPnvujkU/EGJA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xwwzMDKuocVttMZTxAubt1v9GjM7ueE3iD9CtQEpbMw=; b=HFIluGMdYy551ccMDs7LsNFdjBvqM+h2YFnI6OeTnG2FGL6nyjQ1X4buwNKs9xYRC3KL0k 42aqwz7WsEB1Iprta4Azhh2O6lgTvmtGB1lXar401zwYgWNwtmm7guqE8R+Ab5oCQ+7F7g 9nwEs/FwM663I2fQyQSeDA8fXm4yEcqlWkOzSPys+Qwg3s4aXuBQy+/o58GljbEv4WdvAW VzzSHBBzftY4oh+y2bcEQ31k7Dq/HYXEXMM0iy1vGc0RqiDJXv2OKID7NPZoXudnhBvy0W fUWdV/nGQ5VO+TPJiWQbReicmRHzlLstUrN6ihBgnSW6f2WJBcr9n6wsnKPlbg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VXw386TrJzrDR; Mon, 6 May 2024 08:45: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 4468jO7L059123; Mon, 6 May 2024 08:45:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4468jOKu059120; Mon, 6 May 2024 08:45:24 GMT (envelope-from git) Date: Mon, 6 May 2024 08:45:24 GMT Message-Id: <202405060845.4468jOKu059120@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 13f6b1d0bfe2 - main - dts: Bump the freebsd branding version to 6.6 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 13f6b1d0bfe2cc9efdf926ff7990d3a436a59162 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=13f6b1d0bfe2cc9efdf926ff7990d3a436a59162 commit 13f6b1d0bfe2cc9efdf926ff7990d3a436a59162 Author: Emmanuel Vadot AuthorDate: 2024-05-06 08:44:59 +0000 Commit: Emmanuel Vadot CommitDate: 2024-05-06 08:44:59 +0000 dts: Bump the freebsd branding version to 6.6 Sponsored by: Beckhoff Automation GmbH & Co. KG --- sys/dts/freebsd-compatible.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dts/freebsd-compatible.dts b/sys/dts/freebsd-compatible.dts index c81f963c7872..b784a75b9f73 100644 --- a/sys/dts/freebsd-compatible.dts +++ b/sys/dts/freebsd-compatible.dts @@ -1,3 +1,3 @@ / { - freebsd,dts-version = "6.4"; + freebsd,dts-version = "6.6"; }; From nobody Mon May 6 08:46:05 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXw3y0HFTz5JgZq; Mon, 06 May 2024 08:46: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 4VXw3x6x8Cz4yDt; Mon, 6 May 2024 08:46:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985165; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5+8SQ38G/20haI4f0ZhUDSvOEEFUjECMKS8LFqNssBg=; b=ZfnijmWCWBtwZKHOlAR/f6kKf/A7iHZMl2nCsU4QUQuDH2RE+A4we6tOQ+s8+lhMTcyvnm 2pEoEAu0i7KtawAkCGTlOoWTC5L+Vq14Ri/mnaCeaf5qpzbjy7bMQQaV1cqX7XPB8efkfi pAaq5pSEbGzatkr6NpPVEuggzPIekK2X4/ANxL5EKb0Tba4fNWmXDp2Wm7XTnSQgqeKNET p3dx9uMjtYB7gvprJARFk+e3i14HuDjXIYWenZ/3H6y6evKSuRGYh8PZ1oVk2omXsI21Lg MrDZe6vbuLXGNr51sHVdZSVUCGanTldd9u0eX05Y9DrlRG4oaPzvKN6DG6bkRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1714985165; a=rsa-sha256; cv=none; b=Ht8hGSkRpc23mCt+fA5wpiNuYiL73KIdSB/NNyiS+RcmJPJmjzBmN/MnU5ePlk4A0XVUj8 YWgvt5rgf4dXaLOS8DYRpXjwTHU+MVQmWWr5vGJXJ5cXFAFeEZJ9MFq6MAezSYyvo2sU1j ZD677gJtgNTsYZxm3WR1QnvoehVEhyBw+j1XaIp7o2pzt0jdWlFjT74oVskqnMXub4bHUV +Ff5ko6iyj+NwxXnp7cJPjL4qP8VzFIAANzDkipwsGArSYDg+MRj+qEJsEb3pDmr8l64BB Glqu/9CrpZRmVLUCPcOkWgERZ+LSog5IeEUhsJ5bIezOo2DNPqeQ8cLJAP5a6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985165; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5+8SQ38G/20haI4f0ZhUDSvOEEFUjECMKS8LFqNssBg=; b=bf4cajav9zu8e+p3xC69PFSph0rNs06FkLPBhM7nQD3toKQHqja9HX7RKVQEm50oz2JxRR 0AplFJaS9xKhUk97c4qZwAnRpJrEPL7mRzZQ7hhO5S0hn1CYyziJPj3CoxaSdtlfCnzAUP YZex/8jfFo3ysZT6eDUB+QfahwaJ6bABZehNqUByDqZOprvKvrwzhXcDaOwLcYSc+Cs8To EVlbZbs4JjEdEipAI6vlzYDqG9/m/j1NrhKDpPzILN5viYI7gqW+muQAh/kHelLbTXapi9 r5pXmj0yxF4TafD4G4pHy4qTjFP/0XAKl3qkQ/dV5lEuyCWbtCPLtLaj1r1hKg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VXw3x6XXMzrDS; Mon, 6 May 2024 08:46: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 4468k5vo059370; Mon, 6 May 2024 08:46:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4468k5SL059364; Mon, 6 May 2024 08:46:05 GMT (envelope-from git) Date: Mon, 6 May 2024 08:46:05 GMT Message-Id: <202405060846.4468k5SL059364@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 84943d6f38e9 - main - Import device-tree files from Linux 6.7 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 84943d6f38e936ac3b7a3947ca26eeb27a39f938 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=84943d6f38e936ac3b7a3947ca26eeb27a39f938 commit 84943d6f38e936ac3b7a3947ca26eeb27a39f938 Merge: 13f6b1d0bfe2 1fcc28bca105 Author: Emmanuel Vadot AuthorDate: 2024-05-06 08:45:28 +0000 Commit: Emmanuel Vadot CommitDate: 2024-05-06 08:45:28 +0000 Import device-tree files from Linux 6.7 Sponsored by: Beckhoff Automation GmbH & Co. KG sys/contrib/device-tree/Bindings/Makefile | 2 +- .../device-tree/Bindings/arm/amd,pensando.yaml | 26 + sys/contrib/device-tree/Bindings/arm/amlogic.yaml | 3 + .../Bindings/arm/arm,coresight-cti.yaml | 34 +- .../device-tree/Bindings/arm/arm,integrator.yaml | 39 - .../device-tree/Bindings/arm/arm,realview.yaml | 37 - .../device-tree/Bindings/arm/arm,versatile.yaml | 40 +- .../device-tree/Bindings/arm/aspeed/aspeed.yaml | 1 + .../device-tree/Bindings/arm/atmel-at91.yaml | 7 + sys/contrib/device-tree/Bindings/arm/cpus.yaml | 5 +- sys/contrib/device-tree/Bindings/arm/fsl.yaml | 43 +- .../device-tree/Bindings/arm/intel-ixp4xx.yaml | 16 + sys/contrib/device-tree/Bindings/arm/mediatek.yaml | 16 + .../Bindings/arm/mediatek/mediatek,mt7622-wed.yaml | 1 + sys/contrib/device-tree/Bindings/arm/psci.yaml | 1 + sys/contrib/device-tree/Bindings/arm/qcom.yaml | 45 + sys/contrib/device-tree/Bindings/arm/rockchip.yaml | 25 + sys/contrib/device-tree/Bindings/arm/sti.yaml | 23 +- .../device-tree/Bindings/arm/stm32/stm32.yaml | 1 + sys/contrib/device-tree/Bindings/arm/sunxi.yaml | 16 + .../Bindings/ata/nvidia,tegra-ahci.yaml | 2 +- .../device-tree/Bindings/cache/qcom,llcc.yaml | 10 + .../clock/amlogic,s4-peripherals-clkc.yaml | 96 + .../Bindings/clock/amlogic,s4-pll-clkc.yaml | 49 + .../device-tree/Bindings/clock/qcom,hfpll.txt | 3 + .../device-tree/Bindings/clock/qcom,rpmhcc.yaml | 1 + .../Bindings/clock/qcom,sm4450-gcc.yaml | 55 + .../Bindings/clock/qcom,sm8450-camcc.yaml | 8 +- .../Bindings/clock/renesas,rzg2l-cpg.yaml | 1 + .../Bindings/cpufreq/cpufreq-qcom-hw.yaml | 4 + .../Bindings/cpufreq/qcom-cpufreq-nvmem.yaml | 8 +- .../Bindings/crypto/fsl-imx-sahara.yaml | 43 +- .../Bindings/crypto/qcom,inline-crypto-engine.yaml | 1 + .../device-tree/Bindings/crypto/qcom,prng.yaml | 28 +- .../Bindings/devfreq/event/rockchip,dfi.yaml | 74 + .../Bindings/display/bridge/adi,adv7533.yaml | 6 + .../Bindings/display/bridge/analogix,anx7814.yaml | 1 + .../display/bridge/fsl,imx93-mipi-dsi.yaml | 115 ++ .../device-tree/Bindings/display/fsl,lcdif.yaml | 20 +- .../Bindings/display/ilitek,ili9486.yaml | 4 - .../Bindings/display/lvds-data-mapping.yaml | 84 + sys/contrib/device-tree/Bindings/display/lvds.yaml | 77 +- .../Bindings/display/mediatek/mediatek,dp.yaml | 2 + .../Bindings/display/mediatek/mediatek,dsi.yaml | 2 +- .../Bindings/display/msm/dp-controller.yaml | 1 + .../device-tree/Bindings/display/msm/gmu.yaml | 47 +- .../device-tree/Bindings/display/msm/gpu.yaml | 4 +- .../Bindings/display/msm/qcom,msm8998-mdss.yaml | 6 + .../Bindings/display/msm/qcom,qcm2290-mdss.yaml | 6 + .../Bindings/display/msm/qcom,sc7180-mdss.yaml | 8 + .../Bindings/display/msm/qcom,sc7280-mdss.yaml | 10 + .../Bindings/display/msm/qcom,sc8280xp-mdss.yaml | 4 + .../Bindings/display/msm/qcom,sdm845-mdss.yaml | 8 + .../Bindings/display/msm/qcom,sm6115-mdss.yaml | 6 + .../Bindings/display/msm/qcom,sm6125-mdss.yaml | 6 + .../Bindings/display/msm/qcom,sm6350-mdss.yaml | 6 + .../Bindings/display/msm/qcom,sm6375-mdss.yaml | 6 + .../Bindings/display/msm/qcom,sm8150-mdss.yaml | 6 + .../Bindings/display/msm/qcom,sm8250-mdss.yaml | 6 + .../Bindings/display/msm/qcom,sm8350-mdss.yaml | 8 + .../Bindings/display/msm/qcom,sm8450-mdss.yaml | 8 + .../Bindings/display/msm/qcom,sm8550-mdss.yaml | 8 + .../Bindings/display/panel/ilitek,ili9163.yaml | 4 - .../Bindings/display/panel/jdi,lpm102a188a.yaml | 94 + .../display/panel/leadtek,ltk050h3146w.yaml | 1 + .../Bindings/display/panel/newvision,nv3051d.yaml | 5 +- .../Bindings/display/panel/panel-simple-dsi.yaml | 2 + .../panel/panel-simple-lvds-dual-ports.yaml | 118 ++ .../Bindings/display/panel/panel-simple.yaml | 40 +- .../Bindings/display/panel/raydium,rm692e5.yaml | 73 + .../display/panel/rocktech,jh057n00900.yaml | 2 + .../Bindings/display/renesas,shmobile-lcdc.yaml | 130 ++ .../display/rockchip/rockchip,dw-mipi-dsi.yaml | 2 + .../Bindings/display/rockchip/rockchip-vop.yaml | 1 + .../Bindings/display/sitronix,st7735r.yaml | 5 - .../Bindings/display/solomon,ssd-common.yaml | 42 + .../Bindings/display/solomon,ssd1307fb.yaml | 28 +- .../Bindings/display/solomon,ssd132x.yaml | 89 + sys/contrib/device-tree/Bindings/dma/qcom,gpi.yaml | 2 + sys/contrib/device-tree/Bindings/eeprom/at24.yaml | 5 + .../device-tree/Bindings/firmware/arm,scmi.yaml | 15 +- .../device-tree/Bindings/firmware/qcom,scm.yaml | 10 + .../device-tree/Bindings/gpio/fsl-imx-gpio.yaml | 8 + .../device-tree/Bindings/gpio/gpio-vf610.yaml | 40 +- .../Bindings/gpio/intel,ixp4xx-gpio.yaml | 73 + .../Bindings/gpio/loongson,ls-gpio.yaml | 21 +- .../device-tree/Bindings/hwmon/adi,ltc2991.yaml | 128 ++ .../device-tree/Bindings/hwmon/adi,max31827.yaml | 66 + .../device-tree/Bindings/hwmon/npcm750-pwm-fan.txt | 6 +- .../Bindings/hwmon/pmbus/infineon,tda38640.yaml | 49 + .../device-tree/Bindings/hwmon/ti,ina2xx.yaml | 1 + .../device-tree/Bindings/hwmon/ti,ina3221.yaml | 121 ++ .../Bindings/i2c/i2c-demux-pinctrl.yaml | 172 ++ .../device-tree/Bindings/i2c/qcom,i2c-cci.yaml | 2 + sys/contrib/device-tree/Bindings/i3c/i3c.yaml | 10 +- .../Bindings/iio/accel/kionix,kx022a.yaml | 14 +- .../device-tree/Bindings/iio/adc/lltc,ltc2497.yaml | 20 +- .../Bindings/iio/adc/microchip,mcp3564.yaml | 205 ++ .../Bindings/iio/adc/microchip,mcp3911.yaml | 6 + .../device-tree/Bindings/iio/adc/ti,ads1015.yaml | 3 + .../Bindings/iio/adc/ti,twl6030-gpadc.yaml | 43 + .../Bindings/iio/amplifiers/adi,hmc425a.yaml | 12 +- .../Bindings/iio/imu/invensense,mpu6050.yaml | 5 + .../device-tree/Bindings/iio/imu/st,lsm6dsx.yaml | 3 + .../Bindings/iio/pressure/rohm,bm1390.yaml | 52 + .../Bindings/iio/resolver/adi,ad2s1210.yaml | 177 ++ .../device-tree/Bindings/input/fsl,scu-key.yaml | 2 + .../Bindings/input/qcom,pm8921-keypad.yaml | 89 + .../device-tree/Bindings/input/syna,rmi4.yaml | 2 + .../input/touchscreen/cypress,tt21000.yaml | 3 + .../Bindings/input/twl4030-pwrbutton.txt | 2 +- .../Bindings/interconnect/qcom,msm8939.yaml | 74 + .../Bindings/interconnect/qcom,msm8996.yaml | 126 ++ .../Bindings/interconnect/qcom,qcm2290.yaml | 60 +- .../Bindings/interconnect/qcom,rpm-common.yaml | 28 + .../Bindings/interconnect/qcom,rpm.yaml | 250 +-- .../Bindings/interconnect/qcom,rpmh.yaml | 1 + .../Bindings/interconnect/qcom,sdm660.yaml | 159 +- .../Bindings/interconnect/qcom,sdx75-rpmh.yaml | 92 + .../Bindings/interrupt-controller/qcom,mpm.yaml | 4 + .../Bindings/interrupt-controller/qcom,pdc.yaml | 1 + .../interrupt-controller/sifive,plic-1.0.0.yaml | 2 + .../thead,c900-aclint-mswi.yaml | 43 + .../device-tree/Bindings/iommu/arm,smmu.yaml | 2 + .../Bindings/leds/backlight/common.yaml | 17 + .../Bindings/leds/backlight/led-backlight.yaml | 19 +- .../Bindings/leds/backlight/mps,mp3309c.yaml | 73 + .../Bindings/leds/backlight/pwm-backlight.yaml | 20 +- sys/contrib/device-tree/Bindings/leds/common.yaml | 4 +- .../device-tree/Bindings/leds/irled/pwm-ir-tx.yaml | 5 +- .../device-tree/Bindings/leds/kinetic,ktd202x.yaml | 171 ++ .../Bindings/leds/register-bit-led.yaml | 2 +- .../device-tree/Bindings/mailbox/fsl,mu.yaml | 5 +- .../Bindings/mailbox/qcom,apcs-kpss-global.yaml | 2 + .../device-tree/Bindings/mailbox/qcom-ipcc.yaml | 1 + .../Bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml | 6 + .../Bindings/media/amlogic,meson6-ir.yaml | 1 + .../device-tree/Bindings/media/cdns,csi2rx.yaml | 1 + .../Bindings/media/i2c/hynix,hi846.yaml | 7 +- .../Bindings/media/i2c/onnn,mt9m114.yaml | 114 ++ .../Bindings/media/i2c/ovti,ov02a10.yaml | 8 +- .../Bindings/media/i2c/ovti,ov4689.yaml | 6 +- .../Bindings/media/i2c/ovti,ov5640.yaml | 7 +- .../Bindings/media/i2c/ovti,ov5642.yaml | 141 ++ .../Bindings/media/i2c/ovti,ov5693.yaml | 2 +- .../Bindings/media/i2c/sony,imx214.yaml | 2 +- .../Bindings/media/i2c/sony,imx415.yaml | 10 +- .../Bindings/media/i2c/ti,ds90ub960.yaml | 1 + .../Bindings/media/nuvoton,npcm-ece.yaml | 43 + .../Bindings/media/nuvoton,npcm-vcd.yaml | 72 + .../Bindings/media/qcom,sdm845-venus-v2.yaml | 8 + .../device-tree/Bindings/media/rockchip-vpu.yaml | 7 + .../Bindings/media/samsung,exynos4212-fimc-is.yaml | 15 +- .../device-tree/Bindings/media/samsung,fimc.yaml | 27 +- .../Bindings/media/ti,j721e-csi2rx-shim.yaml | 100 + .../Bindings/media/video-interfaces.yaml | 1 + .../Bindings/memory-controllers/ingenic,nemc.yaml | 1 + .../memory-controllers/renesas,rpc-if.yaml | 2 + .../memory-controllers/rockchip,rk3399-dmc.yaml | 2 +- .../Bindings/memory-controllers/ti,gpmc.yaml | 2 +- .../memory-controllers/xlnx,versal-ddrmc-edac.yaml | 57 + .../Bindings/mfd/arm,dev-platforms-syscon.yaml | 67 + .../Bindings/mfd/brcm,bcm63268-gpio-sysctl.yaml | 18 +- .../Bindings/mfd/brcm,bcm6362-gpio-sysctl.yaml | 2 +- .../Bindings/mfd/brcm,bcm6368-gpio-sysctl.yaml | 2 +- .../device-tree/Bindings/mfd/maxim,max5970.yaml | 5 + .../device-tree/Bindings/mfd/maxim,max8925.yaml | 145 ++ .../device-tree/Bindings/mfd/maxim,max8998.yaml | 324 ++++ .../device-tree/Bindings/mfd/mediatek,mt6357.yaml | 2 + sys/contrib/device-tree/Bindings/mfd/mt6397.txt | 4 +- .../device-tree/Bindings/mfd/qcom,spmi-pmic.yaml | 11 +- .../device-tree/Bindings/mfd/qcom,tcsr.yaml | 1 + .../device-tree/Bindings/mfd/qcom-pm8xxx.yaml | 26 +- .../device-tree/Bindings/mfd/rockchip,rk805.yaml | 4 + .../device-tree/Bindings/mfd/rockchip,rk806.yaml | 2 + .../device-tree/Bindings/mfd/rockchip,rk808.yaml | 4 + .../device-tree/Bindings/mfd/rockchip,rk809.yaml | 6 +- .../device-tree/Bindings/mfd/rockchip,rk817.yaml | 3 + .../device-tree/Bindings/mfd/rockchip,rk818.yaml | 4 + .../Bindings/mfd/stericsson,db8500-prcmu.yaml | 2 +- sys/contrib/device-tree/Bindings/mfd/syscon.yaml | 4 + .../device-tree/Bindings/mfd/ti,lp87524-q1.yaml | 1 + .../device-tree/Bindings/mfd/ti,lp87561-q1.yaml | 1 + .../device-tree/Bindings/mfd/ti,lp87565-q1.yaml | 1 + sys/contrib/device-tree/Bindings/mfd/ti,twl.yaml | 67 + .../device-tree/Bindings/mfd/x-powers,axp152.yaml | 5 +- .../device-tree/Bindings/mmc/npcm,sdhci.yaml | 45 + .../device-tree/Bindings/mmc/renesas,sdhi.yaml | 2 + .../device-tree/Bindings/mmc/sdhci-msm.yaml | 9 +- .../Bindings/mmc/starfive,jh7110-mmc.yaml | 2 - sys/contrib/device-tree/Bindings/mtd/mtd.yaml | 7 +- .../Bindings/mtd/partitions/fixed-partitions.yaml | 19 + .../Bindings/mtd/partitions/nvmem-cells.yaml | 1 + .../Bindings/net/allwinner,sun8i-a83t-emac.yaml | 2 + .../device-tree/Bindings/net/brcm,asp-v2.0.yaml | 2 +- .../device-tree/Bindings/net/dsa/brcm,sf2.yaml | 1 + sys/contrib/device-tree/Bindings/net/dsa/dsa.yaml | 11 +- .../Bindings/net/dsa/mediatek,mt7530.yaml | 10 +- .../Bindings/net/dsa/microchip,ksz.yaml | 22 + .../Bindings/net/dsa/microchip,lan937x.yaml | 3 +- .../device-tree/Bindings/net/dsa/nxp,sja1105.yaml | 4 +- .../device-tree/Bindings/net/dsa/qca8k.yaml | 1 + .../device-tree/Bindings/net/dsa/realtek.yaml | 2 + .../Bindings/net/dsa/renesas,rzn1-a5psw.yaml | 10 +- .../device-tree/Bindings/net/engleder,tsnep.yaml | 1 + .../Bindings/net/ethernet-controller.yaml | 4 +- .../device-tree/Bindings/net/ethernet-switch.yaml | 14 +- sys/contrib/device-tree/Bindings/net/fsl,fec.yaml | 1 + .../Bindings/net/loongson,ls1b-gmac.yaml | 114 ++ .../Bindings/net/loongson,ls1c-emac.yaml | 113 ++ .../Bindings/net/microchip,lan95xx.yaml | 2 + .../Bindings/net/mscc,vsc7514-switch.yaml | 46 +- .../device-tree/Bindings/net/nxp,tja11xx.yaml | 1 + .../device-tree/Bindings/net/renesas,ether.yaml | 3 +- .../device-tree/Bindings/net/renesas,etheravb.yaml | 3 +- .../device-tree/Bindings/net/snps,dwmac.yaml | 5 + .../device-tree/Bindings/net/ti,cc1352p7.yaml | 51 + .../device-tree/Bindings/net/ti,cpsw-switch.yaml | 2 +- .../device-tree/Bindings/net/ti,icssg-prueth.yaml | 8 + .../Bindings/nvmem/allwinner,sun4i-a10-sid.yaml | 5 +- .../Bindings/nvmem/amlogic,meson-gxbb-efuse.yaml | 1 + .../Bindings/nvmem/amlogic,meson6-efuse.yaml | 1 + .../device-tree/Bindings/nvmem/apple,efuses.yaml | 1 + .../device-tree/Bindings/nvmem/imx-ocotp.yaml | 1 + .../device-tree/Bindings/nvmem/mediatek,efuse.yaml | 1 + .../Bindings/nvmem/microchip,sama7g5-otpc.yaml | 1 + .../device-tree/Bindings/nvmem/mxs-ocotp.yaml | 11 +- .../Bindings/nvmem/nvmem-deprecated-cells.yaml | 28 + sys/contrib/device-tree/Bindings/nvmem/nvmem.yaml | 9 - .../device-tree/Bindings/nvmem/qcom,qfprom.yaml | 1 + .../Bindings/nvmem/qcom,sec-qfprom.yaml | 1 + .../device-tree/Bindings/nvmem/qcom,spmi-sdam.yaml | 1 + .../device-tree/Bindings/nvmem/rockchip,otp.yaml | 1 + .../device-tree/Bindings/nvmem/rockchip-efuse.yaml | 1 + .../Bindings/nvmem/socionext,uniphier-efuse.yaml | 1 + .../Bindings/nvmem/sunplus,sp7021-ocotp.yaml | 1 + .../device-tree/Bindings/nvmem/u-boot,env.yaml | 2 + .../device-tree/Bindings/opp/opp-v2-kryo-cpu.yaml | 36 +- .../device-tree/Bindings/pci/rcar-gen4-pci-ep.yaml | 115 ++ .../Bindings/pci/rcar-gen4-pci-host.yaml | 127 ++ .../Bindings/pci/snps,dw-pcie-common.yaml | 4 +- .../device-tree/Bindings/pci/snps,dw-pcie-ep.yaml | 4 +- .../device-tree/Bindings/pci/snps,dw-pcie.yaml | 4 +- .../device-tree/Bindings/pci/xlnx,nwl-pcie.yaml | 2 +- .../device-tree/Bindings/pci/xlnx,xdma-host.yaml | 114 ++ .../device-tree/Bindings/perf/riscv,pmu.yaml | 2 +- .../Bindings/phy/marvell,pxa1928-usb-phy.yaml | 47 + .../device-tree/Bindings/phy/mediatek,dsi-phy.yaml | 1 + .../Bindings/phy/mediatek,mt7628-usbphy.yaml | 74 + .../Bindings/phy/qcom,ipq5332-usb-hsphy.yaml | 4 +- .../Bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml | 2 + .../phy/qcom,sc8280xp-qmp-usb3-uni-phy.yaml | 57 +- .../Bindings/phy/qcom,snps-eusb2-phy.yaml | 7 +- .../Bindings/phy/qcom,snps-eusb2-repeater.yaml | 21 + .../Bindings/phy/st,stih407-usb2-phy.yaml | 63 + .../Bindings/pinctrl/amlogic,meson-pinctrl-a1.yaml | 1 + .../Bindings/pinctrl/brcm,bcm6318-pinctrl.yaml | 5 + .../Bindings/pinctrl/brcm,bcm63268-pinctrl.yaml | 25 +- .../Bindings/pinctrl/brcm,bcm6328-pinctrl.yaml | 5 + .../Bindings/pinctrl/brcm,bcm6358-pinctrl.yaml | 5 +- .../Bindings/pinctrl/brcm,bcm6362-pinctrl.yaml | 7 +- .../Bindings/pinctrl/brcm,bcm6368-pinctrl.yaml | 7 +- .../Bindings/pinctrl/nuvoton,npcm845-pinctrl.yaml | 217 +++ .../Bindings/pinctrl/nxp,s32g2-siul2-pinctrl.yaml | 2 +- .../Bindings/pinctrl/qcom,mdm9607-tlmm.yaml | 3 +- .../Bindings/pinctrl/qcom,msm8226-pinctrl.yaml | 4 +- .../Bindings/pinctrl/qcom,sa8775p-tlmm.yaml | 1 + .../Bindings/pinctrl/qcom,sc7280-pinctrl.yaml | 4 + .../Bindings/pinctrl/realtek,rtd1315e-pinctrl.yaml | 188 ++ .../Bindings/pinctrl/realtek,rtd1319d-pinctrl.yaml | 187 ++ .../Bindings/pinctrl/realtek,rtd1619b-pinctrl.yaml | 186 ++ .../Bindings/pinctrl/renesas,rzg2l-pinctrl.yaml | 21 + .../Bindings/pinctrl/renesas,rzv2m-pinctrl.yaml | 1 + .../Bindings/pinctrl/rockchip,pinctrl.yaml | 2 + .../Bindings/pinctrl/st,stm32-pinctrl.yaml | 3 +- .../Bindings/power/amlogic,meson-sec-pwrc.yaml | 3 +- .../Bindings/power/mediatek,power-controller.yaml | 6 + .../device-tree/Bindings/power/power-domain.yaml | 17 +- .../device-tree/Bindings/power/qcom,rpmpd.yaml | 82 +- .../Bindings/power/reset/gpio-poweroff.yaml | 6 + .../Bindings/power/reset/syscon-poweroff.yaml | 10 +- .../Bindings/power/supply/maxim,max17040.yaml | 31 + .../Bindings/power/supply/mitsumi,mm8013.yaml | 38 + .../Bindings/power/supply/qcom,pm8916-bms-vm.yaml | 83 + .../Bindings/power/supply/qcom,pm8916-lbc.yaml | 128 ++ .../Bindings/power/supply/sbs,sbs-manager.yaml | 6 + sys/contrib/device-tree/Bindings/pwm/imx-pwm.yaml | 10 +- sys/contrib/device-tree/Bindings/pwm/mxs-pwm.yaml | 13 +- .../device-tree/Bindings/pwm/pwm-rockchip.yaml | 1 + .../Bindings/regulator/adi,max77503-regulator.yaml | 50 + .../device-tree/Bindings/regulator/dlg,da9210.yaml | 52 + .../Bindings/regulator/fixed-regulator.yaml | 5 + .../Bindings/regulator/maxim,max20086.yaml | 1 + .../Bindings/regulator/maxim,max77826.yaml | 2 + .../regulator/mediatek,mt6358-regulator.yaml | 250 +++ .../Bindings/regulator/mps,mpq2286.yaml | 59 + .../Bindings/regulator/onnn,fan53880.yaml | 2 + .../Bindings/regulator/qcom,rpmh-regulator.yaml | 12 + .../Bindings/regulator/qcom,spmi-regulator.yaml | 68 +- .../device-tree/Bindings/remoteproc/mtk,scp.yaml | 176 +- .../device-tree/Bindings/remoteproc/qcom,adsp.yaml | 20 +- .../Bindings/remoteproc/qcom,msm8996-mss-pil.yaml | 2 - .../Bindings/remoteproc/qcom,sc7180-pas.yaml | 81 +- .../Bindings/remoteproc/qcom,sm6375-pas.yaml | 145 ++ .../Bindings/remoteproc/renesas,rcar-rproc.yaml | 2 +- .../Bindings/remoteproc/ti,pru-rproc.yaml | 23 + .../Bindings/reserved-memory/qcom,rmtfs-mem.yaml | 11 + .../Bindings/reserved-memory/reserved-memory.txt | 2 +- sys/contrib/device-tree/Bindings/riscv/cpus.yaml | 1 + .../device-tree/Bindings/riscv/extensions.yaml | 12 + sys/contrib/device-tree/Bindings/riscv/sophgo.yaml | 32 + .../Bindings/rng/amlogic,meson-rng.yaml | 1 + .../device-tree/Bindings/rng/st,stm32-rng.yaml | 20 +- .../Bindings/rtc/amlogic,meson6-rtc.yaml | 1 + .../Bindings/rtc/cirrus,ep9301-rtc.yaml | 42 + .../device-tree/Bindings/rtc/epson,rtc7301.yaml | 51 + .../Bindings/rtc/microcrystal,rv3032.yaml | 2 + .../Bindings/rtc/mstar,ssd202d-rtc.yaml | 35 + .../device-tree/Bindings/rtc/nxp,pcf2123.yaml | 47 + .../device-tree/Bindings/rtc/nxp,pcf8523.yaml | 45 + .../device-tree/Bindings/rtc/trivial-rtc.yaml | 2 + .../device-tree/Bindings/serial/esp,esp32-acm.yaml | 42 + .../Bindings/serial/esp,esp32-uart.yaml | 51 + .../device-tree/Bindings/serial/fsl-imx-uart.yaml | 2 + .../device-tree/Bindings/serial/fsl-mxs-auart.yaml | 13 +- .../device-tree/Bindings/serial/maxim,max310x.yaml | 74 + .../Bindings/serial/nvidia,tegra20-hsuart.yaml | 10 +- .../device-tree/Bindings/serial/nxp,sc16is7xx.yaml | 127 ++ .../device-tree/Bindings/serial/qcom,msm-uart.yaml | 4 +- .../Bindings/serial/qcom,msm-uartdm.yaml | 4 +- .../Bindings/serial/renesas,em-uart.yaml | 14 +- .../device-tree/Bindings/serial/renesas,hscif.yaml | 4 +- .../device-tree/Bindings/serial/renesas,scif.yaml | 1 + .../device-tree/Bindings/serial/renesas,scifa.yaml | 4 +- .../device-tree/Bindings/serial/renesas,scifb.yaml | 4 +- sys/contrib/device-tree/Bindings/serial/rs485.yaml | 4 + .../device-tree/Bindings/serial/samsung_uart.yaml | 8 +- .../device-tree/Bindings/serial/serial.yaml | 18 +- .../Bindings/soc/fsl/cpm_qe/fsl,cpm1-scc-qmc.yaml | 37 +- .../soc/mediatek/mediatek,mt7986-wo-ccif.yaml | 1 + .../device-tree/Bindings/soc/mediatek/mtk-svs.yaml | 1 + .../Bindings/soc/nuvoton/nuvoton,gfxi.yaml | 39 + .../Bindings/soc/qcom/qcom,geni-se.yaml | 2 + .../Bindings/soc/qcom/qcom,pmic-glink.yaml | 19 + .../Bindings/soc/renesas/renesas,rzg2l-sysc.yaml | 1 + .../device-tree/Bindings/soc/renesas/renesas.yaml | 28 +- .../device-tree/Bindings/soc/rockchip/grf.yaml | 1 + .../Bindings/soc/sti/st,sti-syscon.yaml | 46 + .../Bindings/soc/tegra/nvidia,tegra20-pmc.yaml | 416 ++++ .../Bindings/sound/audio-graph-port.yaml | 20 +- .../device-tree/Bindings/sound/audio-graph.yaml | 9 +- .../device-tree/Bindings/sound/awinic,aw87390.yaml | 58 + .../device-tree/Bindings/sound/awinic,aw88395.yaml | 33 +- .../device-tree/Bindings/sound/cirrus,cs42l43.yaml | 4 +- .../device-tree/Bindings/sound/dai-params.yaml | 11 +- .../device-tree/Bindings/sound/dialog,da7219.yaml | 1 + .../device-tree/Bindings/sound/fsl,qmc-audio.yaml | 1 + .../Bindings/sound/mediatek,mt8188-afe.yaml | 2 +- .../Bindings/sound/mediatek,mt8188-mt6359.yaml | 1 + .../sound/mt8186-mt6366-rt1019-rt5682s.yaml | 1 + .../device-tree/Bindings/sound/nxp,tfa9879.yaml | 44 + sys/contrib/device-tree/Bindings/sound/pcm512x.txt | 9 +- .../Bindings/sound/qcom,lpass-tx-macro.yaml | 18 + .../device-tree/Bindings/sound/qcom,sm8250.yaml | 1 + .../device-tree/Bindings/sound/realtek,rt5616.yaml | 49 + .../Bindings/sound/richtek,rtq9128.yaml | 61 + .../Bindings/sound/starfive,jh7110-pwmdac.yaml | 76 + .../device-tree/Bindings/sound/tas5805m.yaml | 5 +- .../device-tree/Bindings/sound/ti,pcm3168a.yaml | 1 + sys/contrib/device-tree/Bindings/sound/wm8782.txt | 7 + .../Bindings/soundwire/qcom,soundwire.yaml | 16 +- .../Bindings/spi/allwinner,sun4i-a10-spi.yaml | 2 + .../Bindings/spi/allwinner,sun6i-a31-spi.yaml | 2 + .../Bindings/spi/arm,pl022-peripheral-props.yaml | 61 + .../Bindings/spi/nvidia,tegra210-quad.yaml | 1 + .../device-tree/Bindings/spi/qcom,spi-qup.yaml | 13 + .../Bindings/spi/renesas,rzv2m-csi.yaml | 9 + .../device-tree/Bindings/spi/rockchip-sfc.yaml | 2 + .../device-tree/Bindings/spi/snps,dw-apb-ssi.yaml | 2 + .../Bindings/spi/spi-peripheral-props.yaml | 6 + .../device-tree/Bindings/spi/spi-pl022.yaml | 51 - .../device-tree/Bindings/spi/st,stm32-spi.yaml | 20 - .../Bindings/thermal/fsl,scu-thermal.yaml | 4 +- .../device-tree/Bindings/thermal/imx-thermal.yaml | 7 + .../Bindings/thermal/mediatek,lvts-thermal.yaml | 1 + .../Bindings/thermal/nvidia,tegra124-soctherm.yaml | 5 + .../device-tree/Bindings/thermal/qcom-tsens.yaml | 1 + .../Bindings/thermal/thermal-zones.yaml | 2 +- .../Bindings/timer/cirrus,ep9301-timer.yaml | 49 + .../device-tree/Bindings/timer/fsl,imxgpt.yaml | 31 +- .../Bindings/timer/renesas,rz-mtu3.yaml | 67 +- .../device-tree/Bindings/timer/sifive,clint.yaml | 1 + .../Bindings/timer/thead,c900-aclint-mtimer.yaml | 43 + .../device-tree/Bindings/trivial-devices.yaml | 6 +- sys/contrib/device-tree/Bindings/ufs/qcom,ufs.yaml | 2 + .../device-tree/Bindings/ufs/ufs-common.yaml | 35 +- .../device-tree/Bindings/usb/ci-hdrc-usb2.yaml | 7 + .../device-tree/Bindings/usb/fcs,fsa4480.yaml | 43 +- .../device-tree/Bindings/usb/genesys,gl850g.yaml | 3 +- .../device-tree/Bindings/usb/gpio-sbu-mux.yaml | 2 +- .../Bindings/usb/microchip,usb5744.yaml | 7 +- .../device-tree/Bindings/usb/nxp,ptn36502.yaml | 94 + .../device-tree/Bindings/usb/qcom,dwc3.yaml | 11 +- .../device-tree/Bindings/usb/realtek,rtd-dwc3.yaml | 80 + .../Bindings/usb/realtek,rtd-type-c.yaml | 82 + .../device-tree/Bindings/usb/rockchip,dwc3.yaml | 62 +- .../device-tree/Bindings/usb/snps,dwc3.yaml | 56 + .../device-tree/Bindings/usb/ti,tps6598x.yaml | 86 +- sys/contrib/device-tree/Bindings/usb/usb-hcd.yaml | 2 +- .../device-tree/Bindings/usb/vialab,vl817.yaml | 1 - .../device-tree/Bindings/vendor-prefixes.yaml | 28 + .../Bindings/watchdog/amlogic,meson-gxbb-wdt.yaml | 12 +- .../device-tree/Bindings/watchdog/aspeed-wdt.txt | 18 +- .../Bindings/watchdog/atmel,at91rm9200-wdt.yaml | 33 + .../Bindings/watchdog/cnxt,cx92755-wdt.yaml | 45 + .../Bindings/watchdog/dlg,da9062-watchdog.yaml | 50 + .../device-tree/Bindings/watchdog/fsl,scu-wdt.yaml | 4 +- .../Bindings/watchdog/fsl-imx7ulp-wdt.yaml | 5 + .../device-tree/Bindings/watchdog/qcom-wdt.yaml | 2 + .../device-tree/Bindings/writing-schema.rst | 5 +- .../device-tree/include/dt-bindings/arm/qcom,ids.h | 5 + .../clock/amlogic,s4-peripherals-clkc.h | 236 +++ .../dt-bindings/clock/amlogic,s4-pll-clkc.h | 43 + .../include/dt-bindings/clock/imx8mp-clock.h | 1 - .../include/dt-bindings/clock/qcom,mmcc-msm8974.h | 1 - .../include/dt-bindings/clock/qcom,sm4450-gcc.h | 197 ++ .../include/dt-bindings/clock/qcom,sm8550-camcc.h | 187 ++ .../include/dt-bindings/clock/r9a08g045-cpg.h | 242 +++ .../dt-bindings/gpio/amlogic,t7-periphs-pinctrl.h | 179 ++ .../include/dt-bindings/interconnect/qcom,sdx75.h | 102 + .../include/dt-bindings/power/amlogic,t7-pwrc.h | 63 + .../dt-bindings/power/mediatek,mt8365-power.h | 19 + .../include/dt-bindings/power/qcom,rpmhpd.h | 2 + .../include/dt-bindings/power/qcom-rpmpd.h | 21 + .../dt-bindings/power/starfive,jh7110-pmu.h | 6 +- .../dt-bindings/thermal/mediatek,lvts-thermal.h | 28 + .../include/dt-bindings/watchdog/aspeed-wdt.h | 92 + .../device-tree/src/arm/allwinner/sun8i-r40.dtsi | 2 + .../arm/allwinner/sun8i-v3s-anbernic-rg-nano.dts | 276 +++ .../device-tree/src/arm/allwinner/sun8i-v3s.dtsi | 35 + .../src/arm/aspeed/aspeed-bmc-ampere-mtjade.dts | 66 +- .../arm/aspeed/aspeed-bmc-ampere-mtmitchell.dts | 302 ++- .../arm/aspeed/aspeed-bmc-facebook-minerva-cmc.dts | 265 +++ .../src/arm/aspeed/aspeed-bmc-ibm-bonnell.dts | 8 +- .../device-tree/src/arm/broadcom/bcm-ns.dtsi | 34 + .../src/arm/broadcom/bcm2711-rpi-400.dts | 4 +- .../bcm4708-buffalo-wzr-1166dhp-common.dtsi | 8 + .../src/arm/broadcom/bcm4708-luxul-xap-1510.dts | 8 + .../src/arm/broadcom/bcm4708-luxul-xwc-1000.dts | 8 + .../src/arm/broadcom/bcm4708-netgear-r6250.dts | 8 + .../src/arm/broadcom/bcm4708-smartrg-sr400ac.dts | 8 + .../arm/broadcom/bcm47081-buffalo-wzr-600dhp2.dts | 8 + .../src/arm/broadcom/bcm47081-luxul-xap-1410.dts | 8 + .../src/arm/broadcom/bcm47081-luxul-xwr-1200.dts | 8 + .../src/arm/broadcom/bcm4709-asus-rt-ac87u.dts | 11 + .../src/arm/broadcom/bcm4709-linksys-ea9200.dts | 38 + .../src/arm/broadcom/bcm4709-netgear-r8000.dts | 18 + .../src/arm/broadcom/bcm47094-dlink-dir-885l.dts | 24 + .../src/arm/broadcom/bcm47094-dlink-dir-890l.dts | 8 + .../src/arm/broadcom/bcm47094-luxul-abr-4500.dts | 8 + .../src/arm/broadcom/bcm47094-luxul-xap-1610.dts | 8 + .../src/arm/broadcom/bcm47094-luxul-xbr-4500.dts | 8 + .../src/arm/broadcom/bcm47094-luxul-xwc-2000.dts | 8 + .../src/arm/broadcom/bcm47094-luxul-xwr-3100.dts | 8 + .../arm/broadcom/bcm47094-luxul-xwr-3150-v1.dts | 8 + .../src/arm/broadcom/bcm53015-meraki-mr26.dts | 8 + .../src/arm/broadcom/bcm53016-meraki-mr32.dts | 8 + .../device-tree/src/arm/broadcom/bcm5301x.dtsi | 34 - .../device-tree/src/arm/broadcom/bcm953012er.dts | 8 + .../arm/intel/ixp/intel-ixp42x-dlink-dsm-g600.dts | 2 +- .../arm/intel/ixp/intel-ixp42x-freecom-fsg-3.dts | 2 +- .../arm/intel/ixp/intel-ixp42x-iomega-nas100d.dts | 2 +- .../arm/intel/ixp/intel-ixp42x-linksys-nslu2.dts | 4 +- .../arm/intel/ixp/intel-ixp42x-linksys-wrv54g.dts | 2 +- .../intel/ixp/intel-ixp42x-usrobotics-usr8200.dts | 229 +++ .../device-tree/src/arm/mediatek/mt2701-evb.dts | 2 +- .../device-tree/src/arm/mediatek/mt6323.dtsi | 58 +- .../device-tree/src/arm/mediatek/mt7623n.dtsi | 4 +- .../device-tree/src/arm/mediatek/mt7629-rfb.dts | 2 +- .../src/arm/microchip/at91-sam9x60_curiosity.dts | 4 + .../src/arm/microchip/at91-sama5d29_curiosity.dts | 600 ++++++ .../device-tree/src/arm/microchip/sama5d4.dtsi | 2 +- .../src/arm/nuvoton/nuvoton-npcm730-gsj.dts | 4 +- .../src/arm/nuvoton/nuvoton-npcm730-kudo.dts | 2 +- .../arm/nuvoton/nuvoton-npcm750-runbmc-olympus.dts | 4 +- .../src/arm/nvidia/tegra20-acer-a500-picasso.dts | 2 +- .../src/arm/nvidia/tegra20-asus-tf101.dts | 2 +- .../src/arm/nvidia/tegra30-asus-lvds-display.dtsi | 2 +- .../src/arm/nvidia/tegra30-asus-tf700t.dts | 2 +- sys/contrib/device-tree/src/arm/nxp/imx/imx25.dtsi | 7 +- .../arm/nxp/imx/imx27-phytec-phycard-s-som.dtsi | 2 +- .../src/arm/nxp/imx/imx27-phytec-phycore-som.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx51-zii-rdu1.dts | 4 +- sys/contrib/device-tree/src/arm/nxp/imx/imx51.dtsi | 2 +- .../arm/nxp/imx/imx53-sk-imx53-atm0700d4-lvds.dts | 97 + .../arm/nxp/imx/imx53-sk-imx53-atm0700d4-rgb.dts | 112 ++ .../src/arm/nxp/imx/imx53-sk-imx53-atm0700d4.dtsi | 45 + sys/contrib/device-tree/src/arm/nxp/imx/imx53.dtsi | 4 +- .../device-tree/src/arm/nxp/imx/imx6q-b650v3.dts | 4 +- .../src/arm/nxp/imx/imx6q-pistachio.dts | 4 +- .../arm/nxp/imx/imx6q-skov-reve-mi1010ait-1cp1.dts | 4 +- .../src/arm/nxp/imx/imx6q-var-mx6customboard.dts | 247 +++ .../src/arm/nxp/imx/imx6qdl-gw5904.dtsi | 46 +- .../src/arm/nxp/imx/imx6qdl-gw5910.dtsi | 1 - .../src/arm/nxp/imx/imx6qdl-gw5912.dtsi | 1 - .../src/arm/nxp/imx/imx6qdl-nitrogen6_max.dtsi | 2 +- .../src/arm/nxp/imx/imx6qdl-var-som.dtsi | 569 ++++++ .../device-tree/src/arm/nxp/imx/imx6ul-pico.dtsi | 2 + .../device-tree/src/arm/nxp/imx/imx6ul-tx6ul.dtsi | 6 +- .../src/arm/nxp/imx/imx6ull-colibri-emmc-aster.dts | 1 - .../arm/nxp/imx/imx6ull-colibri-emmc-eval-v3.dts | 1 - .../arm/nxp/imx/imx6ull-colibri-emmc-iris-v2.dts | 3 +- .../src/arm/nxp/imx/imx6ull-colibri-emmc-iris.dts | 1 - .../src/arm/nxp/imx/imx6ull-colibri-eval-v3.dts | 2 +- .../src/arm/nxp/imx/imx6ull-colibri-wifi-aster.dts | 2 +- .../arm/nxp/imx/imx6ull-colibri-wifi-eval-v3.dts | 2 +- .../arm/nxp/imx/imx6ull-colibri-wifi-iris-v2.dts | 2 +- .../src/arm/nxp/imx/imx6ull-colibri-wifi-iris.dts | 2 +- .../src/arm/nxp/imx/imx6ull-phytec-tauri-emmc.dts | 4 +- .../src/arm/nxp/imx/imx6ull-phytec-tauri-nand.dts | 4 +- .../src/arm/nxp/imx/imx6ull-phytec-tauri.dtsi | 5 - .../src/arm/nxp/imx/imx7d-colibri-emmc-aster.dts | 1 - .../src/arm/nxp/imx/imx7d-colibri-emmc-eval-v3.dts | 1 - .../src/arm/nxp/imx/imx7d-colibri-emmc-iris-v2.dts | 1 - .../src/arm/nxp/imx/imx7d-colibri-emmc-iris.dts | 1 - .../device-tree/src/arm/nxp/imx/imx7d-pico-pi.dts | 4 + sys/contrib/device-tree/src/arm/nxp/imx/imx7s.dtsi | 15 +- .../device-tree/src/arm/nxp/imx/imx7ulp.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/mba6ulx.dtsi | 9 +- .../device-tree/src/arm/nxp/mxs/imx23-evk.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx23-sansa.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx23-xfi3.dts | 2 +- sys/contrib/device-tree/src/arm/nxp/mxs/imx23.dtsi | 4 +- .../device-tree/src/arm/nxp/mxs/imx28-apf28dev.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-cfa10049.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-cfa10055.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-cfa10057.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-cfa10058.dts | 2 +- .../src/arm/nxp/mxs/imx28-eukrea-mbmx28lc.dtsi | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-evk.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-m28cu3.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-m28evk.dts | 2 +- .../device-tree/src/arm/nxp/mxs/imx28-tx28.dts | 6 +- .../device-tree/src/arm/nxp/mxs/imx28-xea.dts | 1 + sys/contrib/device-tree/src/arm/nxp/mxs/imx28.dtsi | 6 +- sys/contrib/device-tree/src/arm/nxp/vf/vfxxx.dtsi | 27 +- .../arm/qcom/qcom-apq8026-samsung-matisse-wifi.dts | 4 +- .../src/arm/qcom/qcom-apq8060-dragonboard.dts | 1 - .../src/arm/qcom/qcom-apq8064-asus-nexus7-flo.dts | 1 - .../src/arm/qcom/qcom-apq8064-ifc6410.dts | 1 - .../device-tree/src/arm/qcom/qcom-apq8064.dtsi | 1 - .../src/arm/qcom/qcom-ipq8064-rb3011.dts | 55 +- .../src/arm/qcom/qcom-ipq8064-v1.0.dtsi | 122 +- .../device-tree/src/arm/qcom/qcom-mdm9615.dtsi | 14 +- .../device-tree/src/arm/qcom/qcom-msm8226.dtsi | 65 + .../device-tree/src/arm/qcom/qcom-msm8974.dtsi | 32 + .../device-tree/src/arm/qcom/qcom-sdx55.dtsi | 32 +- .../device-tree/src/arm/qcom/qcom-sdx65-mtp.dts | 4 + .../device-tree/src/arm/qcom/qcom-sdx65.dtsi | 7 +- .../src/arm/renesas/r7s72100-genmai.dts | 82 +- .../src/arm/renesas/r7s72100-gr-peach.dts | 6 - .../src/arm/renesas/r7s72100-rskrza1.dts | 71 +- .../device-tree/src/arm/renesas/r7s72100.dtsi | 7 + .../src/arm/renesas/r7s9210-rza2mevb.dts | 5 - .../src/arm/renesas/r8a73a4-ape6evm.dts | 2 +- .../device-tree/src/arm/renesas/r8a7778-bockw.dts | 34 + .../device-tree/src/arm/renesas/r8a7779-marzen.dts | 32 +- .../device-tree/src/arm/renesas/r8a7779.dtsi | 7 + .../device-tree/src/arm/renesas/r8a7790-lager.dts | 5 - .../src/arm/renesas/r8a7791-koelsch.dts | 5 - .../src/arm/renesas/r8a7792-blanche.dts | 34 +- .../device-tree/src/arm/renesas/r8a7792-wheat.dts | 34 +- .../device-tree/src/arm/renesas/r8a7792.dtsi | 7 + .../device-tree/src/arm/renesas/r8a7794-alt.dts | 5 - .../device-tree/src/arm/rockchip/rk3128.dtsi | 63 +- .../device-tree/src/arm/rockchip/rk322x.dtsi | 6 +- .../src/arm/rockchip/rv1126-edgeble-neu2-io.dts | 4 + .../src/arm/rockchip/rv1126-pinctrl.dtsi | 16 + .../device-tree/src/arm/rockchip/rv1126.dtsi | 22 + .../device-tree/src/arm/samsung/exynos4210.dtsi | 12 +- .../src/arm/samsung/exynos4212-tab3.dtsi | 41 +- .../src/arm/samsung/exynos4412-galaxy-s3.dtsi | 43 +- .../src/arm/samsung/exynos4412-midas.dtsi | 8 +- .../src/arm/samsung/exynos4412-n710x.dts | 39 +- .../src/arm/samsung/exynos4412-odroidu3.dts | 13 +- .../src/arm/samsung/exynos4412-odroidx.dts | 9 +- .../arm/samsung/exynos5422-odroidxu3-audio.dtsi | 19 +- .../src/arm/samsung/exynos5422-odroidxu4.dts | 2 +- .../src/arm/samsung/s5pv210-fascinate4g.dts | 33 +- .../src/arm/samsung/s5pv210-galaxys.dts | 37 +- .../device-tree/src/arm/st/spear1310-evb.dts | 2 - .../device-tree/src/arm/st/spear1340-evb.dts | 2 - .../src/arm/st/ste-href-tvk1281618-r2.dtsi | 4 +- .../device-tree/src/arm/st/stih407-family.dtsi | 1 - .../device-tree/src/arm/st/stih418-b2264.dts | 16 +- .../device-tree/src/arm/st/stm32746g-eval.dts | 3 +- .../device-tree/src/arm/st/stm32f7-pinctrl.dtsi | 23 +- .../device-tree/src/arm/st/stm32f746-disco.dts | 3 +- .../device-tree/src/arm/st/stm32f769-disco.dts | 3 +- sys/contrib/device-tree/src/arm/st/stm32mp131.dtsi | 19 + .../device-tree/src/arm/st/stm32mp15-pinctrl.dtsi | 342 ++++ .../src/arm/st/stm32mp157c-osd32mp1-red.dts | 225 +++ .../src/arm/st/stm32mp15xc-lxa-tac.dtsi | 4 - .../device-tree/src/arm/st/stm32mp15xx-osd32.dtsi | 6 - .../src/arm/ti/omap/am335x-pocketbeagle.dts | 57 +- .../device-tree/src/arm/ti/omap/am33xx.dtsi | 1 + .../device-tree/src/arm/ti/omap/am3517-evm.dts | 35 +- .../device-tree/src/arm/ti/omap/am3517.dtsi | 1 + sys/contrib/device-tree/src/arm/ti/omap/dra7.dtsi | 2 +- .../src/arm/ti/omap/motorola-mapphone-common.dtsi | 20 +- .../src/arm/ti/omap/omap3-devkit8000-common.dtsi | 4 +- .../device-tree/src/arm/ti/omap/omap3-gta04.dtsi | 2 +- .../src/arm/ti/omap/omap4-epson-embt2ws.dts | 55 +- .../sun50i-h616-bigtreetech-cb1-manta.dts | 35 + .../allwinner/sun50i-h616-bigtreetech-cb1.dtsi | 138 ++ .../arm64/allwinner/sun50i-h616-bigtreetech-pi.dts | 63 + .../arm64/allwinner/sun50i-h616-orangepi-zero.dtsi | 3 - .../arm64/allwinner/sun50i-h616-orangepi-zero2.dts | 3 + .../src/arm64/allwinner/sun50i-h616.dtsi | 7 + .../arm64/allwinner/sun50i-h618-orangepi-zero3.dts | 2 + .../src/arm64/amd/amd-overdrive-rev-b0.dts | 1 - .../src/arm64/amd/amd-overdrive-rev-b1.dts | 1 - .../device-tree/src/arm64/amd/elba-16core.dtsi | 197 ++ .../src/arm64/amd/elba-asic-common.dtsi | 70 + .../device-tree/src/arm64/amd/elba-asic.dts | 28 + .../src/arm64/amd/elba-flash-parts.dtsi | 117 ++ sys/contrib/device-tree/src/arm64/amd/elba.dtsi | 191 ++ .../device-tree/src/arm64/amlogic/amlogic-t7.dtsi | 28 + .../src/arm64/amlogic/meson-a1-ad402.dts | 147 ++ .../device-tree/src/arm64/amlogic/meson-a1.dtsi | 369 +++- .../device-tree/src/arm64/amlogic/meson-axg.dtsi | 13 + .../device-tree/src/arm64/amlogic/meson-g12.dtsi | 40 +- .../src/arm64/amlogic/meson-g12a-u200.dts | 341 ++++ .../src/arm64/amlogic/meson-g12a-x96-max.dts | 10 +- .../amlogic/meson-g12b-a311d-libretech-cc.dts | 121 ++ .../src/arm64/amlogic/meson-g12b-gtking.dts | 10 +- .../src/arm64/amlogic/meson-g12b-ugoos-am6.dts | 10 +- .../src/arm64/amlogic/meson-gxbb-p200.dts | 60 + .../src/arm64/amlogic/meson-gxbb-p201.dts | 39 + .../arm64/amlogic/meson-libretech-cottonwood.dtsi | 614 ++++++ .../src/arm64/amlogic/meson-s4-s805x2-aq222.dts | 6 + .../device-tree/src/arm64/amlogic/meson-s4.dtsi | 20 + .../amlogic/meson-sm1-s905d3-libretech-cc.dts | 89 + .../device-tree/src/arm64/apm/apm-shadowcat.dtsi | 2 +- .../device-tree/src/arm64/apm/apm-storm.dtsi | 2 +- .../device-tree/src/arm64/bitmain/bm1880.dtsi | 6 +- .../src/arm64/broadcom/northstar2/ns2-svk.dts | 2 - .../src/arm64/exynos/exynos5433-tm2-common.dtsi | 27 +- .../device-tree/src/arm64/exynos/exynos7.dtsi | 1 - .../src/arm64/exynos/exynos850-e850-96.dts | 73 + .../device-tree/src/arm64/exynos/exynos850.dtsi | 30 + .../freescale/fsl-ls1043a-tqmls1043a-mbls10xxa.dts | 49 + .../arm64/freescale/fsl-ls1043a-tqmls1043a.dtsi | 32 + .../src/arm64/freescale/fsl-ls1043a.dtsi | 14 - .../freescale/fsl-ls1046a-tqmls1046a-mbls10xxa.dts | 56 + .../arm64/freescale/fsl-ls1046a-tqmls1046a.dtsi | 42 + .../freescale/fsl-ls1088a-tqmls1088a-mbls10xxa.dts | 64 + .../arm64/freescale/fsl-ls1088a-tqmls1088a.dtsi | 42 + .../src/arm64/freescale/fsl-ls208xa.dtsi | 46 +- .../src/arm64/freescale/fsl-lx2160a.dtsi | 7 + .../src/arm64/freescale/fsl-lx2162a-clearfog.dts | 376 ++++ .../src/arm64/freescale/fsl-lx2162a-sr-som.dtsi | 73 + .../arm64/freescale/imx8-apalis-ixora-v1.1.dtsi | 1 - .../arm64/freescale/imx8-apalis-ixora-v1.2.dtsi | 1 - .../src/arm64/freescale/imx8-apalis-v1.1.dtsi | 16 +- .../src/arm64/freescale/imx8-ss-audio.dtsi | 98 +- .../src/arm64/freescale/imx8-ss-conn.dtsi | 42 +- .../src/arm64/freescale/imx8-ss-dma.dtsi | 117 +- .../src/arm64/freescale/imx8-ss-img.dtsi | 36 +- .../src/arm64/freescale/imx8-ss-lsio.dtsi | 33 +- .../src/arm64/freescale/imx8dxl-evk.dts | 2 - .../src/arm64/freescale/imx8dxl-ss-adma.dtsi | 38 +- .../src/arm64/freescale/imx8dxl-ss-conn.dtsi | 6 +- .../device-tree/src/arm64/freescale/imx8dxl.dtsi | 8 +- .../arm64/freescale/imx8mm-beacon-baseboard.dtsi | 76 +- .../src/arm64/freescale/imx8mm-ddr4-evk.dts | 1 - .../device-tree/src/arm64/freescale/imx8mm-phg.dts | 5 + .../src/arm64/freescale/imx8mm-phygate-tauri-l.dts | 489 +++++ .../imx8mm-tqma8mqml-mba8mx-lvds-tm070jvhg33.dtso | 45 + .../src/arm64/freescale/imx8mm-tqma8mqml.dtsi | 5 + .../src/arm64/freescale/imx8mm-venice-gw71xx.dtsi | 1 - .../src/arm64/freescale/imx8mm-venice-gw72xx.dtsi | 1 - .../src/arm64/freescale/imx8mm-venice-gw73xx.dtsi | 11 +- .../src/arm64/freescale/imx8mm-venice-gw7901.dts | 4 +- .../src/arm64/freescale/imx8mm-venice-gw7902.dts | 3 +- .../src/arm64/freescale/imx8mm-venice-gw7903.dts | 3 +- .../src/arm64/freescale/imx8mm-venice-gw7904.dts | 3 +- .../device-tree/src/arm64/freescale/imx8mm.dtsi | 1 + .../arm64/freescale/imx8mn-beacon-baseboard.dtsi | 38 + .../src/arm64/freescale/imx8mn-bsh-smm-s2.dts | 1 - .../src/arm64/freescale/imx8mn-evk.dtsi | 2 - .../imx8mn-tqma8mqnl-mba8mx-lvds-tm070jvhg33.dtso | 45 + .../src/arm64/freescale/imx8mn-tqma8mqnl.dtsi | 5 + .../src/arm64/freescale/imx8mn-venice-gw7902.dts | 3 +- .../device-tree/src/arm64/freescale/imx8mn.dtsi | 1 + .../src/arm64/freescale/imx8mp-beacon-kit.dts | 65 +- .../arm64/freescale/imx8mp-data-modul-edm-sbc.dts | 2 + .../src/arm64/freescale/imx8mp-debix-model-a.dts | 3 - .../arm64/freescale/imx8mp-debix-som-a-bmb-08.dts | 2 +- .../src/arm64/freescale/imx8mp-dhcom-pdk2.dts | 4 +- .../src/arm64/freescale/imx8mp-dhcom-pdk3.dts | 70 +- .../src/arm64/freescale/imx8mp-dhcom-som.dtsi | 154 +- .../arm64/freescale/imx8mp-phyboard-pollux-rdk.dts | 154 ++ .../src/arm64/freescale/imx8mp-phycore-som.dtsi | 13 + .../src/arm64/freescale/imx8mp-venice-gw71xx.dtsi | 1 - .../src/arm64/freescale/imx8mp-venice-gw72xx.dtsi | 1 - .../src/arm64/freescale/imx8mp-venice-gw73xx.dtsi | 10 +- .../freescale/imx8mp-venice-gw74xx-imx219.dtso | 80 + .../src/arm64/freescale/imx8mp-venice-gw74xx.dts | 2 - .../src/arm64/freescale/imx8mp-verdin.dtsi | 1 - .../device-tree/src/arm64/freescale/imx8mp.dtsi | 150 +- .../src/arm64/freescale/imx8mq-librem5.dtsi | 7 +- .../src/arm64/freescale/imx8mq-nitrogen.dts | 14 +- .../src/arm64/freescale/imx8mq-pico-pi.dts | 2 +- .../src/arm64/freescale/imx8mq-thor96.dts | 2 +- .../imx8mq-tqma8mq-mba8mx-lvds-tm070jvhg33.dtso | 49 + .../src/arm64/freescale/imx8mq-zii-ultra.dtsi | 2 +- .../device-tree/src/arm64/freescale/imx8mq.dtsi | 108 +- .../src/arm64/freescale/imx8qm-apalis.dtsi | 1 - .../device-tree/src/arm64/freescale/imx8qm-mek.dts | 26 + .../src/arm64/freescale/imx8qm-ss-dma.dtsi | 67 + .../src/arm64/freescale/imx8qm-ss-img.dtsi | 2 +- .../src/arm64/freescale/imx8qxp-mek.dts | 26 + .../device-tree/src/arm64/freescale/imx8ulp.dtsi | 29 +- .../src/arm64/freescale/imx8x-colibri-iris-v2.dtsi | 4 +- .../src/arm64/freescale/imx93-11x11-evk.dts | 15 + .../arm64/freescale/imx93-tqma9352-mba93xxla.dts | 2 +- .../device-tree/src/arm64/freescale/imx93.dtsi | 169 +- .../device-tree/src/arm64/freescale/mba8mx.dtsi | 93 + .../arm64/freescale/tqmls104xa-mbls10xxa-fman.dtsi | 104 + .../arm64/freescale/tqmls1088a-mbls10xxa-mc.dtsi | 146 ++ .../src/arm64/freescale/tqmls10xxa-mbls10xxa.dtsi | 136 ++ .../src/arm64/freescale/tqmls10xxa.dtsi | 58 + .../src/arm64/marvell/ac5-98dx25xx.dtsi | 4 +- .../src/arm64/marvell/armada-3720-eDPU.dts | 47 + .../src/arm64/marvell/armada-3720-espressobin.dtsi | 2 +- .../src/arm64/marvell/armada-3720-uDPU.dtsi | 8 +- .../device-tree/src/arm64/marvell/cn9130-crb.dtsi | 4 +- .../device-tree/src/arm64/marvell/cn9130-db.dtsi | 4 +- .../src/arm64/mediatek/mt6795-sony-xperia-m5.dts | 101 + .../device-tree/src/arm64/mediatek/mt6795.dtsi | 253 ++- .../src/arm64/mediatek/mt7622-bananapi-bpi-r64.dts | 8 +- .../device-tree/src/arm64/mediatek/mt7622-rfb1.dts | 8 +- .../src/arm64/mediatek/mt7986a-bananapi-bpi-r3.dts | 12 +- .../device-tree/src/arm64/mediatek/mt7986a.dtsi | 24 +- .../device-tree/src/arm64/mediatek/mt8173-evb.dts | 4 +- .../device-tree/src/arm64/mediatek/mt8183-evb.dts | 52 +- .../src/arm64/mediatek/mt8183-kukui-jacuzzi.dtsi | 8 +- .../src/arm64/mediatek/mt8183-kukui.dtsi | 126 +- .../src/arm64/mediatek/mt8183-pumpkin.dts | 12 +- .../device-tree/src/arm64/mediatek/mt8183.dtsi | 242 +-- .../device-tree/src/arm64/mediatek/mt8186.dtsi | 44 +- .../arm64/mediatek/mt8192-asurada-hayato-r1.dts | 19 +- .../mediatek/mt8192-asurada-hayato-r5-sku2.dts | 64 + .../arm64/mediatek/mt8192-asurada-spherion-r0.dts | 19 +- .../arm64/mediatek/mt8192-asurada-spherion-r4.dts | 77 + .../src/arm64/mediatek/mt8192-asurada.dtsi | 30 +- .../src/arm64/mediatek/mt8195-cherry.dtsi | 35 +- .../device-tree/src/arm64/mediatek/mt8195-demo.dts | 2 +- .../device-tree/src/arm64/mediatek/mt8195.dtsi | 6 +- .../device-tree/src/arm64/mediatek/mt8365.dtsi | 210 ++ .../src/arm64/mediatek/mt8395-genio-1200-evk.dts | 902 +++++++++ .../device-tree/src/arm64/nvidia/tegra132.dtsi | 2 + .../src/arm64/nvidia/tegra210-smaug.dts | 66 + .../src/arm64/nvidia/tegra234-p3701-0008.dtsi | 33 + .../src/arm64/nvidia/tegra234-p3701.dtsi | 53 + .../nvidia/tegra234-p3737-0000+p3701-0000.dts | 1 + .../src/arm64/nvidia/tegra234-p3767.dtsi | 33 +- .../nvidia/tegra234-p3768-0000+p3767-0000.dts | 13 - .../src/arm64/nvidia/tegra234-p3768-0000.dtsi | 1 + .../device-tree/src/arm64/nvidia/tegra234.dtsi | 52 +- .../src/arm64/qcom/apq8016-sbc-usb-host.dtso | 8 + .../device-tree/src/arm64/qcom/apq8016-sbc.dts | 30 +- .../device-tree/src/arm64/qcom/apq8039-t2.dts | 8 + .../device-tree/src/arm64/qcom/apq8096-db820c.dts | 2 +- .../device-tree/src/arm64/qcom/ipq5018.dtsi | 8 + .../device-tree/src/arm64/qcom/ipq5332-rdp468.dts | 23 + .../device-tree/src/arm64/qcom/ipq5332.dtsi | 57 +- .../device-tree/src/arm64/qcom/ipq6018.dtsi | 36 +- .../device-tree/src/arm64/qcom/ipq8074.dtsi | 69 +- .../device-tree/src/arm64/qcom/ipq9574.dtsi | 2 +- .../src/arm64/qcom/msm8916-acer-a1-724.dts | 12 + .../src/arm64/qcom/msm8916-alcatel-idol347.dts | 12 + .../src/arm64/qcom/msm8916-asus-z00l.dts | 12 + .../src/arm64/qcom/msm8916-gplus-fl8005a.dts | 12 + .../src/arm64/qcom/msm8916-huawei-g7.dts | 12 + .../src/arm64/qcom/msm8916-longcheer-l8150.dts | 21 +- .../src/arm64/qcom/msm8916-longcheer-l8910.dts | 12 + .../arm64/qcom/msm8916-samsung-a2015-common.dtsi | 12 + .../src/arm64/qcom/msm8916-samsung-a3u-eur.dts | 4 + .../src/arm64/qcom/msm8916-samsung-a5u-eur.dts | 4 + .../arm64/qcom/msm8916-samsung-e2015-common.dtsi | 4 + .../src/arm64/qcom/msm8916-samsung-gt5-common.dtsi | 12 + .../src/arm64/qcom/msm8916-samsung-gt510.dts | 86 + .../src/arm64/qcom/msm8916-samsung-gt58.dts | 64 + .../src/arm64/qcom/msm8916-samsung-j5-common.dtsi | 51 + .../src/arm64/qcom/msm8916-samsung-j5.dts | 5 + .../src/arm64/qcom/msm8916-samsung-j5x.dts | 15 + .../src/arm64/qcom/msm8916-samsung-serranove.dts | 12 + .../device-tree/src/arm64/qcom/msm8916-ufi.dtsi | 33 +- .../src/arm64/qcom/msm8916-wingtech-wt88047.dts | 12 + .../device-tree/src/arm64/qcom/msm8916.dtsi | 41 +- .../src/arm64/qcom/msm8939-longcheer-l9100.dts | 334 ++++ .../src/arm64/qcom/msm8939-samsung-a7.dts | 4 + .../qcom/msm8939-sony-xperia-kanuti-tulip.dts | 8 + .../device-tree/src/arm64/qcom/msm8939.dtsi | 39 +- .../device-tree/src/arm64/qcom/msm8976.dtsi | 15 +- .../src/arm64/qcom/msm8992-xiaomi-libra.dts | 6 +- .../src/arm64/qcom/msm8994-msft-lumia-octagon.dtsi | 1 + .../device-tree/src/arm64/qcom/msm8994.dtsi | 2 +- .../src/arm64/qcom/msm8996-oneplus-common.dtsi | 2 +- .../src/arm64/qcom/msm8996-xiaomi-common.dtsi | 4 +- .../device-tree/src/arm64/qcom/msm8996.dtsi | 3 +- .../src/arm64/qcom/msm8998-fxtec-pro1.dts | 2 +- .../device-tree/src/arm64/qcom/msm8998-mtp.dts | 2 +- .../src/arm64/qcom/msm8998-oneplus-common.dtsi | 2 +- .../src/arm64/qcom/msm8998-xiaomi-sagit.dts | 2 +- .../device-tree/src/arm64/qcom/msm8998.dtsi | 33 +- sys/contrib/device-tree/src/arm64/qcom/pm6150.dtsi | 16 + .../device-tree/src/arm64/qcom/pm7250b.dtsi | 14 +- .../device-tree/src/arm64/qcom/pm8150b.dtsi | 40 + .../device-tree/src/arm64/qcom/pm8150l.dtsi | 10 + .../device-tree/src/arm64/qcom/pm8350c.dtsi | 6 + sys/contrib/device-tree/src/arm64/qcom/pm8916.dtsi | 3 - .../device-tree/src/arm64/qcom/pmr735d_a.dtsi | 59 + .../device-tree/src/arm64/qcom/pmr735d_b.dtsi | 59 + .../src/arm64/qcom/qcm6490-fairphone-fp5.dts | 667 +++++++ .../device-tree/src/arm64/qcom/qrb2210-rb1.dts | 147 +- .../device-tree/src/arm64/qcom/qrb5165-rb5.dts | 125 +- .../device-tree/src/arm64/qcom/sa8775p-ride.dts | 2 + .../device-tree/src/arm64/qcom/sa8775p.dtsi | 8 + .../src/arm64/qcom/sc7180-trogdor-coachz.dtsi | 2 +- .../src/arm64/qcom/sc7180-trogdor-homestar.dtsi | 3 + .../src/arm64/qcom/sc7180-trogdor-kingoftown.dts | 13 +- .../sc7180-trogdor-lazor-limozeen-nots-r10.dts | 29 + .../qcom/sc7180-trogdor-lazor-limozeen-nots-r5.dts | 1 + .../qcom/sc7180-trogdor-lazor-limozeen-nots-r9.dts | 7 +- .../qcom/sc7180-trogdor-lazor-limozeen-r10.dts | 45 + .../qcom/sc7180-trogdor-lazor-limozeen-r4.dts | 2 + .../qcom/sc7180-trogdor-lazor-limozeen-r9.dts | 11 +- .../src/arm64/qcom/sc7180-trogdor-lazor-r1.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-lazor-r10-kb.dts | 23 + .../arm64/qcom/sc7180-trogdor-lazor-r10-lte.dts | 27 + .../src/arm64/qcom/sc7180-trogdor-lazor-r10.dts | 19 + .../src/arm64/qcom/sc7180-trogdor-lazor-r3-kb.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-lazor-r3-lte.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-lazor-r3.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-lazor-r9-kb.dts | 5 +- .../src/arm64/qcom/sc7180-trogdor-lazor-r9-lte.dts | 5 +- .../src/arm64/qcom/sc7180-trogdor-lazor-r9.dts | 5 +- .../src/arm64/qcom/sc7180-trogdor-lazor.dtsi | 1 + .../qcom/sc7180-trogdor-pazquel-lte-parade.dts | 1 + .../arm64/qcom/sc7180-trogdor-pazquel-lte-ti.dts | 1 + .../arm64/qcom/sc7180-trogdor-pazquel-parade.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-pazquel-ti.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-pazquel360.dtsi | 13 +- .../src/arm64/qcom/sc7180-trogdor-pompom.dtsi | 2 + .../arm64/qcom/sc7180-trogdor-quackingstick.dtsi | 2 + .../src/arm64/qcom/sc7180-trogdor-r1.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-rt5682i-sku.dtsi | 38 + .../src/arm64/qcom/sc7180-trogdor-rt5682s-sku.dtsi | 38 + ...sc7180-trogdor-wormdingler-rev1-boe-rt5682s.dts | 17 +- .../qcom/sc7180-trogdor-wormdingler-rev1-boe.dts | 1 + ...sc7180-trogdor-wormdingler-rev1-inx-rt5682s.dts | 15 +- .../qcom/sc7180-trogdor-wormdingler-rev1-inx.dts | 1 + .../src/arm64/qcom/sc7180-trogdor-wormdingler.dtsi | 1 + .../device-tree/src/arm64/qcom/sc7180-trogdor.dtsi | 27 - sys/contrib/device-tree/src/arm64/qcom/sc7180.dtsi | 187 +- .../src/arm64/qcom/sc7280-chrome-common.dtsi | 24 + .../device-tree/src/arm64/qcom/sc7280-crd-r3.dts | 4 + sys/contrib/device-tree/src/arm64/qcom/sc7280.dtsi | 239 +-- .../src/arm64/qcom/sc8180x-lenovo-flex-5g.dts | 3 +- .../device-tree/src/arm64/qcom/sc8180x-primus.dts | 3 +- .../device-tree/src/arm64/qcom/sc8180x.dtsi | 177 +- sys/contrib/device-tree/src/arm64/qcom/sdm630.dtsi | 68 +- sys/contrib/device-tree/src/arm64/qcom/sdm670.dtsi | 3 +- .../device-tree/src/arm64/qcom/sdm845-cheza.dtsi | 32 +- .../src/arm64/qcom/sdm845-lg-common.dtsi | 2 +- .../device-tree/src/arm64/qcom/sdm845-mtp.dts | 90 +- .../src/arm64/qcom/sdm845-oneplus-common.dtsi | 2 +- .../arm64/qcom/sdm845-sony-xperia-tama-akari.dts | 170 ++ .../qcom/sdm845-sony-xperia-tama-akatsuki.dts | 168 ++ .../arm64/qcom/sdm845-sony-xperia-tama-apollo.dts | 170 ++ .../src/arm64/qcom/sdm845-sony-xperia-tama.dtsi | 91 + .../arm64/qcom/sdm845-xiaomi-beryllium-common.dtsi | 2 +- .../src/arm64/qcom/sdm845-xiaomi-polaris.dts | 2 +- sys/contrib/device-tree/src/arm64/qcom/sdm845.dtsi | 130 +- .../device-tree/src/arm64/qcom/sdx75-idp.dts | 2 +- .../src/arm64/qcom/sm4250-oneplus-billie2.dts | 2 +- .../src/arm64/qcom/sm6115-fxtec-pro1x.dts | 2 +- .../src/arm64/qcom/sm6115p-lenovo-j606f.dts | 2 +- .../arm64/qcom/sm6125-sony-xperia-seine-pdx201.dts | 59 + .../src/arm64/qcom/sm6125-xiaomi-laurel-sprout.dts | 4 +- sys/contrib/device-tree/src/arm64/qcom/sm6125.dtsi | 257 ++- .../src/arm64/qcom/sm7125-xiaomi-common.dtsi | 423 +++++ .../src/arm64/qcom/sm7125-xiaomi-joyeuse.dts | 16 + sys/contrib/device-tree/src/arm64/qcom/sm7125.dtsi | 16 + .../src/arm64/qcom/sm7225-fairphone-fp4.dts | 35 +- sys/contrib/device-tree/src/arm64/qcom/sm8150.dtsi | 117 +- .../src/arm64/qcom/sm8250-sony-xperia-edo.dtsi | 5 + sys/contrib/device-tree/src/arm64/qcom/sm8250.dtsi | 554 +++++- .../device-tree/src/arm64/qcom/sm8350-hdk.dts | 81 + .../device-tree/src/arm64/qcom/sm8350-mtp.dts | 1 + sys/contrib/device-tree/src/arm64/qcom/sm8350.dtsi | 5 +- .../device-tree/src/arm64/qcom/sm8450-hdk.dts | 24 +- .../device-tree/src/arm64/qcom/sm8450-qrd.dts | 1 + .../src/arm64/qcom/sm8450-sony-xperia-nagara.dtsi | 2 +- sys/contrib/device-tree/src/arm64/qcom/sm8450.dtsi | 90 +- .../device-tree/src/arm64/qcom/sm8550-mtp.dts | 7 +- .../device-tree/src/arm64/qcom/sm8550-qrd.dts | 50 +- sys/contrib/device-tree/src/arm64/qcom/sm8550.dtsi | 48 +- .../arm64/renesas/beacon-renesom-baseboard.dtsi | 2 +- .../device-tree/src/arm64/renesas/ebisu.dtsi | 2 +- .../device-tree/src/arm64/renesas/hihope-rev4.dtsi | 2 +- .../device-tree/src/arm64/renesas/r8a774a1.dtsi | 4 +- .../device-tree/src/arm64/renesas/r8a774b1.dtsi | 4 +- .../device-tree/src/arm64/renesas/r8a774c0.dtsi | 2 +- .../device-tree/src/arm64/renesas/r8a774e1.dtsi | 4 +- .../device-tree/src/arm64/renesas/r8a77951.dtsi | 4 +- .../device-tree/src/arm64/renesas/r8a77960.dtsi | 4 +- .../device-tree/src/arm64/renesas/r8a77961.dtsi | 4 +- .../device-tree/src/arm64/renesas/r8a77965.dtsi | 4 +- .../src/arm64/renesas/r8a77990-ebisu.dts | 2 +- .../device-tree/src/arm64/renesas/r8a77990.dtsi | 2 +- .../device-tree/src/arm64/renesas/r8a77995.dtsi | 2 +- .../src/arm64/renesas/r8a779f0-spider-cpu.dtsi | 24 + .../device-tree/src/arm64/renesas/r8a779f0.dtsi | 134 ++ .../src/arm64/renesas/r8a779f4-s4sk.dts | 240 +++ .../device-tree/src/arm64/renesas/r8a779f4.dtsi | 12 + .../device-tree/src/arm64/renesas/r9a08g045.dtsi | 170 ++ .../src/arm64/renesas/r9a08g045s33-smarc.dts | 18 + .../src/arm64/renesas/r9a08g045s33.dtsi | 14 + .../src/arm64/renesas/rz-smarc-common.dtsi | 14 +- .../device-tree/src/arm64/renesas/rzg2l-smarc.dtsi | 20 + .../src/arm64/renesas/rzg2lc-smarc.dtsi | 20 + .../src/arm64/renesas/rzg2ul-smarc.dtsi | 24 + .../src/arm64/renesas/rzg3s-smarc-som.dtsi | 142 ++ .../device-tree/src/arm64/renesas/rzg3s-smarc.dtsi | 28 + .../src/arm64/renesas/salvator-common.dtsi | 2 +- .../renesas/ulcb-audio-graph-card-mix+split.dtsi | 16 +- .../src/arm64/renesas/ulcb-audio-graph-card.dtsi | 17 +- .../renesas/ulcb-audio-graph-card2-mix+split.dtsi | 13 +- .../src/arm64/renesas/ulcb-audio-graph-card2.dtsi | 4 +- .../ulcb-kf-audio-graph-card-mix+split.dtsi | 57 +- .../arm64/renesas/ulcb-kf-audio-graph-card.dtsi | 27 +- .../ulcb-kf-audio-graph-card2-mix+split.dtsi | 108 +- .../arm64/renesas/ulcb-kf-audio-graph-card2.dtsi | 14 +- .../ulcb-kf-simple-audio-card-mix+split.dtsi | 152 +- .../arm64/renesas/ulcb-kf-simple-audio-card.dtsi | 77 +- .../renesas/ulcb-simple-audio-card-mix+split.dtsi | 8 +- .../src/arm64/renesas/ulcb-simple-audio-card.dtsi | 8 +- .../device-tree/src/arm64/renesas/ulcb.dtsi | 2 +- .../src/arm64/rockchip/px30-ringneck-haikou.dts | 2 +- .../device-tree/src/arm64/rockchip/rk3328.dtsi | 2 +- .../src/arm64/rockchip/rk3399-gru-chromebook.dtsi | 3 +- .../src/arm64/rockchip/rk3399-gru-scarlet-dumo.dts | 4 +- .../device-tree/src/arm64/rockchip/rk3399-gru.dtsi | 1 + .../device-tree/src/arm64/rockchip/rk3399.dtsi | 7 +- .../src/arm64/rockchip/rk3566-powkiddy-rgb30.dts | 161 ++ .../src/arm64/rockchip/rk3568-rock-3a.dts | 4 + .../device-tree/src/arm64/rockchip/rk356x.dtsi | 9 +- .../src/arm64/rockchip/rk3588-evb1-v10.dts | 136 ++ .../src/arm64/rockchip/rk3588-nanopc-t6.dts | 28 + .../src/arm64/rockchip/rk3588-orangepi-5-plus.dts | 848 +++++++++ .../src/arm64/rockchip/rk3588-quartzpro64.dts | 1137 +++++++++++ .../src/arm64/rockchip/rk3588-rock-5b.dts | 145 ++ .../src/arm64/rockchip/rk3588-turing-rk1.dts | 21 + .../src/arm64/rockchip/rk3588-turing-rk1.dtsi | 614 ++++++ .../src/arm64/rockchip/rk3588s-indiedroid-nova.dts | 84 + .../src/arm64/rockchip/rk3588s-orangepi-5.dts | 662 +++++++ .../src/arm64/rockchip/rk3588s-pinctrl.dtsi | 46 +- *** 985 LINES SKIPPED *** From nobody Mon May 6 08:46:32 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXw4T0GB2z5JgM3; Mon, 06 May 2024 08:46: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 4VXw4S6y9Hz4yj3; Mon, 6 May 2024 08:46:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985193; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9AjWuad0xJjEJPSj/G+GQFCk7Xd3n/d3RLGs56xeF14=; b=gEfYuXYZeUzDj5z+K4Vjcd/sNPZyv5Q/z5XaTon+N0x/AYpZNxsplzo3RlLQlq04x4rFh+ +Kr5zPcXe6M9Kba+FIk7JMsoUD2dDVTVLcMfuzhg0BWJImBtuAkvDkckn9YJRN6zU9ffbk ZYDQeEFmmewvNs0cn8wC6IdAB+Byjl644U0UFfqqCmekZO5AyjegQ1UG0hiSjEaua06Lt4 +9xxLvPCvr53IpGXEf4APO64ejHw8IwQb3wdxTHzLFE8JBrRZ7ctvxCl1g7GcoxVzRKB3R qqaco4QEtXEd8v15F+ndVfub9bVWK/lRnlbmzjFnDKikZK+sQjotqaicf14X0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1714985193; a=rsa-sha256; cv=none; b=OVyKqaUhxbK8frrttQ14wW+G1mFmTkDQgRrcq+no2R5jGPI52nnwSoDJbP5elyZ9VBa+H9 ZwGFczViROFSdg9AUqeQP7AyqPQkYj/bvEmq9DDLB2pT+nG7VjnWJxaeW28Fqoz17FU1K9 1yO9oo+YWoieDuJg/SQ3fL6gqy9M+f6pVTi4iEj8eHj5b8ZwMJcYotqXbCwNtNvywHnqL5 kz4b9Xnn7sNGQFBH4sbGDDQz0iAHOMrNAOWX3IG1T7LaGxtGVTMpN7u86Vnktni7A9nFGf mU3vHtBaZTL4DfpYeHnjK9yL9OsfXFIBlbqjSFgTZ5zlEXGod2UVtmms0OrdNw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985193; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9AjWuad0xJjEJPSj/G+GQFCk7Xd3n/d3RLGs56xeF14=; b=uNkDiX8zHbx7sAK8DXykf1iWpN/7xCofmf5C77XwP1eVtmhaoJX105HS75VhtIk3BJ8y3p UTTBKW/vahCQ93G5fmEklWOwwk++gOX4CyZAhrCcaO1zUiFEhFiAqMnaHoOViua8wIAs/D hW43zOao8ncnvghfNDj+tXDFz2abtgBuP83YXuBghUkjtU0rfSO28viCDLbVlKuEvxi7wm 7XI1PA3xJyIni8yycqATvZAG6z5i4AMjr5ilJmrZRLB9eEIgjzUswaWlj2dyiCM8ZG9ttb 1LoSrCF6aizbcu04gnKoMrG5tfxhf8G8y6PvAdjTg9v8jmJJ6ZZhq9Fwo/AR9g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VXw4S6Z6wzr0V; Mon, 6 May 2024 08:46: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 4468kWSH059585; Mon, 6 May 2024 08:46:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4468kWCk059582; Mon, 6 May 2024 08:46:32 GMT (envelope-from git) Date: Mon, 6 May 2024 08:46:32 GMT Message-Id: <202405060846.4468kWCk059582@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: c0b8b8188edd - main - dts: Bump the freebsd branding version to 6.7 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c0b8b8188edd83575153a320e0d9fd30cc5534c2 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=c0b8b8188edd83575153a320e0d9fd30cc5534c2 commit c0b8b8188edd83575153a320e0d9fd30cc5534c2 Author: Emmanuel Vadot AuthorDate: 2024-05-06 08:46:20 +0000 Commit: Emmanuel Vadot CommitDate: 2024-05-06 08:46:20 +0000 dts: Bump the freebsd branding version to 6.7 Sponsored by: Beckhoff Automation GmbH & Co. KG --- sys/dts/freebsd-compatible.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dts/freebsd-compatible.dts b/sys/dts/freebsd-compatible.dts index b784a75b9f73..c9b8ac5533e3 100644 --- a/sys/dts/freebsd-compatible.dts +++ b/sys/dts/freebsd-compatible.dts @@ -1,3 +1,3 @@ / { - freebsd,dts-version = "6.6"; + freebsd,dts-version = "6.7"; }; From nobody Mon May 6 08:47:10 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXw5B5wX1z5JgkM; Mon, 06 May 2024 08:47: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 4VXw5B5f1hz4yhJ; Mon, 6 May 2024 08:47:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985230; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CXaAX5KmU4lpvCqllxcrd2Rx0YSts+5xuKJr2dSVfuo=; b=fn1/e8a4xf/Aw1eihkshjsT390Y+Yu1ovEskf2LSq2KA3npAb0pTqD/JjfTv5ynK4ZZUz6 EjTCK93ySXv85o+m+e0FIqh0Rl1n+oWe3xQN59bIEXEFv37yp30JQRsLsOUSO2t8aTYu4k JafFyYQUAu/Wcsf0o/ZvDRjGolxqw/kTqUqgtId5P36axWrg6FLFMc/pQGjjda+UUEW7oZ 4PEUct6sl2lXlD/SnkGzIKCylsuO75lPUN1yl6TTbInLhP/xBdWBSYK4Tim3s4duSrdCv+ eLsFebTI1rYIt8XasrLi7MezauYzKYzFWuJ1dkb3kQf1fscN4MXT5kxe+9aDJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1714985230; a=rsa-sha256; cv=none; b=JrNC+afO0vQ5LfcXWzJgXrgugngmQGQ2LIUBwRLBdkmCTdFEbnyrMCVjrC7BsOQRfysr6I cnp5SZrA5FsZIRe6yPKHJalunoCbguTWG5k2WUKSpYejVI8OGk41vj9mdodqpZh2ZW2xg0 iwiS+HZuQayisH036zDKScFZp32+HBky2wsFYCxrJtu3p3FiiQWdWsdM0DnjLqNgiuKjSJ wnlhLkRmqk/owMcLDXdr+Dn1l+95MzLPjUOE13B13skWrRItNSaFnBLMKGte28VAE2AUjz RFx9PInTbsf27g+K7txKIGf+3gStexzYFyevy0yUEmt3UTrNBEncaFElT3DnGw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985230; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CXaAX5KmU4lpvCqllxcrd2Rx0YSts+5xuKJr2dSVfuo=; b=JUpmguf8fYDhHOgwrhbedxQZCML87yZKpgGPGxmZ/DPfmNFas+C8JRptWNrX2+6AxBLImx pyftx/kon5cebWemLBn7oKtxe//HPv4/gQ72u6K77Eo4fUQ0Dszj7VgfWTrsMiAfZebbBm 0wu3fR03Tm5BycpX9q69+czwX2qBnmUPqLUoQ69O9gn80DkKcqDKbGGe2Vkb9V7U4m/qRz dVtq0CTPe/Vi0pmx8WCRoAdNnoGNtBvNkeAbESpK1epbM/J2H9H6+d2Pr98auTXZdvHA90 OpKuwW7YolyrgW2icg11htJ58q8TLKHQwQKM3EazSDJpr4bsXEBBu4QqTrlE5Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VXw5B5DVvzqvs; Mon, 6 May 2024 08:47: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 4468lAYX059816; Mon, 6 May 2024 08:47:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4468lAts059812; Mon, 6 May 2024 08:47:10 GMT (envelope-from git) Date: Mon, 6 May 2024 08:47:10 GMT Message-Id: <202405060847.4468lAts059812@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 8d13bc63c0e1 - main - Import device-tree files from Linux 6.8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0 commit 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0 Merge: c0b8b8188edd 48aa10e06590 Author: Emmanuel Vadot AuthorDate: 2024-05-06 08:46:36 +0000 Commit: Emmanuel Vadot CommitDate: 2024-05-06 08:46:36 +0000 Import device-tree files from Linux 6.8 Sponsored by: Beckhoff Automation GmbH & Co. KG sys/contrib/device-tree/Bindings/Makefile | 5 +- .../device-tree/Bindings/arm/calxeda/l2ecc.yaml | 2 +- sys/contrib/device-tree/Bindings/arm/cpus.yaml | 1 + sys/contrib/device-tree/Bindings/arm/fsl.yaml | 22 +- sys/contrib/device-tree/Bindings/arm/google.yaml | 53 + .../Bindings/arm/hisilicon/controller/sysctrl.yaml | 17 + .../Bindings/arm/marvell/armada-7k-8k.yaml | 22 + sys/contrib/device-tree/Bindings/arm/mediatek.yaml | 25 + .../Bindings/arm/mediatek/mediatek,audsys.yaml | 153 + .../Bindings/arm/mediatek/mediatek,infracfg.yaml | 1 + .../Bindings/arm/mediatek/mediatek,mmsys.yaml | 3 + .../Bindings/arm/mediatek/mediatek,pericfg.yaml | 1 + .../Bindings/arm/qcom,coresight-remote-etm.yaml | 51 + .../Bindings/arm/qcom,coresight-tpdm.yaml | 20 + sys/contrib/device-tree/Bindings/arm/qcom-soc.yaml | 16 +- sys/contrib/device-tree/Bindings/arm/qcom.yaml | 47 +- sys/contrib/device-tree/Bindings/arm/rockchip.yaml | 56 +- .../Bindings/arm/samsung/samsung-boards.yaml | 6 + .../device-tree/Bindings/arm/sprd/sprd.yaml | 5 + .../device-tree/Bindings/arm/stm32/stm32.yaml | 16 +- sys/contrib/device-tree/Bindings/arm/sunxi.yaml | 10 + sys/contrib/device-tree/Bindings/arm/ti/k3.yaml | 2 + sys/contrib/device-tree/Bindings/arm/ti/omap.yaml | 2 + .../device-tree/Bindings/ata/ceva,ahci-1v84.yaml | 3 +- .../Bindings/auxdisplay/hit,hd44780.yaml | 2 +- .../device-tree/Bindings/cache/qcom,llcc.yaml | 5 +- .../device-tree/Bindings/cache/sifive,ccache0.yaml | 6 +- .../Bindings/clock/baikal,bt1-ccu-pll.yaml | 2 +- .../device-tree/Bindings/clock/brcm,kona-ccu.yaml | 181 + .../Bindings/clock/fsl,imx93-anatop.yaml | 42 + .../Bindings/clock/google,gs101-clock.yaml | 106 + .../Bindings/clock/mediatek,apmixedsys.yaml | 1 + .../Bindings/clock/mediatek,ethsys.yaml | 55 + .../Bindings/clock/mediatek,mt7988-ethwarp.yaml | 52 + .../Bindings/clock/mediatek,mt7988-xfi-pll.yaml | 48 + .../Bindings/clock/mediatek,mt8188-clock.yaml | 2 - .../Bindings/clock/mediatek,topckgen.yaml | 2 + .../device-tree/Bindings/clock/qcom,a53pll.yaml | 1 + .../Bindings/clock/qcom,camcc-sm8250.yaml | 18 +- .../Bindings/clock/qcom,gcc-ipq6018.yaml | 57 + .../Bindings/clock/qcom,gcc-ipq8074.yaml | 4 + .../device-tree/Bindings/clock/qcom,gcc-other.yaml | 3 - .../Bindings/clock/qcom,qdu1000-ecpricc.yaml | 68 + .../device-tree/Bindings/clock/qcom,rpmhcc.yaml | 2 + .../Bindings/clock/qcom,sc7180-camcc.yaml | 18 +- .../Bindings/clock/qcom,sc7280-camcc.yaml | 18 +- .../Bindings/clock/qcom,sdm845-camcc.yaml | 18 +- .../Bindings/clock/qcom,sm8450-camcc.yaml | 20 +- .../Bindings/clock/qcom,sm8450-gpucc.yaml | 2 + .../Bindings/clock/qcom,sm8550-tcsr.yaml | 8 +- .../Bindings/clock/qcom,sm8650-dispcc.yaml | 106 + .../Bindings/clock/qcom,sm8650-gcc.yaml | 65 + .../Bindings/clock/qcom,x1e80100-gcc.yaml | 72 + .../Bindings/clock/renesas,9series.yaml | 10 + .../device-tree/Bindings/clock/silabs,si5351.yaml | 265 + .../Bindings/clock/sophgo,cv1800-clk.yaml | 46 + .../Bindings/clock/st,stm32mp25-rcc.yaml | 76 + .../Bindings/clock/xlnx,clocking-wizard.yaml | 1 + .../Bindings/clock/xlnx,versal-clk.yaml | 31 +- .../Bindings/connector/usb-connector.yaml | 124 +- .../device-tree/Bindings/cpu/idle-states.yaml | 81 +- .../Bindings/crypto/inside-secure,safexcel.yaml | 86 + .../Bindings/crypto/qcom,inline-crypto-engine.yaml | 1 + .../device-tree/Bindings/crypto/qcom,prng.yaml | 1 + .../device-tree/Bindings/crypto/qcom-qce.yaml | 14 + .../Bindings/display/bridge/lontium,lt8912b.yaml | 21 + .../Bindings/display/bridge/nxp,tda998x.yaml | 7 +- .../Bindings/display/mediatek/mediatek,aal.yaml | 1 + .../Bindings/display/mediatek/mediatek,color.yaml | 1 + .../Bindings/display/mediatek/mediatek,dsi.yaml | 4 + .../Bindings/display/mediatek/mediatek,ethdr.yaml | 6 +- .../Bindings/display/mediatek/mediatek,merge.yaml | 4 + .../Bindings/display/mediatek/mediatek,ovl.yaml | 1 + .../display/mediatek/mediatek,padding.yaml | 83 + .../Bindings/display/mediatek/mediatek,split.yaml | 27 + .../Bindings/display/msm/dp-controller.yaml | 2 + .../Bindings/display/msm/dsi-controller-main.yaml | 3 + .../Bindings/display/msm/dsi-phy-7nm.yaml | 1 + .../Bindings/display/msm/mdss-common.yaml | 18 +- .../Bindings/display/msm/qcom,qcm2290-mdss.yaml | 21 +- .../Bindings/display/msm/qcom,sc7180-mdss.yaml | 14 +- .../Bindings/display/msm/qcom,sc7280-mdss.yaml | 14 +- .../Bindings/display/msm/qcom,sdm670-mdss.yaml | 292 + .../Bindings/display/msm/qcom,sdm845-dpu.yaml | 4 +- .../Bindings/display/msm/qcom,sm6115-mdss.yaml | 10 + .../Bindings/display/msm/qcom,sm6125-mdss.yaml | 8 +- .../Bindings/display/msm/qcom,sm6350-mdss.yaml | 8 +- .../Bindings/display/msm/qcom,sm6375-mdss.yaml | 8 +- .../Bindings/display/msm/qcom,sm8150-mdss.yaml | 6 +- .../Bindings/display/msm/qcom,sm8250-mdss.yaml | 10 + .../Bindings/display/msm/qcom,sm8450-mdss.yaml | 13 +- .../Bindings/display/msm/qcom,sm8650-dpu.yaml | 127 + .../Bindings/display/msm/qcom,sm8650-mdss.yaml | 328 ++ .../display/panel/fascontek,fs035vg158.yaml | 56 + .../Bindings/display/panel/himax,hx8394.yaml | 3 + .../Bindings/display/panel/ilitek,ili9805.yaml | 62 + .../Bindings/display/panel/ilitek,ili9881c.yaml | 1 + .../display/panel/leadtek,ltk035c5444t.yaml | 8 +- .../Bindings/display/panel/newvision,nv3051d.yaml | 2 +- .../panel/panel-simple-lvds-dual-ports.yaml | 2 + .../Bindings/display/panel/panel-simple.yaml | 4 + .../Bindings/display/panel/sitronix,st7701.yaml | 1 + .../Bindings/display/panel/synaptics,r63353.yaml | 61 + .../display/rockchip/rockchip,inno-hdmi.yaml | 139 + .../Bindings/display/rockchip/rockchip-vop2.yaml | 100 +- .../display/samsung/samsung,exynos-mixer.yaml | 6 +- .../Bindings/display/ti/ti,am65x-dss.yaml | 14 + .../device-tree/Bindings/dma/dma-controller.yaml | 15 - .../device-tree/Bindings/dma/dma-router.yaml | 11 - .../Bindings/dma/loongson,ls2x-apbdma.yaml | 62 + .../Bindings/dma/nvidia,tegra210-adma.yaml | 3 + sys/contrib/device-tree/Bindings/dma/qcom,gpi.yaml | 2 + .../device-tree/Bindings/dma/renesas,rz-dmac.yaml | 2 +- .../Bindings/dma/sifive,fu540-c000-pdma.yaml | 1 + .../device-tree/Bindings/dma/ti/k3-bcdma.yaml | 39 +- .../device-tree/Bindings/dma/ti/k3-pktdma.yaml | 26 +- .../device-tree/Bindings/dma/ti/k3-udma.yaml | 20 +- .../device-tree/Bindings/dts-coding-style.rst | 196 + sys/contrib/device-tree/Bindings/eeprom/at24.yaml | 1 + .../device-tree/Bindings/firmware/qcom,scm.yaml | 18 +- .../firmware/xilinx/xlnx,zynqmp-firmware.yaml | 4 +- .../fpga/altr,freeze-bridge-controller.yaml | 41 + .../fpga/altr,socfpga-fpga2sdram-bridge.yaml | 33 + .../fpga/altr,socfpga-hps2fpga-bridge.yaml | 49 + .../device-tree/Bindings/fpga/fpga-bridge.yaml | 30 + .../Bindings/fpga/xlnx,pr-decoupler.yaml | 5 +- .../device-tree/Bindings/gnss/u-blox,neo-6m.yaml | 6 + .../Bindings/gpio/brcm,brcmstb-gpio.yaml | 2 +- .../device-tree/Bindings/gpio/nuvoton,sgpio.yaml | 87 + .../Bindings/gpio/realtek,rtd-gpio.yaml | 69 + .../Bindings/gpio/rockchip,gpio-bank.yaml | 7 + .../Bindings/gpio/snps,dw-apb-gpio.yaml | 2 + .../Bindings/gpio/xlnx,gpio-xilinx.yaml | 2 +- .../Bindings/gpio/xlnx,zynqmp-gpio-modepin.yaml | 6 +- .../device-tree/Bindings/gpu/arm,mali-midgard.yaml | 5 + .../device-tree/Bindings/gpu/arm,mali-utgard.yaml | 1 + .../device-tree/Bindings/gpu/brcm,bcm-v3d.yaml | 1 + .../device-tree/Bindings/gpu/img,powervr.yaml | 73 + .../device-tree/Bindings/gpu/samsung-g2d.yaml | 71 +- .../device-tree/Bindings/gpu/samsung-rotator.yaml | 9 +- .../device-tree/Bindings/gpu/samsung-scaler.yaml | 81 +- .../Bindings/hwinfo/samsung,exynos-chipid.yaml | 18 +- .../device-tree/Bindings/hwmon/gpio-fan.yaml | 60 + .../device-tree/Bindings/hwmon/iio-hwmon.yaml | 2 +- .../device-tree/Bindings/hwmon/lltc,ltc4286.yaml | 50 + sys/contrib/device-tree/Bindings/hwmon/lm75.yaml | 33 + .../device-tree/Bindings/i2c/i2c-exynos5.yaml | 11 +- .../Bindings/i2c/samsung,s3c2410-i2c.yaml | 22 +- .../device-tree/Bindings/i2c/st,stm32-i2c.yaml | 28 + .../device-tree/Bindings/iio/adc/adi,ad7091r5.yaml | 82 +- .../device-tree/Bindings/iio/adc/adi,ad7780.yaml | 6 +- .../Bindings/iio/adc/maxim,max34408.yaml | 139 + .../Bindings/iio/adc/qcom,spmi-iadc.yaml | 10 +- .../Bindings/iio/adc/qcom,spmi-rradc.yaml | 4 +- .../Bindings/iio/adc/qcom,spmi-vadc.yaml | 9 +- .../Bindings/iio/adc/samsung,exynos-adc.yaml | 29 +- .../Bindings/iio/adc/ti,palmas-gpadc.yaml | 15 - .../Bindings/iio/amplifiers/adi,hmc425a.yaml | 4 + .../Bindings/iio/chemical/aosong,ags02ma.yaml | 47 + .../device-tree/Bindings/iio/dac/adi,ad5791.yaml | 5 + .../Bindings/iio/dac/microchip,mcp4821.yaml | 86 + .../Bindings/iio/humidity/ti,hdc3020.yaml | 55 + .../Bindings/iio/imu/adi,adis16460.yaml | 4 + .../Bindings/iio/imu/adi,adis16475.yaml | 4 + .../device-tree/Bindings/iio/imu/bosch,bmi323.yaml | 77 + .../Bindings/iio/light/liteon,ltr390.yaml | 56 + .../Bindings/iio/light/vishay,veml6075.yaml | 39 + .../Bindings/iio/pressure/honeywell,hsc030pa.yaml | 142 + .../iio/pressure/honeywell,mprls0025pa.yaml | 2 - .../Bindings/iio/temperature/melexis,mlx90632.yaml | 19 +- .../iio/temperature/microchip,mcp9600.yaml | 70 + sys/contrib/device-tree/Bindings/index.rst | 1 + .../Bindings/input/adafruit,seesaw-gamepad.yaml | 63 + .../device-tree/Bindings/input/elan,ekth6915.yaml | 5 +- .../device-tree/Bindings/input/gpio-keys.yaml | 41 +- .../device-tree/Bindings/input/gpio-mouse.yaml | 68 + .../device-tree/Bindings/input/iqs269a.yaml | 98 +- .../Bindings/input/mediatek,pmic-keys.yaml | 24 +- .../Bindings/input/microchip,cap11xx.yaml | 80 +- .../Bindings/input/sprd,sc27xx-vibrator.yaml | 19 +- .../device-tree/Bindings/input/ti,drv266x.yaml | 50 + .../Bindings/input/touchscreen/neonode,zforce.yaml | 72 + .../input/touchscreen/samsung,s6sy761.yaml | 54 + .../Bindings/interconnect/qcom,msm8998-bwmon.yaml | 4 + .../Bindings/interconnect/qcom,sm6115.yaml | 152 + .../Bindings/interconnect/qcom,sm8650-rpmh.yaml | 136 + .../Bindings/interconnect/qcom,x1e80100-rpmh.yaml | 83 + .../interrupt-controller/loongson,liointc.yaml | 18 +- .../Bindings/interrupt-controller/qcom,mpm.yaml | 54 +- .../Bindings/interrupt-controller/qcom,pdc.yaml | 4 + .../interrupt-controller/renesas,rzg2l-irqc.yaml | 5 +- .../interrupt-controller/sifive,plic-1.0.0.yaml | 1 + .../st,stih407-irq-syscfg.yaml | 4 +- .../device-tree/Bindings/iommu/apple,dart.yaml | 1 + .../device-tree/Bindings/iommu/arm,smmu.yaml | 77 +- .../device-tree/Bindings/iommu/rockchip,iommu.yaml | 11 +- .../Bindings/leds/allwinner,sun50i-a100-ledc.yaml | 137 + .../device-tree/Bindings/leds/awinic,aw200xx.yaml | 95 +- .../Bindings/leds/backlight/mps,mp3309c.yaml | 10 +- sys/contrib/device-tree/Bindings/leds/common.yaml | 2 +- .../Bindings/leds/qcom,spmi-flash-led.yaml | 4 +- .../device-tree/Bindings/loongarch/cpus.yaml | 61 + .../device-tree/Bindings/loongarch/loongson.yaml | 34 + .../Bindings/mailbox/qcom,apcs-kpss-global.yaml | 62 +- .../device-tree/Bindings/mailbox/qcom-ipcc.yaml | 1 + .../Bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml | 132 +- .../device-tree/Bindings/media/cnm,wave521c.yaml | 61 + .../media/i2c/alliedvision,alvium-csi2.yaml | 81 + .../Bindings/media/i2c/asahi-kasei,ak7375.yaml | 4 +- .../Bindings/media/i2c/galaxycore,gc0308.yaml | 108 + .../Bindings/media/i2c/galaxycore,gc2145.yaml | 113 + .../device-tree/Bindings/media/i2c/ov8856.yaml | 24 +- .../Bindings/media/i2c/ovti,ov64a40.yaml | 103 + .../Bindings/media/i2c/sony,imx335.yaml | 13 + .../Bindings/media/i2c/techwell,tw9900.yaml | 137 + .../Bindings/media/i2c/thine,thp7312.yaml | 224 + .../Bindings/media/mediatek,mdp3-fg.yaml | 61 + .../Bindings/media/mediatek,mdp3-hdr.yaml | 61 + .../Bindings/media/mediatek,mdp3-rdma.yaml | 104 +- .../Bindings/media/mediatek,mdp3-rsz.yaml | 6 +- .../Bindings/media/mediatek,mdp3-stitch.yaml | 61 + .../Bindings/media/mediatek,mdp3-tcc.yaml | 62 + .../Bindings/media/mediatek,mdp3-tdshp.yaml | 61 + .../Bindings/media/mediatek,mdp3-wrot.yaml | 29 +- .../device-tree/Bindings/media/rockchip-isp1.yaml | 11 +- .../Bindings/media/samsung,s5p-mfc.yaml | 47 +- .../Bindings/media/st,stm32-dcmipp.yaml | 89 + .../Bindings/media/starfive,jh7110-camss.yaml | 180 + .../device-tree/Bindings/mfd/ams,as3711.yaml | 223 + .../Bindings/mfd/hisilicon,hi6421-spmi-pmic.yaml | 140 +- .../device-tree/Bindings/mfd/qcom,pm8008.yaml | 6 +- .../device-tree/Bindings/mfd/qcom,spmi-pmic.yaml | 7 + .../device-tree/Bindings/mfd/qcom,tcsr.yaml | 2 + .../Bindings/mfd/samsung,exynos5433-lpass.yaml | 2 +- .../Bindings/mfd/sprd,ums512-glbreg.yaml | 4 +- .../device-tree/Bindings/mfd/ti,am3359-tscadc.yaml | 2 - .../Bindings/misc/fsl,dpaa2-console.yaml | 2 +- .../device-tree/Bindings/mmc/arasan,sdhci.yaml | 8 +- .../device-tree/Bindings/mmc/arm,pl18x.yaml | 2 +- .../Bindings/mmc/brcm,sdhci-brcmstb.yaml | 4 +- .../Bindings/mmc/marvell,xenon-sdhci.yaml | 4 +- sys/contrib/device-tree/Bindings/mmc/mtk-sd.yaml | 9 + .../device-tree/Bindings/mmc/renesas,sdhi.yaml | 2 +- .../Bindings/mmc/samsung,exynos-dw-mshc.yaml | 25 +- .../device-tree/Bindings/mmc/sdhci-msm.yaml | 2 + .../device-tree/Bindings/mmc/sdhci-pxa.yaml | 4 +- .../Bindings/mmc/snps,dwcmshc-sdhci.yaml | 1 + .../device-tree/Bindings/mmc/synopsys-dw-mshc.yaml | 4 + .../Bindings/mtd/partitions/u-boot.yaml | 2 +- sys/contrib/device-tree/Bindings/net/dsa/dsa.yaml | 6 + .../Bindings/net/dsa/marvell,mv88e6060.yaml | 88 + .../Bindings/net/dsa/marvell,mv88e6xxx.yaml | 337 ++ .../Bindings/net/dsa/microchip,ksz.yaml | 34 +- .../device-tree/Bindings/net/ethernet-switch.yaml | 23 +- .../device-tree/Bindings/net/lantiq,pef2256.yaml | 213 + .../device-tree/Bindings/net/marvell,aquantia.yaml | 116 + .../device-tree/Bindings/net/marvell,mvusb.yaml | 7 +- .../Bindings/net/marvell,orion-mdio.yaml | 22 - .../device-tree/Bindings/net/marvell,prestera.yaml | 4 +- .../Bindings/net/pcs/mediatek,sgmiisys.yaml | 65 +- sys/contrib/device-tree/Bindings/net/qcom,ipa.yaml | 24 +- .../device-tree/Bindings/net/renesas,etheravb.yaml | 3 +- .../device-tree/Bindings/net/renesas,ethertsn.yaml | 135 + sys/contrib/device-tree/Bindings/net/sff,sfp.yaml | 2 +- .../Bindings/net/xlnx,axi-ethernet.yaml | 16 + .../device-tree/Bindings/nvmem/st,stm32-romem.yaml | 1 + .../device-tree/Bindings/pci/brcm,stb-pcie.yaml | 18 + .../device-tree/Bindings/pci/qcom,pcie.yaml | 63 +- .../device-tree/Bindings/pci/rcar-pci-host.yaml | 11 + .../device-tree/Bindings/pci/rockchip-dw-pcie.yaml | 2 + .../device-tree/Bindings/pci/ti,j721e-pci-ep.yaml | 39 +- .../Bindings/pci/ti,j721e-pci-host.yaml | 39 +- .../Bindings/pci/toshiba,visconti-pcie.yaml | 2 +- .../device-tree/Bindings/perf/fsl-imx-ddr.yaml | 3 + .../phy/amlogic,g12a-mipi-dphy-analog.yaml | 12 - .../phy/amlogic,meson-axg-mipi-pcie-analog.yaml | 17 - .../device-tree/Bindings/phy/mediatek,dsi-phy.yaml | 1 + .../device-tree/Bindings/phy/mediatek,tphy.yaml | 9 + .../Bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 5 + .../Bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml | 2 + .../phy/qcom,sc8280xp-qmp-usb3-uni-phy.yaml | 3 + .../phy/qcom,sc8280xp-qmp-usb43dp-phy.yaml | 8 +- .../Bindings/phy/qcom,snps-eusb2-phy.yaml | 2 + .../Bindings/pinctrl/pinctrl-single.yaml | 1 + .../Bindings/pinctrl/qcom,ipq5018-tlmm.yaml | 12 +- .../Bindings/pinctrl/qcom,ipq5332-tlmm.yaml | 9 +- .../Bindings/pinctrl/qcom,ipq6018-pinctrl.yaml | 8 +- .../Bindings/pinctrl/qcom,ipq8074-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,ipq9574-tlmm.yaml | 9 +- .../Bindings/pinctrl/qcom,lpass-lpi-common.yaml | 75 + .../Bindings/pinctrl/qcom,mdm9607-tlmm.yaml | 18 +- .../Bindings/pinctrl/qcom,mdm9615-pinctrl.yaml | 18 +- .../Bindings/pinctrl/qcom,msm8226-pinctrl.yaml | 8 +- .../Bindings/pinctrl/qcom,msm8660-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,msm8909-tlmm.yaml | 18 +- .../Bindings/pinctrl/qcom,msm8916-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,msm8953-pinctrl.yaml | 7 +- .../Bindings/pinctrl/qcom,msm8960-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,msm8974-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,msm8976-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,msm8994-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,msm8996-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,msm8998-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,pmic-mpp.yaml | 62 +- .../Bindings/pinctrl/qcom,qcm2290-tlmm.yaml | 9 +- .../Bindings/pinctrl/qcom,qcs404-pinctrl.yaml | 9 +- .../Bindings/pinctrl/qcom,qdu1000-tlmm.yaml | 12 +- .../Bindings/pinctrl/qcom,sa8775p-tlmm.yaml | 21 +- .../Bindings/pinctrl/qcom,sc7180-pinctrl.yaml | 9 +- .../pinctrl/qcom,sc7280-lpass-lpi-pinctrl.yaml | 49 +- .../Bindings/pinctrl/qcom,sc7280-pinctrl.yaml | 30 +- .../Bindings/pinctrl/qcom,sc8180x-tlmm.yaml | 20 +- .../pinctrl/qcom,sc8280xp-lpass-lpi-pinctrl.yaml | 49 +- .../Bindings/pinctrl/qcom,sc8280xp-tlmm.yaml | 18 +- .../Bindings/pinctrl/qcom,sdm630-pinctrl.yaml | 10 +- .../Bindings/pinctrl/qcom,sdm670-tlmm.yaml | 19 +- .../Bindings/pinctrl/qcom,sdm845-pinctrl.yaml | 10 +- .../Bindings/pinctrl/qcom,sdx55-pinctrl.yaml | 8 +- .../Bindings/pinctrl/qcom,sdx65-tlmm.yaml | 8 +- .../Bindings/pinctrl/qcom,sdx75-tlmm.yaml | 12 +- .../Bindings/pinctrl/qcom,sm4450-tlmm.yaml | 151 + .../pinctrl/qcom,sm6115-lpass-lpi-pinctrl.yaml | 48 +- .../Bindings/pinctrl/qcom,sm6115-tlmm.yaml | 8 +- .../Bindings/pinctrl/qcom,sm6125-tlmm.yaml | 20 +- .../Bindings/pinctrl/qcom,sm6350-tlmm.yaml | 20 +- .../Bindings/pinctrl/qcom,sm6375-tlmm.yaml | 18 +- .../Bindings/pinctrl/qcom,sm7150-tlmm.yaml | 9 +- .../Bindings/pinctrl/qcom,sm8150-pinctrl.yaml | 9 +- .../pinctrl/qcom,sm8250-lpass-lpi-pinctrl.yaml | 49 +- .../Bindings/pinctrl/qcom,sm8250-pinctrl.yaml | 9 +- .../pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml | 49 +- .../Bindings/pinctrl/qcom,sm8350-tlmm.yaml | 20 +- .../pinctrl/qcom,sm8450-lpass-lpi-pinctrl.yaml | 49 +- .../Bindings/pinctrl/qcom,sm8450-tlmm.yaml | 20 +- .../pinctrl/qcom,sm8550-lpass-lpi-pinctrl.yaml | 55 +- .../Bindings/pinctrl/qcom,sm8550-tlmm.yaml | 12 +- .../pinctrl/qcom,sm8650-lpass-lpi-pinctrl.yaml | 107 + .../Bindings/pinctrl/qcom,sm8650-tlmm.yaml | 141 + .../Bindings/pinctrl/qcom,x1e80100-tlmm.yaml | 137 + .../Bindings/pinctrl/renesas,rza2-pinctrl.yaml | 2 +- .../Bindings/pinctrl/renesas,rzg2l-pinctrl.yaml | 6 +- .../pinctrl/samsung,pinctrl-wakeup-interrupt.yaml | 45 +- .../Bindings/pinctrl/samsung,pinctrl.yaml | 5 +- .../Bindings/pinctrl/xlnx,zynq-pinctrl.yaml | 2 +- .../Bindings/pinctrl/xlnx,zynqmp-pinctrl.yaml | 2 +- .../device-tree/Bindings/power/fsl,scu-pd.yaml | 1 + .../device-tree/Bindings/power/qcom,rpmpd.yaml | 2 +- .../Bindings/power/reset/nvmem-reboot-mode.yaml | 8 +- .../device-tree/Bindings/power/reset/qcom,pon.yaml | 13 +- .../Bindings/power/reset/syscon-reboot-mode.yaml | 8 +- .../Bindings/power/reset/xlnx,zynqmp-power.yaml | 4 +- .../device-tree/Bindings/power/supply/bq24190.yaml | 1 + .../Bindings/power/supply/richtek,rt9455.yaml | 8 +- .../device-tree/Bindings/power/wakeup-source.txt | 18 +- .../Bindings/pwm/mediatek,pwm-disp.yaml | 1 - .../device-tree/Bindings/pwm/pwm-samsung.yaml | 4 + .../Bindings/pwm/ti,omap-dmtimer-pwm.yaml | 59 + .../Bindings/regulator/fixed-regulator.yaml | 2 + .../device-tree/Bindings/regulator/mps,mp5416.yaml | 4 +- .../Bindings/regulator/mps,mpq7920.yaml | 4 +- .../Bindings/regulator/qcom,rpmh-regulator.yaml | 14 + .../Bindings/regulator/qcom,smd-rpm-regulator.yaml | 4 + .../Bindings/regulator/qcom,spmi-regulator.yaml | 19 + .../regulator/qcom,usb-vbus-regulator.yaml | 5 +- .../device-tree/Bindings/regulator/regulator.yaml | 13 + .../Bindings/remoteproc/fsl,imx-rproc.yaml | 8 +- .../Bindings/remoteproc/qcom,sc7180-pas.yaml | 21 + .../Bindings/reset/amlogic,meson-reset.yaml | 1 + .../device-tree/Bindings/reset/fsl,imx-src.yaml | 31 +- .../Bindings/reset/hisilicon,hi3660-reset.yaml | 25 +- .../Bindings/reset/qcom,aoss-reset.yaml | 10 +- .../Bindings/reset/qcom,pdc-global.yaml | 8 +- .../Bindings/reset/renesas,rzg2l-usbphy-ctrl.yaml | 2 +- .../Bindings/reset/xlnx,zynqmp-reset.yaml | 3 +- sys/contrib/device-tree/Bindings/riscv/cpus.yaml | 10 +- .../device-tree/Bindings/riscv/extensions.yaml | 221 +- sys/contrib/device-tree/Bindings/riscv/sophgo.yaml | 4 + .../Bindings/rng/starfive,jh7110-trng.yaml | 6 +- .../device-tree/Bindings/rtc/adi,max31335.yaml | 70 + .../device-tree/Bindings/rtc/epson,rx8900.yaml | 2 + .../Bindings/rtc/nuvoton,ma35d1-rtc.yaml | 48 + .../device-tree/Bindings/rtc/qcom-pm8xxx-rtc.yaml | 36 +- sys/contrib/device-tree/Bindings/rtc/s3c-rtc.yaml | 5 + .../device-tree/Bindings/serial/arm,dcc.yaml | 30 + .../Bindings/serial/fsl,s32-linflexuart.yaml | 2 +- .../device-tree/Bindings/serial/fsl-imx-uart.yaml | 29 +- .../Bindings/serial/qcom,msm-uartdm.yaml | 13 + .../device-tree/Bindings/serial/renesas,sci.yaml | 2 +- .../device-tree/Bindings/serial/samsung_uart.yaml | 28 +- .../Bindings/serial/snps-dw-apb-uart.yaml | 1 + .../device-tree/Bindings/serial/sprd-uart.yaml | 1 + .../soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml | 33 + .../Bindings/soc/mediatek/mediatek,pwrap.yaml | 6 +- .../device-tree/Bindings/soc/mediatek/mtk-svs.yaml | 2 + .../microchip/microchip,mpfs-sys-controller.yaml | 10 + .../Bindings/soc/qcom/qcom,aoss-qmp.yaml | 2 + .../Bindings/soc/qcom/qcom,pmic-glink.yaml | 22 +- .../device-tree/Bindings/soc/qcom/qcom-stats.yaml | 14 + .../device-tree/Bindings/soc/rockchip/grf.yaml | 2 + .../Bindings/soc/samsung/exynos-pmu.yaml | 10 + .../Bindings/soc/samsung/exynos-usi.yaml | 7 +- .../soc/samsung/samsung,exynos-sysreg.yaml | 5 + .../device-tree/Bindings/soc/xilinx/xilinx.yaml | 142 + .../device-tree/Bindings/sound/adi,max98363.yaml | 2 +- .../Bindings/sound/allwinner,sun4i-a10-spdif.yaml | 5 +- .../Bindings/sound/audio-graph-port.yaml | 6 + .../device-tree/Bindings/sound/everest,es8328.yaml | 77 + .../device-tree/Bindings/sound/fsl,mqs.yaml | 105 + .../device-tree/Bindings/sound/fsl,xcvr.yaml | 22 +- .../Bindings/sound/google,sc7280-herobrine.yaml | 1 - .../Bindings/sound/mediatek,mt2701-audio.yaml | 116 + .../Bindings/sound/mediatek,mt8188-mt6359.yaml | 1 + .../Bindings/sound/nuvoton,nau8821.yaml | 9 + .../sound/nvidia,tegra-audio-max9808x.yaml | 2 +- .../Bindings/sound/qcom,lpass-rx-macro.yaml | 23 +- .../Bindings/sound/qcom,lpass-tx-macro.yaml | 25 +- .../Bindings/sound/qcom,lpass-va-macro.yaml | 18 +- .../Bindings/sound/qcom,lpass-wsa-macro.yaml | 23 +- .../device-tree/Bindings/sound/qcom,sm8250.yaml | 6 + .../device-tree/Bindings/sound/qcom,wcd934x.yaml | 4 +- .../Bindings/sound/qcom,wcd938x-sdw.yaml | 4 +- .../device-tree/Bindings/sound/qcom,wcd938x.yaml | 4 +- .../device-tree/Bindings/sound/qcom,wsa883x.yaml | 2 +- .../device-tree/Bindings/sound/qcom,wsa8840.yaml | 2 +- .../device-tree/Bindings/sound/renesas,rsnd.yaml | 36 +- .../device-tree/Bindings/sound/renesas,rz-ssi.yaml | 2 +- .../device-tree/Bindings/sound/samsung-i2s.yaml | 19 +- .../Bindings/sound/sound-card-common.yaml | 7 + .../device-tree/Bindings/sound/tas2562.yaml | 2 - .../device-tree/Bindings/sound/ti,tas2781.yaml | 78 +- .../Bindings/sound/ti,tlv320aic32x4.yaml | 2 +- .../Bindings/spi/adi,axi-spi-engine.yaml | 66 + .../device-tree/Bindings/spi/renesas,rspi.yaml | 2 +- .../device-tree/Bindings/spi/snps,dw-apb-ssi.yaml | 2 - .../device-tree/Bindings/spi/st,stm32-spi.yaml | 2 + .../Bindings/thermal/allwinner,sun8i-a83t-ths.yaml | 7 +- .../Bindings/thermal/loongson,ls2k-thermal.yaml | 10 +- .../Bindings/thermal/mediatek,thermal.yaml | 99 + .../Bindings/thermal/qcom-spmi-adc-tm-hc.yaml | 8 +- .../Bindings/thermal/qcom-spmi-adc-tm5.yaml | 16 +- .../device-tree/Bindings/thermal/qcom-tsens.yaml | 1 + .../Bindings/thermal/thermal-zones.yaml | 16 + .../device-tree/Bindings/timer/sifive,clint.yaml | 2 + .../Bindings/timer/thead,c900-aclint-mtimer.yaml | 9 +- .../device-tree/Bindings/tpm/google,cr50.yaml | 65 + sys/contrib/device-tree/Bindings/tpm/ibm,vtpm.yaml | 104 + .../device-tree/Bindings/tpm/microsoft,ftpm.yaml | 47 + .../device-tree/Bindings/tpm/tcg,tpm-tis-i2c.yaml | 90 + .../device-tree/Bindings/tpm/tcg,tpm-tis-mmio.yaml | 49 + .../device-tree/Bindings/tpm/tcg,tpm_tis-spi.yaml | 75 + .../device-tree/Bindings/tpm/tpm-common.yaml | 87 + .../device-tree/Bindings/trivial-devices.yaml | 24 +- sys/contrib/device-tree/Bindings/ufs/qcom,ufs.yaml | 2 + .../Bindings/ufs/samsung,exynos-ufs.yaml | 9 +- .../device-tree/Bindings/ufs/ufs-common.yaml | 2 + .../device-tree/Bindings/usb/dwc3-xilinx.yaml | 3 +- .../device-tree/Bindings/usb/generic-xhci.yaml | 25 +- .../device-tree/Bindings/usb/genesys,gl850g.yaml | 5 + .../Bindings/usb/mediatek,mtk-xhci.yaml | 11 + .../Bindings/usb/microchip,usb5744.yaml | 3 +- .../device-tree/Bindings/usb/nxp,ptn5110.yaml | 2 +- .../device-tree/Bindings/usb/qcom,dwc3.yaml | 151 +- .../Bindings/usb/qcom,wcd939x-usbss.yaml | 102 + .../device-tree/Bindings/usb/renesas,usbhs.yaml | 2 +- .../device-tree/Bindings/usb/snps,dwc3.yaml | 4 + .../device-tree/Bindings/usb/ti,tps6598x.yaml | 6 + sys/contrib/device-tree/Bindings/usb/usb-xhci.yaml | 6 + .../device-tree/Bindings/usb/xlnx,usb2.yaml | 3 +- .../device-tree/Bindings/vendor-prefixes.yaml | 22 + .../Bindings/w1/amd,axi-1wire-host.yaml | 44 + .../Bindings/watchdog/allwinner,sun4i-a10-wdt.yaml | 6 +- .../Bindings/watchdog/alphascale,asm9260-wdt.yaml | 6 +- .../device-tree/Bindings/watchdog/apple,wdt.yaml | 6 +- .../device-tree/Bindings/watchdog/arm-smc-wdt.yaml | 6 +- .../Bindings/watchdog/brcm,bcm7038-wdt.yaml | 10 +- .../Bindings/watchdog/cnxt,cx92755-wdt.yaml | 6 +- .../Bindings/watchdog/dlg,da9062-watchdog.yaml | 12 +- .../Bindings/watchdog/intel,keembay-wdt.yaml | 5 +- .../Bindings/watchdog/maxim,max63xx.yaml | 8 +- .../Bindings/watchdog/mediatek,mtk-wdt.yaml | 1 + .../Bindings/watchdog/nxp,pnx4008-wdt.yaml | 34 + .../Bindings/watchdog/qca,ar7130-wdt.yaml | 33 + .../Bindings/watchdog/qcom,pm8916-wdt.yaml | 33 +- .../device-tree/Bindings/watchdog/qcom-wdt.yaml | 2 +- .../watchdog/realtek,rtd1295-watchdog.yaml | 38 + .../device-tree/Bindings/watchdog/samsung-wdt.yaml | 29 +- .../device-tree/Bindings/watchdog/snps,dw-wdt.yaml | 10 +- .../Bindings/watchdog/technologic,ts7200-wdt.yaml | 45 + .../device-tree/include/dt-bindings/arm/qcom,ids.h | 1 + .../include/dt-bindings/clock/g12a-clkc.h | 8 + .../include/dt-bindings/clock/google,gs101.h | 392 ++ .../dt-bindings/clock/mediatek,mt7988-clk.h | 280 + .../include/dt-bindings/clock/qcom,gcc-msm8939.h | 6 + .../dt-bindings/clock/qcom,qdu1000-ecpricc.h | 147 + .../dt-bindings/clock/qcom,sc8280xp-camcc.h | 179 + .../include/dt-bindings/clock/qcom,sm8650-dispcc.h | 102 + .../include/dt-bindings/clock/qcom,sm8650-gcc.h | 254 + .../include/dt-bindings/clock/qcom,sm8650-gpucc.h | 43 + .../include/dt-bindings/clock/qcom,sm8650-tcsr.h | 18 + .../dt-bindings/clock/qcom,videocc-sm8150.h | 4 + .../include/dt-bindings/clock/qcom,x1e80100-gcc.h | 485 ++ .../include/dt-bindings/clock/sophgo,cv1800.h | 176 + .../include/dt-bindings/clock/st,stm32mp25-rcc.h | 492 ++ .../device-tree/include/dt-bindings/dma/fsl-edma.h | 21 + .../dt-bindings/iio/qcom,spmi-adc7-pm7325.h | 69 + .../dt-bindings/iio/qcom,spmi-adc7-smb139x.h | 19 + .../include/dt-bindings/iio/qcom,spmi-vadc.h | 3 + .../include/dt-bindings/interconnect/qcom,sm6115.h | 111 + .../dt-bindings/interconnect/qcom,sm8650-rpmh.h | 154 + .../dt-bindings/interconnect/qcom,x1e80100-rpmh.h | 207 + .../include/dt-bindings/power/meson-g12a-power.h | 1 + .../include/dt-bindings/reset/amlogic,c3-reset.h | 119 + .../dt-bindings/reset/mediatek,mt7988-resets.h | 13 + .../include/dt-bindings/reset/mt8188-resets.h | 75 + .../include/dt-bindings/reset/qcom,sm8650-gpucc.h | 20 + .../include/dt-bindings/reset/st,stm32mp25-rcc.h | 167 + .../include/dt-bindings/soc/rockchip,vop2.h | 4 + sys/contrib/device-tree/src/arm/amazon/alpine.dtsi | 1 - .../arm/aspeed/aspeed-bmc-facebook-bletchley.dts | 4 +- .../arm/aspeed/aspeed-bmc-facebook-wedge400.dts | 4 +- .../src/arm/aspeed/aspeed-bmc-opp-tacoma.dts | 2 +- .../device-tree/src/arm/aspeed/aspeed-g4.dtsi | 14 - .../device-tree/src/arm/aspeed/aspeed-g5.dtsi | 15 +- .../device-tree/src/arm/aspeed/aspeed-g6.dtsi | 18 +- .../arm/aspeed/ast2600-facebook-netbmc-common.dtsi | 4 +- .../device-tree/src/arm/broadcom/bcm-cygnus.dtsi | 3 + .../device-tree/src/arm/broadcom/bcm-hr2.dtsi | 1 + .../device-tree/src/arm/broadcom/bcm-nsp.dtsi | 2 + .../device-tree/src/arm/broadcom/bcm2711-rpi.dtsi | 5 + .../device-tree/src/arm/broadcom/bcm2711.dtsi | 14 + .../device-tree/src/arm/broadcom/bcm63138.dtsi | 6 + .../arm/intel/ixp/intel-ixp42x-gateway-7001.dts | 2 + .../intel/ixp/intel-ixp42x-goramo-multilink.dts | 2 + .../intel/ixp/intel-ixp42x-usrobotics-usr8200.dts | 22 + .../device-tree/src/arm/intel/socfpga/socfpga.dtsi | 2 +- .../src/arm/intel/socfpga/socfpga_arria10.dtsi | 2 +- .../intel/socfpga/socfpga_arria10_socdk_qspi.dts | 2 - .../src/arm/intel/socfpga/socfpga_arria5_socdk.dts | 2 - .../arm/intel/socfpga/socfpga_cyclone5_socdk.dts | 2 - .../arm/intel/socfpga/socfpga_cyclone5_sockit.dts | 2 - .../arm/intel/socfpga/socfpga_cyclone5_sodia.dts | 2 - .../intel/socfpga/socfpga_cyclone5_vining_fpga.dts | 4 - .../device-tree/src/arm/marvell/armada-370-rd.dts | 26 +- .../arm/marvell/armada-370-seagate-nas-2bay.dts | 8 +- .../arm/marvell/armada-370-seagate-nas-4bay.dts | 8 +- .../src/arm/marvell/armada-370-synology-ds213j.dts | 16 +- .../arm/marvell/armada-381-netgear-gs110emx.dts | 44 +- .../src/arm/marvell/armada-385-clearfog-gtr-l8.dts | 38 +- .../src/arm/marvell/armada-385-clearfog-gtr-s4.dts | 22 +- .../src/arm/marvell/armada-385-linksys.dtsi | 18 +- .../src/arm/marvell/armada-385-synology-ds116.dts | 16 +- .../src/arm/marvell/armada-385-turris-omnia.dts | 20 +- .../src/arm/marvell/armada-388-clearfog.dts | 20 +- .../device-tree/src/arm/marvell/armada-388-gp.dts | 4 +- .../src/arm/marvell/armada-xp-linksys-mamba.dts | 18 +- .../src/arm/marvell/kirkwood-dnskw.dtsi | 6 +- .../device-tree/src/arm/marvell/kirkwood-l-50.dts | 2 + .../src/arm/marvell/kirkwood-linkstation-6282.dtsi | 9 +- .../src/arm/marvell/kirkwood-linkstation-lswxl.dts | 9 +- .../device-tree/src/arm/marvell/kirkwood-lsxl.dtsi | 9 +- .../src/arm/marvell/kirkwood-ns2max.dts | 18 +- .../src/arm/marvell/kirkwood-ns2mini.dts | 18 +- .../src/arm/marvell/kirkwood-synology.dtsi | 102 +- .../src/arm/marvell/mvebu-linkstation-fan.dtsi | 8 +- .../src/arm/microchip/at91-sam9x60_curiosity.dts | 3 + .../src/arm/microchip/at91-sam9x60ek.dts | 3 + .../src/arm/microchip/at91-sama5d27_som1_ek.dts | 1 - .../src/arm/microchip/at91-sama5d27_wlsom1_ek.dts | 1 - .../src/arm/nuvoton/nuvoton-wpcm450.dtsi | 2 + .../src/arm/nvidia/tegra20-colibri.dtsi | 2 +- .../src/arm/nvidia/tegra30-apalis-v1.1.dtsi | 1 - .../device-tree/src/arm/nvidia/tegra30-apalis.dtsi | 1 - .../src/arm/nvidia/tegra30-colibri.dtsi | 1 - .../device-tree/src/arm/nxp/imx/imx1-ads.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx1-apf9328.dts | 2 +- sys/contrib/device-tree/src/arm/nxp/imx/imx1.dtsi | 9 +- .../src/arm/nxp/imx/imx25-eukrea-cpuimx25.dtsi | 2 +- .../imx25-eukrea-mbimxsd25-baseboard-cmo-qvga.dts | 2 +- .../imx25-eukrea-mbimxsd25-baseboard-dvi-svga.dts | 2 +- .../imx25-eukrea-mbimxsd25-baseboard-dvi-vga.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx25-pdk.dts | 3 +- sys/contrib/device-tree/src/arm/nxp/imx/imx25.dtsi | 41 +- .../device-tree/src/arm/nxp/imx/imx27-apf27dev.dts | 4 +- .../src/arm/nxp/imx/imx27-eukrea-cpuimx27.dtsi | 4 +- .../nxp/imx/imx27-eukrea-mbimxsd27-baseboard.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx27-pdk.dts | 18 +- .../src/arm/nxp/imx/imx27-phytec-phycard-s-rdk.dts | 2 +- .../src/arm/nxp/imx/imx27-phytec-phycore-rdk.dts | 17 +- .../src/arm/nxp/imx/imx27-phytec-phycore-som.dtsi | 28 +- sys/contrib/device-tree/src/arm/nxp/imx/imx27.dtsi | 7 +- .../device-tree/src/arm/nxp/imx/imx53-cx9020.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b105pv2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b105v2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b125pv2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b125v2.dts | 2 +- .../device-tree/src/arm/nxp/imx/imx6dl-b155v2.dts | 2 +- .../src/arm/nxp/imx/imx6q-apalis-ixora-v1.2.dts | 2 + .../device-tree/src/arm/nxp/imx/imx6q-b850v3.dts | 3 - .../device-tree/src/arm/nxp/imx/imx6q-bx50v3.dtsi | 2 +- .../src/arm/nxp/imx/imx6q-var-mx6customboard.dts | 4 +- .../src/arm/nxp/imx/imx6qdl-apalis.dtsi | 10 +- .../src/arm/nxp/imx/imx6qdl-colibri.dtsi | 8 +- .../src/arm/nxp/imx/imx6qdl-emcon-avari.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx6qdl-emcon.dtsi | 1 - .../device-tree/src/arm/nxp/imx/imx6qdl-mba6.dtsi | 6 +- .../src/arm/nxp/imx/imx6qdl-phytec-pfla02.dtsi | 1 + .../arm/nxp/imx/imx6qdl-phytec-phycore-som.dtsi | 1 + .../src/arm/nxp/imx/imx6qdl-skov-cpu-revc.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx6qdl.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx6sx.dtsi | 8 +- .../device-tree/src/arm/nxp/imx/imx6ul.dtsi | 2 +- .../src/arm/nxp/imx/imx6ull-phytec-tauri.dtsi | 2 +- .../device-tree/src/arm/nxp/imx/imx7-tqma7.dtsi | 9 +- .../src/arm/nxp/imx/imx7d-colibri-emmc.dtsi | 4 + .../src/arm/nxp/imx/imx7d-flex-concentrator.dts | 2 +- .../src/arm/nxp/imx/imx7d-meerkat96.dts | 2 +- .../src/arm/nxp/imx/imx7d-pico-dwarf.dts | 1 + .../device-tree/src/arm/nxp/imx/imx7d-pico.dtsi | 8 + .../device-tree/src/arm/nxp/imx/imx7d-smegw01.dts | 2 +- sys/contrib/device-tree/src/arm/nxp/imx/imx7d.dtsi | 3 - sys/contrib/device-tree/src/arm/nxp/imx/imx7s.dtsi | 48 +- .../device-tree/src/arm/nxp/imx/mba6ulx.dtsi | 2 +- .../device-tree/src/arm/nxp/lpc/lpc18xx.dtsi | 2 +- .../device-tree/src/arm/nxp/ls/ls1021a.dtsi | 2 +- .../device-tree/src/arm/nxp/mxs/imx23-sansa.dts | 12 +- sys/contrib/device-tree/src/arm/nxp/mxs/imx23.dtsi | 10 +- .../device-tree/src/arm/nxp/mxs/imx28-lwe.dtsi | 1 + .../device-tree/src/arm/nxp/mxs/imx28-tx28.dts | 1 + sys/contrib/device-tree/src/arm/nxp/mxs/imx28.dtsi | 14 +- .../src/arm/nxp/vf/vf-colibri-eval-v3.dtsi | 2 +- .../device-tree/src/arm/nxp/vf/vf610-bk4.dts | 4 +- .../device-tree/src/arm/nxp/vf/vf610-zii-cfu1.dts | 14 +- .../src/arm/nxp/vf/vf610-zii-dev-rev-b.dts | 7 +- .../src/arm/nxp/vf/vf610-zii-scu4-aib.dts | 70 +- .../device-tree/src/arm/nxp/vf/vf610-zii-spb4.dts | 18 +- .../src/arm/nxp/vf/vf610-zii-ssmb-dtu.dts | 20 +- .../src/arm/nxp/vf/vf610-zii-ssmb-spu3.dts | 18 +- sys/contrib/device-tree/src/arm/qcom/pm8018.dtsi | 55 + sys/contrib/device-tree/src/arm/qcom/pm8058.dtsi | 159 + sys/contrib/device-tree/src/arm/qcom/pm8226.dtsi | 182 + sys/contrib/device-tree/src/arm/qcom/pm8821.dtsi | 22 + sys/contrib/device-tree/src/arm/qcom/pm8841.dtsi | 68 + sys/contrib/device-tree/src/arm/qcom/pm8921.dtsi | 137 + sys/contrib/device-tree/src/arm/qcom/pm8941.dtsi | 256 + sys/contrib/device-tree/src/arm/qcom/pma8084.dtsi | 99 + sys/contrib/device-tree/src/arm/qcom/pmx55.dtsi | 85 + sys/contrib/device-tree/src/arm/qcom/pmx65.dtsi | 33 + .../src/arm/qcom/qcom-apq8026-asus-sparrow.dts | 4 +- .../src/arm/qcom/qcom-apq8026-huawei-sturgeon.dts | 4 +- .../src/arm/qcom/qcom-apq8026-lg-lenok.dts | 4 +- .../arm/qcom/qcom-apq8026-samsung-matisse-wifi.dts | 2 +- .../src/arm/qcom/qcom-apq8060-dragonboard.dts | 164 +- .../src/arm/qcom/qcom-apq8064-asus-nexus7-flo.dts | 70 +- .../src/arm/qcom/qcom-apq8064-cm-qs600.dts | 35 +- .../src/arm/qcom/qcom-apq8064-ifc6410.dts | 42 +- .../qcom/qcom-apq8064-sony-xperia-lagan-yuga.dts | 111 +- .../device-tree/src/arm/qcom/qcom-apq8064.dtsi | 203 +- .../src/arm/qcom/qcom-apq8074-dragonboard.dts | 35 +- .../src/arm/qcom/qcom-apq8084-ifc6540.dts | 2 +- .../device-tree/src/arm/qcom/qcom-apq8084-mtp.dts | 2 +- .../src/arm/qcom/qcom-ipq4019-ap.dk04.1.dtsi | 2 +- .../device-tree/src/arm/qcom/qcom-ipq4019.dtsi | 4 +- .../device-tree/src/arm/qcom/qcom-ipq8064.dtsi | 8 +- .../arm/qcom/qcom-mdm9615-wp8548-mangoh-green.dts | 4 +- .../src/arm/qcom/qcom-mdm9615-wp8548.dtsi | 143 +- .../device-tree/src/arm/qcom/qcom-mdm9615.dtsi | 183 +- .../arm/qcom/qcom-msm8226-microsoft-common.dtsi | 327 ++ .../arm/qcom/qcom-msm8226-microsoft-dempsey.dts | 17 + .../arm/qcom/qcom-msm8226-microsoft-makepeace.dts | 17 + .../arm/qcom/qcom-msm8226-microsoft-moneypenny.dts | 23 + .../device-tree/src/arm/qcom/qcom-msm8226.dtsi | 48 +- .../device-tree/src/arm/qcom/qcom-msm8660-surf.dts | 61 +- .../device-tree/src/arm/qcom/qcom-msm8660.dtsi | 217 +- .../src/arm/qcom/qcom-msm8926-htc-memul.dts | 372 ++ .../qcom/qcom-msm8926-microsoft-superman-lte.dts | 53 + .../src/arm/qcom/qcom-msm8926-microsoft-tesla.dts | 67 + .../arm/qcom/qcom-msm8926-motorola-peregrine.dts | 291 + .../device-tree/src/arm/qcom/qcom-msm8960-cdp.dts | 27 +- .../arm/qcom/qcom-msm8960-samsung-expressatt.dts | 7 +- .../device-tree/src/arm/qcom/qcom-msm8960.dtsi | 45 +- .../qcom/qcom-msm8974-lge-nexus5-hammerhead.dts | 33 +- .../arm/qcom/qcom-msm8974-sony-xperia-rhine.dtsi | 35 +- .../device-tree/src/arm/qcom/qcom-msm8974.dtsi | 122 +- .../src/arm/qcom/qcom-msm8974pro-fairphone-fp2.dts | 33 +- .../src/arm/qcom/qcom-msm8974pro-oneplus-bacon.dts | 35 +- .../src/arm/qcom/qcom-msm8974pro-samsung-klte.dts | 13 +- .../qcom-msm8974pro-sony-xperia-shinano-castor.dts | 35 +- .../device-tree/src/arm/qcom/qcom-sdx55-mtp.dts | 2 +- .../device-tree/src/arm/qcom/qcom-sdx55-t55.dts | 2 +- .../src/arm/qcom/qcom-sdx55-telit-fn980-tlb.dts | 2 +- .../device-tree/src/arm/qcom/qcom-sdx55.dtsi | 63 +- .../device-tree/src/arm/qcom/qcom-sdx65-mtp.dts | 2 +- .../device-tree/src/arm/qcom/qcom-sdx65.dtsi | 51 +- .../src/arm/renesas/iwg20d-q7-dbcm-ca.dtsi | 15 + .../src/arm/renesas/r8a7740-armadillo800eva.dts | 28 +- .../device-tree/src/arm/renesas/r8a7740.dtsi | 65 + .../arm/renesas/r8a7745-iwg22d-sodimm-dbhd-ca.dts | 15 + .../src/arm/renesas/r8a7745-iwg22d-sodimm.dts | 4 +- .../device-tree/src/arm/renesas/r8a7779-marzen.dts | 48 +- .../device-tree/src/arm/renesas/r8a7790-lager.dts | 24 +- .../device-tree/src/arm/renesas/r8a7790-stout.dts | 16 + .../src/arm/renesas/r8a7791-koelsch.dts | 31 +- .../device-tree/src/arm/renesas/r8a7791-porter.dts | 27 +- .../src/arm/renesas/r8a7792-blanche.dts | 50 + .../device-tree/src/arm/renesas/r8a7792-wheat.dts | 21 + .../device-tree/src/arm/renesas/r8a7793-gose.dts | 29 +- .../device-tree/src/arm/renesas/r8a7794-alt.dts | 5 +- .../device-tree/src/arm/renesas/r8a7794-silk.dts | 18 +- .../device-tree/src/arm/renesas/r9a06g032.dtsi | 2 +- .../device-tree/src/arm/rockchip/rk3036-kylin.dts | 21 + .../device-tree/src/arm/rockchip/rk3036.dtsi | 18 +- .../device-tree/src/arm/rockchip/rk3066a.dtsi | 5 + .../device-tree/src/arm/rockchip/rk3128-evb.dts | 5 - .../src/arm/rockchip/rk3128-xpi-3128.dts | 425 ++ .../device-tree/src/arm/rockchip/rk3128.dtsi | 185 + .../device-tree/src/arm/rockchip/rk322x.dtsi | 4 + .../device-tree/src/arm/rockchip/rk3288.dtsi | 9 + .../device-tree/src/arm/rockchip/rk3xxx.dtsi | 4 + .../device-tree/src/arm/rockchip/rv1108.dtsi | 8 - .../src/arm/rockchip/rv1109-sonoff-ihost.dts | 21 + .../device-tree/src/arm/rockchip/rv1109.dtsi | 23 + .../src/arm/rockchip/rv1126-edgeble-neu2-io.dts | 2 +- .../src/arm/rockchip/rv1126-pinctrl.dtsi | 72 +- .../src/arm/rockchip/rv1126-sonoff-ihost.dts | 29 + .../src/arm/rockchip/rv1126-sonoff-ihost.dtsi | 404 ++ .../device-tree/src/arm/rockchip/rv1126.dtsi | 21 + .../device-tree/src/arm/samsung/exynos4.dtsi | 26 +- .../src/arm/samsung/exynos4210-i9100.dts | 48 +- .../src/arm/samsung/exynos4212-tab3.dtsi | 1 + .../device-tree/src/arm/samsung/exynos4x12.dtsi | 22 +- .../device-tree/src/arm/samsung/s5pv210.dtsi | 18 +- sys/contrib/device-tree/src/arm/st/ste-dbx5x0.dtsi | 18 +- .../device-tree/src/arm/st/ste-href-ab8500.dtsi | 48 + .../device-tree/src/arm/st/ste-href-ab8505.dtsi | 490 ++ sys/contrib/device-tree/src/arm/st/ste-href.dtsi | 55 - .../device-tree/src/arm/st/ste-href520-tvk.dts | 1 + .../src/arm/st/ste-hrefprev60-stuib.dts | 1 + .../device-tree/src/arm/st/ste-hrefprev60-tvk.dts | 1 + .../device-tree/src/arm/st/ste-hrefprev60.dtsi | 2 +- .../src/arm/st/ste-hrefv60plus-stuib.dts | 1 + .../device-tree/src/arm/st/ste-hrefv60plus-tvk.dts | 1 + .../device-tree/src/arm/st/ste-hrefv60plus.dtsi | 3 +- .../src/arm/st/ste-nomadik-stn8815.dtsi | 8 +- .../device-tree/src/arm/st/ste-snowball.dts | 2 +- .../src/arm/st/ste-ux500-samsung-codina-tmo.dts | 2 +- .../src/arm/st/ste-ux500-samsung-codina.dts | 2 +- .../src/arm/st/ste-ux500-samsung-gavini.dts | 2 +- .../src/arm/st/ste-ux500-samsung-janice.dts | 2 +- .../src/arm/st/ste-ux500-samsung-kyle.dts | 2 +- .../device-tree/src/arm/st/stm32429i-eval.dts | 1 - .../device-tree/src/arm/st/stm32f469-disco.dts | 15 +- sys/contrib/device-tree/src/arm/st/stm32f746.dtsi | 61 + sys/contrib/device-tree/src/arm/st/stm32mp135.dtsi | 11 + sys/contrib/device-tree/src/arm/st/stm32mp151.dtsi | 4 + .../device-tree/src/arm/st/stm32mp151a-prtt1l.dtsi | 2 - .../src/arm/st/stm32mp157a-dk1-scmi.dts | 4 +- .../src/arm/st/stm32mp157a-stinger96.dtsi | 2 - .../src/arm/st/stm32mp157c-dk2-scmi.dts | 4 +- .../device-tree/src/arm/st/stm32mp157c-dk2.dts | 1 - .../src/arm/st/stm32mp157c-ed1-scmi.dts | 4 +- .../src/arm/st/stm32mp157c-emstamp-argon.dtsi | 4 - .../src/arm/st/stm32mp157c-ev1-scmi.dts | 5 +- .../device-tree/src/arm/st/stm32mp157c-ev1.dts | 1 - .../src/arm/st/stm32mp157c-osd32mp1-red.dts | 4 - .../arm/st/stm32mp157c-phycore-stm32mp15-som.dtsi | 4 - .../src/arm/st/stm32mp15xc-lxa-tac.dtsi | 3 - .../src/arm/st/stm32mp15xx-dhcom-drc02.dtsi | 1 - .../src/arm/st/stm32mp15xx-dhcom-pdk2.dtsi | 1 - .../src/arm/st/stm32mp15xx-dhcom-picoitx.dtsi | 2 - .../src/arm/st/stm32mp15xx-dhcor-avenger96.dtsi | 2 - .../src/arm/st/stm32mp15xx-dhcor-drc-compact.dtsi | 2 - .../src/arm/st/stm32mp15xx-dhcor-testbench.dtsi | 2 - .../device-tree/src/arm/st/stm32mp15xx-dkx.dtsi | 1 - .../src/arm/ti/keystone/keystone-k2e-netcp.dtsi | 6 +- .../src/arm/ti/keystone/keystone-k2g-evm.dts | 2 +- .../src/arm/ti/keystone/keystone-k2g-netcp.dtsi | 6 +- .../src/arm/ti/keystone/keystone-k2hk-evm.dts | 2 +- .../src/arm/ti/keystone/keystone-k2hk-netcp.dtsi | 6 +- .../src/arm/ti/keystone/keystone-k2l-netcp.dtsi | 6 +- .../arm/ti/omap/am335x-moxa-uc-2100-common.dtsi | 2 +- .../device-tree/src/arm/ti/omap/am571x-idk.dts | 4 +- .../src/arm/ti/omap/am5729-beagleboneai.dts | 3 +- .../src/arm/ti/omap/am572x-idk-common.dtsi | 4 +- .../src/arm/ti/omap/dra7-evm-common.dtsi | 4 +- .../device-tree/src/arm/ti/omap/dra71-evm.dts | 4 +- .../src/arm/ti/omap/dra72-evm-common.dtsi | 4 +- .../device-tree/src/arm/ti/omap/dra76-evm.dts | 4 +- .../arm/ti/omap/logicpd-torpedo-37xx-devkit.dts | 2 +- .../src/arm/ti/omap/motorola-mapphone-common.dtsi | 298 - .../src/arm/ti/omap/motorola-mapphone-handset.dtsi | 234 + .../arm/ti/omap/motorola-mapphone-mz607-mz617.dtsi | 21 + .../src/arm/ti/omap/motorola-mapphone-xt8xx.dtsi | 75 + .../src/arm/ti/omap/omap4-droid-bionic-xt875.dts | 11 +- .../src/arm/ti/omap/omap4-droid4-xt894.dts | 19 +- .../src/arm/ti/omap/omap4-epson-embt2ws.dts | 18 +- .../src/arm/ti/omap/omap4-xyboard-mz609.dts | 46 + .../src/arm/ti/omap/omap4-xyboard-mz617.dts | 17 + .../allwinner/sun50i-h618-orangepi-zero2w.dts | 176 + .../allwinner/sun50i-h618-transpeed-8k618-t.dts | 161 + .../src/arm64/altera/socfpga_stratix10.dtsi | 41 +- .../src/arm64/altera/socfpga_stratix10_socdk.dts | 8 +- .../arm64/altera/socfpga_stratix10_socdk_nand.dts | 6 +- .../src/arm64/altera/socfpga_stratix10_swvp.dts | 2 - .../device-tree/src/arm64/amazon/alpine-v2.dtsi | 1 - .../device-tree/src/arm64/amazon/alpine-v3.dtsi | 1 - .../device-tree/src/arm64/amlogic/amlogic-c3.dtsi | 6 + .../meson-axg-jethome-jethub-j110-rev-2.dts | 14 +- .../meson-axg-jethome-jethub-j110-rev-3.dts | 12 + .../src/arm64/amlogic/meson-axg-s400.dts | 5 - .../device-tree/src/arm64/amlogic/meson-axg.dtsi | 23 + .../src/arm64/amlogic/meson-g12a-sei510.dts | 1 - .../src/arm64/amlogic/meson-g12a-x96-max.dts | 1 - .../src/arm64/amlogic/meson-g12b-bananapi-cm4.dtsi | 2 +- .../src/arm64/amlogic/meson-g12b-bananapi.dtsi | 2 +- .../src/arm64/amlogic/meson-g12b-gtking.dts | 1 - .../src/arm64/amlogic/meson-g12b-ugoos-am6.dts | 1 - .../src/arm64/amlogic/meson-gx-p23x-q20x.dtsi | 1 - .../src/arm64/amlogic/meson-gxbb-kii-pro.dts | 1 - .../src/arm64/amlogic/meson-gxbb-p200.dts | 1 - .../src/arm64/amlogic/meson-gxbb-vega-s95.dtsi | 1 - .../src/arm64/amlogic/meson-gxbb-wetek-play2.dts | 1 - .../src/arm64/amlogic/meson-gxm-nexbox-a1.dts | 1 - .../src/arm64/amlogic/meson-gxm-rbox-pro.dts | 1 - .../src/arm64/amlogic/meson-s4-s805x2-aq222.dts | 60 +- .../device-tree/src/arm64/amlogic/meson-s4.dtsi | 360 +- .../src/arm64/amlogic/meson-sm1-sei610.dts | 1 - .../device-tree/src/arm64/arm/juno-base.dtsi | 12 +- .../device-tree/src/arm64/arm/juno-scmi.dtsi | 12 +- .../src/arm64/broadcom/northstar2/ns2.dtsi | 1 + .../src/arm64/broadcom/stingray/stingray.dtsi | 1 + .../device-tree/src/arm64/exynos/exynos5433.dtsi | 60 +- .../device-tree/src/arm64/exynos/exynos7.dtsi | 18 +- .../device-tree/src/arm64/exynos/exynos7885.dtsi | 45 +- .../device-tree/src/arm64/exynos/exynos850.dtsi | 40 +- .../src/arm64/exynos/exynosautov9-sadk.dts | 51 + .../device-tree/src/arm64/exynos/exynosautov9.dtsi | 10 +- .../src/arm64/exynos/exynosautov920-pinctrl.dtsi | 1266 +++++ .../src/arm64/exynos/exynosautov920-sadk.dts | 88 + .../src/arm64/exynos/exynosautov920.dtsi | 312 + .../src/arm64/exynos/google/gs101-oriole.dts | 105 + .../src/arm64/exynos/google/gs101-pinctrl.dtsi | 1249 ++++ .../src/arm64/exynos/google/gs101-pinctrl.h | 33 + .../device-tree/src/arm64/exynos/google/gs101.dtsi | 473 ++ .../src/arm64/freescale/fsl-ls1012a.dtsi | 80 +- .../src/arm64/freescale/fsl-ls1028a.dtsi | 87 +- .../src/arm64/freescale/fsl-ls1043a.dtsi | 81 +- .../src/arm64/freescale/fsl-ls1046a.dtsi | 74 +- .../src/arm64/freescale/fsl-ls1088a.dtsi | 74 +- .../src/arm64/freescale/fsl-ls208xa.dtsi | 73 +- .../freescale/fsl-lx2160a-tqmlx2160a-mblx2160a.dts | 338 ++ .../fsl-lx2160a-tqmlx2160a-mblx2160a_12_x_x.dtso | 29 + .../fsl-lx2160a-tqmlx2160a-mblx2160a_14_x_x.dtso | 17 + .../fsl-lx2160a-tqmlx2160a-mblx2160a_x_11_x.dtso | 49 + .../fsl-lx2160a-tqmlx2160a-mblx2160a_x_7_x.dtso | 55 + .../fsl-lx2160a-tqmlx2160a-mblx2160a_x_8_x.dtso | 47 + .../arm64/freescale/fsl-lx2160a-tqmlx2160a.dtsi | 97 + .../src/arm64/freescale/fsl-lx2160a.dtsi | 4 +- .../arm64/freescale/imx8-apalis-ixora-v1.2.dtsi | 2 + .../src/arm64/freescale/imx8-ss-audio.dtsi | 2 - .../src/arm64/freescale/imx8dxl-ss-conn.dtsi | 16 +- .../src/arm64/freescale/imx8dxl-ss-ddr.dtsi | 2 +- .../src/arm64/freescale/imx8mm-beacon-som.dtsi | 2 + .../src/arm64/freescale/imx8mm-emcon-avari.dtsi | 2 +- .../src/arm64/freescale/imx8mm-evk.dtsi | 12 +- .../src/arm64/freescale/imx8mm-nitrogen-r2.dts | 2 +- .../src/arm64/freescale/imx8mm-overdrive.dtsi | 29 + .../src/arm64/freescale/imx8mm-phygate-tauri-l.dts | 2 +- .../arm64/freescale/imx8mm-tqma8mqml-mba8mx.dts | 1 + .../src/arm64/freescale/imx8mm-venice-gw72xx.dtsi | 39 +- .../src/arm64/freescale/imx8mm-venice-gw73xx.dtsi | 31 +- .../src/arm64/freescale/imx8mm-venice-gw7902.dts | 13 +- .../src/arm64/freescale/imx8mm-verdin-mallow.dtsi | 173 + .../freescale/imx8mm-verdin-nonwifi-mallow.dts | 18 + .../arm64/freescale/imx8mm-verdin-wifi-mallow.dts | 18 + .../device-tree/src/arm64/freescale/imx8mm.dtsi | 18 +- .../src/arm64/freescale/imx8mn-beacon-som.dtsi | 2 + .../arm64/freescale/imx8mn-bsh-smm-s2-common.dtsi | 1 + .../arm64/freescale/imx8mn-bsh-smm-s2-display.dtsi | 121 + .../freescale/imx8mn-dimonoff-gateway-evk.dts | 160 + .../src/arm64/freescale/imx8mn-evk.dtsi | 12 +- .../src/arm64/freescale/imx8mn-overdrive.dtsi | 18 + .../src/arm64/freescale/imx8mn-rve-gateway.dts | 285 + .../arm64/freescale/imx8mn-tqma8mqnl-mba8mx.dts | 1 + .../arm64/freescale/imx8mn-var-som-symphony.dts | 10 + .../src/arm64/freescale/imx8mn-var-som.dtsi | 9 + .../device-tree/src/arm64/freescale/imx8mn.dtsi | 2 + .../src/arm64/freescale/imx8mp-beacon-kit.dts | 94 +- .../arm64/freescale/imx8mp-data-modul-edm-sbc.dts | 2 +- .../src/arm64/freescale/imx8mp-debix-model-a.dts | 2 +- .../arm64/freescale/imx8mp-debix-som-a-bmb-08.dts | 56 + .../src/arm64/freescale/imx8mp-debix-som-a.dtsi | 22 + .../src/arm64/freescale/imx8mp-dhcom-som.dtsi | 14 +- .../device-tree/src/arm64/freescale/imx8mp-evk.dts | 22 + .../src/arm64/freescale/imx8mp-msc-sm2s-ep1.dts | 4 +- .../src/arm64/freescale/imx8mp-skov-reva.dtsi | 711 +++ .../src/arm64/freescale/imx8mp-skov-revb-hdmi.dts | 20 + .../src/arm64/freescale/imx8mp-skov-revb-lt6.dts | 101 + .../freescale/imx8mp-skov-revb-mi1010ait-1cp1.dts | 100 + .../imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01.dtso | 77 + .../arm64/freescale/imx8mp-tqma8mpql-mba8mpxl.dts | 37 +- .../src/arm64/freescale/imx8mp-venice-gw71xx.dtsi | 26 +- .../src/arm64/freescale/imx8mp-venice-gw72xx.dtsi | 36 +- .../src/arm64/freescale/imx8mp-venice-gw73xx.dtsi | 28 +- .../src/arm64/freescale/imx8mp-venice-gw74xx.dts | 30 +- .../src/arm64/freescale/imx8mp-verdin-mallow.dtsi | 199 + .../freescale/imx8mp-verdin-nonwifi-mallow.dts | 18 + .../arm64/freescale/imx8mp-verdin-wifi-mallow.dts | 18 + .../src/arm64/freescale/imx8mp-verdin.dtsi | 30 +- .../device-tree/src/arm64/freescale/imx8mp.dtsi | 30 +- .../arm64/freescale/imx8mq-kontron-pitx-imx8m.dts | 2 +- .../src/arm64/freescale/imx8mq-phanbell.dts | 2 +- .../src/arm64/freescale/imx8mq-tqma8mq-mba8mx.dts | 1 + .../src/arm64/freescale/imx8qm-ss-dma.dtsi | 4 + .../src/arm64/freescale/imx8qxp-mek.dts | 21 +- .../src/arm64/freescale/imx8qxp-ss-vpu.dtsi | 17 + .../device-tree/src/arm64/freescale/imx8qxp.dtsi | 3 +- .../src/arm64/freescale/imx93-11x11-evk.dts | 31 +- .../arm64/freescale/imx93-tqma9352-mba93xxca.dts | 709 +++ .../arm64/freescale/imx93-tqma9352-mba93xxla.dts | 1 + .../device-tree/src/arm64/freescale/imx93.dtsi | 127 +- .../src/arm64/hisilicon/hikey970-pmic.dtsi | 6 +- .../src/arm64/intel/socfpga_agilex.dtsi | 42 +- .../src/arm64/intel/socfpga_agilex5.dtsi | 4 +- .../src/arm64/intel/socfpga_agilex_n6000.dts | 2 +- .../src/arm64/intel/socfpga_agilex_socdk.dts | 2 - .../src/arm64/intel/socfpga_n5x_socdk.dts | 5 +- sys/contrib/device-tree/src/arm64/lg/lg1312.dtsi | 1 - sys/contrib/device-tree/src/arm64/lg/lg1313.dtsi | 1 - .../src/arm64/marvell/ac5x-rd-carrier-cn9131.dts | 44 + .../src/arm64/marvell/ac5x-rd-carrier.dtsi | 34 + .../marvell/armada-3720-espressobin-ultra.dts | 14 +- .../src/arm64/marvell/armada-3720-espressobin.dtsi | 20 +- .../src/arm64/marvell/armada-3720-gl-mv1000.dts | 20 +- .../src/arm64/marvell/armada-3720-turris-mox.dts | 99 +- .../src/arm64/marvell/armada-7040-mochabin.dts | 24 +- .../arm64/marvell/armada-8040-clearfog-gt-8k.dts | 22 +- .../src/arm64/marvell/armada-ap80x.dtsi | 1 - .../device-tree/src/arm64/marvell/cn9130-crb.dtsi | 42 +- .../src/arm64/marvell/cn9130-db-comexpress.dtsi | 96 + .../src/arm64/marvell/cn9131-db-comexpress.dtsi | 108 + .../device-tree/src/arm64/mediatek/mt6358.dtsi | 26 +- .../src/arm64/mediatek/mt7622-bananapi-bpi-r64.dts | 3 +- .../src/arm64/mediatek/mt7986a-bananapi-bpi-r3.dts | 3 +- .../src/arm64/mediatek/mt8173-elm-hana.dtsi | 9 +- .../device-tree/src/arm64/mediatek/mt8173-elm.dtsi | 24 +- .../device-tree/src/arm64/mediatek/mt8173-evb.dts | 3 +- .../device-tree/src/arm64/mediatek/mt8173.dtsi | 8 +- .../device-tree/src/arm64/mediatek/mt8183-evb.dts | 4 + .../arm64/mediatek/mt8183-kukui-audio-da7219.dtsi | 3 +- .../mediatek/mt8183-kukui-audio-ts3a227e.dtsi | 3 +- .../arm64/mediatek/mt8183-kukui-jacuzzi-damu.dts | 3 +- .../mediatek/mt8183-kukui-jacuzzi-fennel-sku1.dts | 3 +- .../mediatek/mt8183-kukui-jacuzzi-fennel-sku6.dts | 3 +- .../mediatek/mt8183-kukui-jacuzzi-fennel-sku7.dts | 3 +- .../mediatek/mt8183-kukui-jacuzzi-makomo-sku0.dts | 24 + .../mediatek/mt8183-kukui-jacuzzi-makomo-sku1.dts | 24 + .../arm64/mediatek/mt8183-kukui-jacuzzi-pico.dts | 35 + .../arm64/mediatek/mt8183-kukui-jacuzzi-pico6.dts | 110 + .../src/arm64/mediatek/mt8183-kukui-jacuzzi.dtsi | 1 - .../arm64/mediatek/mt8183-kukui-kakadu-sku22.dts | 18 + .../src/arm64/mediatek/mt8183-kukui-kakadu.dts | 18 + .../src/arm64/mediatek/mt8183-kukui-kakadu.dtsi | 15 +- .../arm64/mediatek/mt8183-kukui-katsu-sku32.dts | 36 + .../arm64/mediatek/mt8183-kukui-katsu-sku38.dts | 40 + .../src/arm64/mediatek/mt8183-kukui-kodama.dtsi | 3 +- .../src/arm64/mediatek/mt8183-kukui-krane.dtsi | 3 +- .../src/arm64/mediatek/mt8183-kukui.dtsi | 12 +- .../src/arm64/mediatek/mt8183-pumpkin.dts | 4 + .../device-tree/src/arm64/mediatek/mt8183.dtsi | 62 +- .../device-tree/src/arm64/mediatek/mt8186.dtsi | 6 +- .../device-tree/src/arm64/mediatek/mt8188-evb.dts | 387 ++ *** 1525 LINES SKIPPED *** From nobody Mon May 6 08:47:37 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXw5j6CDWz5Jggy; Mon, 06 May 2024 08:47: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 4VXw5j5VYVz507h; Mon, 6 May 2024 08:47:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985257; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nVdHg4KXzKVfdikOJQCbPACRqN7fcC2t1Noon4HpgF0=; b=g1TtBfll7Kpmilye/HFHpdu8DYbDsMuzdzk33PtcA/M0OmFFS883+BcSlrpKRib8n5RZx7 JB0OMhiryBxBNdvVmXlblu7kpCW+WEhM15dGOcOt/CTGzTQ8yRgqt5AwD8Vm4j9nD464WW y93Gy2FF/CFl/jgwAhK3EAQ2l2qkPjnX1lD0HHbNXb7ouVjL7kUF/tQghcSokTnm+oPHi9 ml1BXQSft7Xbca4hR3KIw8wUV+pyUcx8sC4B2aq7HBgKAvVFaHGZHPF82GZJjDz2dJzfL7 iHv7ALZa8zkHvuojzuVuzzzzSzFdgbEzVKcuqwl6cenL/oz3cJ6GUJcCxdi4OA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1714985257; a=rsa-sha256; cv=none; b=LOkG6M3lqvdlijLuX4mJrhCCNYRKduHLA3gwB6A3LVE15OHGQrJsMpy6F6sE40Q2RZ7vhW pafwac/zpP+43lnapTldp4s8euQfiRA3t6g+Y0O3xNKHUhXnCDk2oguJWTC9/6apvOqAM5 K6q/AD5EZffddj/MOwgjI2G2RDzQ7uglfJn/RMxnkER0iz+BU5B4J0fblFQ4Qkfja/Dyzl LmG29RXabtTr4Qk1ph4lxm+yzuxhEuzcp6Gh6CWDHFmhGfnpgeMaRNnNFHx/IUtxbAd/EH ZT/+Od5n0XniIfkzJ1iQ8pZB/Hb/4cNcf5pyoeC7Hm+WR+RaEsm8a/Mmppz/nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1714985257; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nVdHg4KXzKVfdikOJQCbPACRqN7fcC2t1Noon4HpgF0=; b=GfLqi+aFxn31wQZ0x2QCTKGZGLLnOOTQcejartXXp1cUkYycWlLFh6e2jI2vfcTrdQvdPr Za0Ur+pQ6+UMQaYVIQVPFhWryOjPfrmjKL84N/UiamGXojdWaj6/loK8oFHIG6Cvvwp2BR 3UZWtDhnler8yrTYC/GAD/KPcBJdFE+lZ+4ZoDOPmzvmSdsNBbz4gYvYQ8PEP7d5xN7l2Z YTvqnlVvO0F6N2urpvBU3UdqySdinScw5/UExNO+nqV2u9YIVbVkdNZnG2ZteI141TjJJ+ Rp39ey2V3Y//y9DLR5ggnLj78tOUlf6WTtj99ZaX5h0hwV/s616ryNycwkiFAg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VXw5j55yyzqmF; Mon, 6 May 2024 08:47:37 +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 4468lbgH060012; Mon, 6 May 2024 08:47:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4468lbBm060009; Mon, 6 May 2024 08:47:37 GMT (envelope-from git) Date: Mon, 6 May 2024 08:47:37 GMT Message-Id: <202405060847.4468lbBm060009@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Emmanuel Vadot Subject: git: 7929aeebbde1 - main - dts: Bump the freebsd branding version to 6.8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7929aeebbde17fcd7e1eb4e7569aba5e376d5d50 Auto-Submitted: auto-generated The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=7929aeebbde17fcd7e1eb4e7569aba5e376d5d50 commit 7929aeebbde17fcd7e1eb4e7569aba5e376d5d50 Author: Emmanuel Vadot AuthorDate: 2024-05-06 08:47:26 +0000 Commit: Emmanuel Vadot CommitDate: 2024-05-06 08:47:26 +0000 dts: Bump the freebsd branding version to 6.8 Sponsored by: Beckhoff Automation GmbH & Co. KG --- sys/dts/freebsd-compatible.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dts/freebsd-compatible.dts b/sys/dts/freebsd-compatible.dts index c9b8ac5533e3..7d602f70a83b 100644 --- a/sys/dts/freebsd-compatible.dts +++ b/sys/dts/freebsd-compatible.dts @@ -1,3 +1,3 @@ / { - freebsd,dts-version = "6.7"; + freebsd,dts-version = "6.8"; }; From nobody Mon May 6 11:11:36 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXzJ05gmTz5JysX; Mon, 06 May 2024 11:11:44 +0000 (UTC) (envelope-from garyj@gmx.de) Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mout.gmx.net", Issuer "Telekom Security ServerID OV Class 2 CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VXzJ00gcmz41Z9; Mon, 6 May 2024 11:11:43 +0000 (UTC) (envelope-from garyj@gmx.de) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1714993897; x=1715598697; i=garyj@gmx.de; bh=VactG4G0iCC85W+GreR3m+U0I9B937hYkfcRGtNrsn0=; h=X-UI-Sender-Class:Date:From:To:Cc:Subject:Message-ID:In-Reply-To: References:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=neEj7QH27uwXOCT/40b/uDO1Bx8rCPOFtmq29aDZRB+MlykedMWRL18k4OWdNf86 BafOylhHBvZFo0EqQtd35zT6apmnMFpRQfJs0oeajR+n+jtcCZanN5ugHbfPdgOb4 7tZ+ndh/pPnbcwEzBuRewaUtMyqJH9uFjeWO7vLL+cUIsmDmRsY8tLZ8j+1v1D35y /WR79OdwjM/ed2VHo/4fPca9wjScEV6yYtfSEsjoCa6AqlIGQ9Eb8KLdbTZ1MOOg+ sSJtLRJPJJl0YP+Zksv4FKfn+2E1q8FJRr/lmXRGgH3V0Xwjt5mn9+oU+jvmH4w1q z0DbeEuRv3rhuWztIQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from ernst.home ([217.226.50.237]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MWzk3-1s6QGu0i7N-00YqdB; Mon, 06 May 2024 13:11:37 +0200 Date: Mon, 6 May 2024 11:11:36 +0000 From: Gary Jennejohn To: Alexander Leidinger Cc: Randall Stewart , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: fce03f85c5bf - main - TCP can be subject to Sack Attacks lets fix this issue. Message-ID: <20240506131136.1bcf87f9@ernst.home> In-Reply-To: <97c2eddd682d7347b0d26c0f042401bb@Leidinger.net> References: <202405051310.445DAMEO069675@gitrepo.freebsd.org> <97c2eddd682d7347b0d26c0f042401bb@Leidinger.net> Reply-To: garyj@gmx.de X-Mailer: Claws Mail 3.20.0 (GTK+ 2.24.33; amd64-portbld-freebsd15.0) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:nkWoqacq7JuGE0MyKM/jA/RHZAzAJdOkm27KXfkwO7Y8I+ny3ff hNEu+27uSQ3hMcH6DN7ISFdzqPnOEG3NPNFe5gEFm5eeof12nwJxh162f6ruq8OAiqo0M89 jbn2q65k0u1LxAVwvhX6iQ+n1p6yslcZT5dFhQ6cmeDHLXe1WgINabhhbAbrTDa1ghb+guo EV8Zsjn8qcwJmGuIAD41Q== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:RvUOQE9U9wc=;z7dxZ7TdZa//G3W/eG+3X/JkE5G +ffZSwDynajNjA2R3kCPtMIJlJIbToqKErdJOm9Aq0AEKr2YCuQhr80uNAQ8Js2cDb1oOnerk k+A+Sl+oKceeONlBAjBV7jNRmht7/kAmBI/74Gg4dRhcQ70INmTjMxSPV+5RfD45GOG7aehMv jl5/Eh5xjpJO9OHwLCGRtZTUFJ79CIGfa7KsS5+qLFilLigCuq/rL2qY0v4PFPlV/dx5wuSOS tDwwB5V5x9J2sPSmkysDKn/zrdUZNdCSJ/W2+XBqMxbibPqGvB+yn/BAdX8GzGn1QzvKoms8j i504hTOiolhaDSjsm9Kbcrbf74rx5IDmm1vhht+aY7tTvlwXAB4u7HDftu/mP49utCk7+Upu1 tESrVoDFEGQv7nrCK1hvruNj8DDJEx6HoFk5q9C5TUJURyyQyxlrOV5fUT2Y/D67HxcUKIp1J nZTbCGiQ8n7wD2aJHSX7k85fyNjqt0siknqHczozTi1+z69ddbFLilpiQxh7TsBEfINh8HaxE lBAr5Z0dwzZgWBlGUVpCa69d/ATMVbQ72rbGwOBxno2EuMQihbmVOIOyape2mwmiucDfFxIyp LOvUDcjXGfE0oJmwUd5z2W7NppkfTbug4LlW2w0JIMTWhCeQThzTujCgtpod68Is8gOYaq23P iQVnVmREao2ihoyCCy4ES3GpNKlFBWsVGh3cU5unA2Vd/Kbh/VrptmlyE/h4qadyo86YcXvWJ Dqep8H+KUURjxj+YbC8PcnGFYP5jEAh7bZjcwOTkT0IaGO6vTUapia52geQCMinC9naUngXWC GHc4mgxR2v0EzvO1n1bN155YSdZZC3bqin54ICwlpKLeA= X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:8560, ipnet:212.227.0.0/16, country:DE] X-Rspamd-Queue-Id: 4VXzJ00gcmz41Z9 On Mon, 06 May 2024 09:27:31 +0200 Alexander Leidinger wrote: > Am 2024-05-05 15:10, schrieb Randall Stewart: > > The branch main has been updated by rrs: > > > > URL: > > https://cgit.FreeBSD.org/src/commit/?id=3Dfce03f85c5bfc0d73fb5c43ac1af= fad73efab11a > > > > commit fce03f85c5bfc0d73fb5c43ac1affad73efab11a > > Author: Randall Stewart > > AuthorDate: 2024-05-05 13:08:47 +0000 > > Commit: Randall Stewart > > CommitDate: 2024-05-05 13:08:47 +0000 > > > > TCP can be subject to Sack Attacks lets fix this issue. > > > > There is a type of attack that a TCP peer can launch on a > > connection. This is for sure in Rack or BBR and probably even the > > default stack if it uses lists in sack processing. The idea of the > > attack is that the attacker is driving you to look at 100's of sack > > blocks that only update 1 byte. So for example if you have 1 - 10,000 > > bytes outstanding the attacker sends in something like: > > > > ACK 0 SACK(1-512) SACK(1024 - 1536), SACK(2048-2536), SACK(4096 - > > 4608), SACK(8192-8704) > > This first sack looks fine but then the attacker sends > > > > ACK 0 SACK(1-512) SACK(1025 - 1537), SACK(2049-2537), SACK(4097 - > > 4609), SACK(8193-8705) > > ACK 0 SACK(1-512) SACK(1027 - 1539), SACK(2051-2539), SACK(4099 - > > 4611), SACK(8195-8707) > > ... > > These blocks are making you hunt across your linked list and split > > things up so that you have an entry for every other byte. Has your lis= t > > grows you spend more and more CPU running through the lists. The idea > > here is the attacker chooses entries as far apart as possible that mak= e > > you run through the list. This example is small but in theory if the > > window is open to say 1Meg you could end up with 100's of thousands > > link list entries. > > Would it make sense to use a tree list (generic example: > https://commons.apache.org/proper/commons-collections/apidocs/org/apache= /commons/collections4/list/TreeList.html) > instead of a linked list additional/independently to what you committed? > > > diff --git a/sys/netinet/tcp_stacks/sack_filter.c > > b/sys/netinet/tcp_stacks/sack_filter.c > > index e82fcee2ffac..fc9ee8454a1e 100644 > > --- a/sys/netinet/tcp_stacks/sack_filter.c > > +++ b/sys/netinet/tcp_stacks/sack_filter.c > > > #ifndef _KERNEL > > + > > +static u_int tcp_fixed_maxseg(const struct tcpcb *tp) > > +{ > > + /* Lets pretend their are timestamps on for user space */ > > + return (tp->t_maxseg - 12); > > +} > > Typo in the comment? > Yes. Should be Let's as a contraction of Let us. =2D- Gary Jennejohn From nobody Mon May 6 11:17:45 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXzRB5zSRz5K0Mj; Mon, 06 May 2024 11:17:58 +0000 (UTC) (envelope-from garyj@gmx.de) Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mout.gmx.net", Issuer "Telekom Security ServerID OV Class 2 CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VXzR93rCcz42Qf; Mon, 6 May 2024 11:17:57 +0000 (UTC) (envelope-from garyj@gmx.de) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmx.de header.s=s31663417 header.b=dgL0Uamd; dmarc=pass (policy=quarantine) header.from=gmx.de; spf=pass (mx1.freebsd.org: domain of garyj@gmx.de designates 212.227.17.20 as permitted sender) smtp.mailfrom=garyj@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1714994266; x=1715599066; i=garyj@gmx.de; bh=PA78DW1DuKBqWkybW9AJ4WVd7Mduvp+qD1+U0HEQulc=; h=X-UI-Sender-Class:Date:From:To:Cc:Subject:Message-ID:In-Reply-To: References:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=dgL0Uamdo++ihrl8nsTNS8dOu4qrsv26dafLU3XINIweJBqe0Z2L7hnC1Y/O9YI6 3QJ+VXbWlqdTSZfYxM1f63pUhV4MSn15VdwcKXOekackgjog2B5IpF3nDtbXXs+El PMzQZ+4XiLkKvdbGw6dyfZZKbFWAS9pY1WReaN9h43ChlJEPzD+1yD34+wlSNqTaJ YkB3e+7ILWu+nKkWsFj71xcKMW4uHNnOcXzHnIHIeWYUMt/UV+FRLeYjGqCYmM/uO XiEvF1Dgp8PDNmclVx/HSRQczqUKCGwgpCbzYorFxYOrGiHBg0DaOBOlTTiAGCPCl VWRhH8/YX2Dg2r7hyQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from ernst.home ([217.226.50.237]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N1wll-1sjtzs3Oht-012KSU; Mon, 06 May 2024 13:17:45 +0200 Date: Mon, 6 May 2024 11:17:45 +0000 From: Gary Jennejohn To: Alexander Leidinger Cc: Randall Stewart , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: fce03f85c5bf - main - TCP can be subject to Sack Attacks lets fix this issue. Message-ID: <20240506131745.22cde441@ernst.home> In-Reply-To: <20240506131136.1bcf87f9@ernst.home> References: <202405051310.445DAMEO069675@gitrepo.freebsd.org> <97c2eddd682d7347b0d26c0f042401bb@Leidinger.net> <20240506131136.1bcf87f9@ernst.home> Reply-To: garyj@gmx.de X-Mailer: Claws Mail 3.20.0 (GTK+ 2.24.33; amd64-portbld-freebsd15.0) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:UIoMuWQPHpMOX7LCr0jaF+lLxQGY9ED73tn09zxWkutwZ3GB/Cl 3qmy+E6IeaMvyCEeCVLcKVGTEd8cDwEpo7dAd1hE4oZCwCWWlmx/dZcHeZEvy8FOTD+FTBi XKfsKOOnyyE/6xoTwMVpUnzF/g4dmz6TqEhcVNiC+rF6zVXcHrjhZzlAqQaOtloUM0OvZys m3RhFu2z008/K06WZUuHQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:+oSjnazvzvs=;LaBjPp9t0xh9IZDbKUzcmEzTFLW Rdp1ABZwfAnBJIvgUtH7gzu2clQsN+BTr8kOZ5ROQANDQ/gxkFb2zFRmMvEI4aNTL6uDacYrV lAaL5Fv6e1/6rxX3wTR4C7iSNs/8QdIFE6vS+Q3Hn1jYH7+dUGP9+IbSnSvOKNC/F5DjcAM+S qTT6di9SEtcmvZMui0BWQs2IxIYLp/1uJaaOJlmUx3V2iRP7q6TI6FR7QQhkWMiKBqZD5QauY EXWhD2YvhPMrdaVEpR10rfwxjwima91pZ/JuYk5fo056sbVtSsXJZHBuYIWhIjQoIg5m0Ejzx H9ydc8LS0T4SxMepIHcULb0Nl4YEV21Uw6ayr1qxJ+51oMJaVYQGZ+jYxhcf6+r7bhQSzJ+Af 5oV3xGREIm4nX1Z9ZTdYLJfJNf+V9YG1vb4Z3LdipR5YNESzXmbENVYnCwovzfh9HClbspemv a6reArjzCnGxNQq7uw9Rn+/7OYtHgDVTjlbWBi/xwotVHQSf/3fCdvqyhQ3ev+C0At6vOBvvD A7xmGJ7ypPakz3t1Jjim6WahdIt1OXtDZj7Y8cEgy1Me9ncj9ppVxT2IHzhiwVLvOTTWFOY/c lSJhoq/ak4/tBcRs/zk8j6Yc3IRqY/J8/ZxeUSEWXOMgTs2pQrSG6Pe9vTkDTJfNp3kyd7pWE DEPi5l08Ct4PIFC7QGcHTky50KZ5WJ02oI7R6Op6CY/Q0C2XKBp7KpbDVFK24ZnGfMAp4jR78 e6zleKQxg3ehxgwqfAcXzcvvbDNT+213p44kaF51nxo2D9SI1k6JOi+QN9zETbKF0pPn1AwW4 KM9uW2aJZrxh4qZlprp4giIzvI6HKLXLeJN5Jj7TrAz6w= X-Spamd-Bar: - X-Spamd-Result: default: False [-1.98 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.994]; NEURAL_SPAM_SHORT(0.73)[0.725]; NEURAL_HAM_LONG(-0.71)[-0.712]; DMARC_POLICY_ALLOW(-0.50)[gmx.de,quarantine]; R_DKIM_ALLOW(-0.20)[gmx.de:s=s31663417]; R_SPF_ALLOW(-0.20)[+a:mout.gmx.net]; ONCE_RECEIVED(0.10)[]; RCVD_IN_DNSWL_LOW(-0.10)[212.227.17.20:from]; MIME_GOOD(-0.10)[text/plain]; FREEMAIL_REPLYTO(0.00)[gmx.de]; FREEMAIL_ENVFROM(0.00)[gmx.de]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; FREEMAIL_FROM(0.00)[gmx.de]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_ALL(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_FIVE(0.00)[5]; TO_MATCH_ENVRCPT_SOME(0.00)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; DKIM_TRACE(0.00)[gmx.de:+]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; ASN(0.00)[asn:8560, ipnet:212.227.0.0/16, country:DE]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_ONE(0.00)[1]; HAS_REPLYTO(0.00)[garyj@gmx.de] X-Rspamd-Queue-Id: 4VXzR93rCcz42Qf On Mon, 6 May 2024 11:11:36 +0000 Gary Jennejohn wrote: > On Mon, 06 May 2024 09:27:31 +0200 > Alexander Leidinger wrote: > > > Am 2024-05-05 15:10, schrieb Randall Stewart: > > > The branch main has been updated by rrs: > > > > > > URL: > > > https://cgit.FreeBSD.org/src/commit/?id=3Dfce03f85c5bfc0d73fb5c43ac1= affad73efab11a > > > > > > commit fce03f85c5bfc0d73fb5c43ac1affad73efab11a > > > Author: Randall Stewart > > > AuthorDate: 2024-05-05 13:08:47 +0000 > > > Commit: Randall Stewart > > > CommitDate: 2024-05-05 13:08:47 +0000 > > > > > > TCP can be subject to Sack Attacks lets fix this issue. > > > > > > There is a type of attack that a TCP peer can launch on a > > > connection. This is for sure in Rack or BBR and probably even the > > > default stack if it uses lists in sack processing. The idea of the > > > attack is that the attacker is driving you to look at 100's of sack > > > blocks that only update 1 byte. So for example if you have 1 - 10,00= 0 > > > bytes outstanding the attacker sends in something like: > > > > > > ACK 0 SACK(1-512) SACK(1024 - 1536), SACK(2048-2536), SACK(4096 = - > > > 4608), SACK(8192-8704) > > > This first sack looks fine but then the attacker sends > > > > > > ACK 0 SACK(1-512) SACK(1025 - 1537), SACK(2049-2537), SACK(4097 = - > > > 4609), SACK(8193-8705) > > > ACK 0 SACK(1-512) SACK(1027 - 1539), SACK(2051-2539), SACK(4099 = - > > > 4611), SACK(8195-8707) > > > ... > > > These blocks are making you hunt across your linked list and spl= it > > > things up so that you have an entry for every other byte. Has your l= ist > > > grows you spend more and more CPU running through the lists. The ide= a > > > here is the attacker chooses entries as far apart as possible that m= ake > > > you run through the list. This example is small but in theory if the > > > window is open to say 1Meg you could end up with 100's of thousands > > > link list entries. > > > > Would it make sense to use a tree list (generic example: > > https://commons.apache.org/proper/commons-collections/apidocs/org/apac= he/commons/collections4/list/TreeList.html) > > instead of a linked list additional/independently to what you committe= d? > > > > > diff --git a/sys/netinet/tcp_stacks/sack_filter.c > > > b/sys/netinet/tcp_stacks/sack_filter.c > > > index e82fcee2ffac..fc9ee8454a1e 100644 > > > --- a/sys/netinet/tcp_stacks/sack_filter.c > > > +++ b/sys/netinet/tcp_stacks/sack_filter.c > > > > > #ifndef _KERNEL > > > + > > > +static u_int tcp_fixed_maxseg(const struct tcpcb *tp) > > > +{ > > > + /* Lets pretend their are timestamps on for user space */ > > > + return (tp->t_maxseg - 12); > > > +} > > > > Typo in the comment? > > > > Yes. Should be Let's as a contraction of Let us. > And their should be there, which I just noticed. =2D- Gary Jennejohn From nobody Mon May 6 11:17:18 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VXzRV46HXz5K0SW; Mon, 06 May 2024 11:18:14 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Received: from mailgate.Leidinger.net (mailgate.leidinger.net [IPv6:2a00:1828:2000:313::1:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature ECDSA (P-256) client-digest SHA256) (Client CN "mailgate.leidinger.net", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VXzRV1c1Lz42Xh; Mon, 6 May 2024 11:18:14 +0000 (UTC) (envelope-from Alexander@Leidinger.net) Authentication-Results: mx1.freebsd.org; none List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leidinger.net; s=outgoing-alex; t=1714994286; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=kAhkb1GGAqLU8gU1mjtqJc18wECd3RWOPG9CIk2erVk=; b=kT/BFzkQuAF6Rr8SWQ08uyYb1g9cqwkgT5uSy31M7hsLv+d//U1l1D9IzH1S3o/7v143Z9 Iq/Zav4x+QviVfBrJeVips6wq21hJOWDXjLY12Wd7Lt+rF2Fz9uXyWJu9XVBwSW9tAmvaU wZyTAayV3vKcwk1Cboqn7cRkfce1mNcWF/wxqnr4UQM5U9CA53dBnAIYtRHiZMYkzxhEGe +ospZa6GmBpoXmMDTpL9gUYh9mEwW6dUCulJLYMWI4zE9zOqiB0Buii1E2i3qUT+AsArZ8 A40o8V97PzXs4+ZwrNR7ORKBJiK2/gDDZIjQbRp5CP3zfQ0/iZMx/oZkvDbOzQ== Date: Mon, 06 May 2024 13:17:18 +0200 From: Alexander Leidinger To: garyj@gmx.de Cc: Randall Stewart , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: fce03f85c5bf - main - TCP can be subject to Sack Attacks lets fix this issue. In-Reply-To: <20240506131136.1bcf87f9@ernst.home> References: <202405051310.445DAMEO069675@gitrepo.freebsd.org> <97c2eddd682d7347b0d26c0f042401bb@Leidinger.net> <20240506131136.1bcf87f9@ernst.home> Message-ID: Organization: No organization, this is a private message. Content-Type: multipart/signed; protocol="application/pgp-signature"; boundary="=_0476f1244a2466ac6fb366167ea4aae4"; micalg=pgp-sha256 X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:34240, ipnet:2a00:1828::/32, country:DE] X-Rspamd-Queue-Id: 4VXzRV1c1Lz42Xh This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --=_0476f1244a2466ac6fb366167ea4aae4 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed Am 2024-05-06 13:11, schrieb Gary Jennejohn: > On Mon, 06 May 2024 09:27:31 +0200 > Alexander Leidinger wrote: > >> Am 2024-05-05 15:10, schrieb Randall Stewart: >> > diff --git a/sys/netinet/tcp_stacks/sack_filter.c >> > b/sys/netinet/tcp_stacks/sack_filter.c >> > index e82fcee2ffac..fc9ee8454a1e 100644 >> > --- a/sys/netinet/tcp_stacks/sack_filter.c >> > +++ b/sys/netinet/tcp_stacks/sack_filter.c >> >> > #ifndef _KERNEL >> > + >> > +static u_int tcp_fixed_maxseg(const struct tcpcb *tp) >> > +{ >> > + /* Lets pretend their are timestamps on for user space */ >> > + return (tp->t_maxseg - 12); >> > +} >> >> Typo in the comment? >> > > Yes. Should be Let's as a contraction of Let us. As a non-native english speaker I also would change "their" in this place and reword "timestamps on for user space". Bye, Alexander. -- http://www.Leidinger.net Alexander@Leidinger.net: PGP 0x8F31830F9F2772BF http://www.FreeBSD.org netchild@FreeBSD.org : PGP 0x8F31830F9F2772BF --=_0476f1244a2466ac6fb366167ea4aae4 Content-Type: application/pgp-signature; name=signature.asc Content-Disposition: attachment; filename=signature.asc; size=833 Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEER9UlYXp1PSd08nWXEg2wmwP42IYFAmY4vEwACgkQEg2wmwP4 2IYUXw/+Is7SB2fr+ewIsH6MyUSlH2YboWlwXmbJn5yC4npO492x3JJFy1COUXOI 6fbMviyQYHy+FgMhTjfuT2kQwoJI796342K1hnHTHKUqYDFVypko6zZbcBcw2cKX kMSgHcBeinge/FMR69pQQ0jLEQqMhSXfh4Zyod7Dh7spUOjQdROo3lD4cCqVwTZV qc+hodkSkCFZqSdzb7MmNDPZVPKNPQkwhibp68/5U1rwYTfiyY7XD53QOVFPlKsy a89rKur8+aZw55z8UjpnNT8KWQSwsnHxgXmQJ/Ev3g546WmnXc7lNTni+MWg/1qk yT1dwRF6VZGqENbgDPQ1Qgzq3AYzkHnpj3AXUQK51JicH785hUTx9eTo7O7xfONZ 3+XcrZlqWjHIvK9RX4NTcbSY48bY6TwC85lBJAJFbU3NxUQZ4J0xVx8iAkn8XNuG KTZDKq3d/6gCUSOl/dZCwo4S7FIz7BEWHdCv+blZewA9x74MFofOWWlWJubcZfnb JnRWG2sVo7X5WAt5xtqNi18b/uhScXSeb+yQL1GUw8kwqhYTvuxHOsb5D6+2oQdI N9pwz+EKYCIgHBGQ02V3wOSYJB6TE5RXdZM9JfUwxukqYp2IJmdWwIyyI5T7aF2T 3Bwf5Vaunkf2jVFZOrYl8ueEz5pYX7VejsAQ7sbwa6W7A9Qvrrg= =fylh -----END PGP SIGNATURE----- --=_0476f1244a2466ac6fb366167ea4aae4-- From nobody Mon May 6 13:25:16 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY2G50pcTz5KDDZ; Mon, 06 May 2024 13:25: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 4VY2G50FXxz4GCc; Mon, 6 May 2024 13:25:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715001917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ObbTvkWkkLRyEJCmbxBOB6Pmx8SmVqRhFDJrO81piyo=; b=r0Wv/2TBKlhvotxeTBc9B79PCg9xUIOqB7CPSW02BhER9o6YicsjSrZSq12a6n4pG6496E tvvjIu5vkfIpNrLuThmKfyppUDSuH7wIznw3BW0hTtkzF/NUS51wAHHavpR21Byxb2Q/pO UBsiZAnsUnVpDcPS9y8FEmvdSIoHmwibTQJcT9PqItEdxYlpNyhm8jSFArRxjMGTV/4Yu2 6nEmELkJn8rkwyAHOhWHDA4awdloD+LRCURxi6+BA3mWES/OHMnatZiBGabvSSilCj045Z AvkcLind6ZhIaroOnAX+jXLSC/YA6mzhYzA4gqnJbeypzbFrSE4cjBgfLvtxSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715001917; a=rsa-sha256; cv=none; b=lA2X2cPqE7IvjtRqpSdpB/m9SwN8nnrk0ptZa4CMieZoQJNRBtBfC/mMMBZhTJv/MkvncV YtZS+rhSqZWGd9A3pTP8Q7Qg+xO1r1ZnGqDreGWXzi90hm+CVBtmTT8sQ/7i7CjDwBYihA jQZ6u84ilgkgOfXkScd5ijczn/Ky20t3ZTaBhC+0zsVUYbDwVYxtthMf/oF7XX3MmHYSjp 7A4tsaUjU5dwedF6pcbmYiTYuCDdbgTBDuWwNmZA2m3o0ZxzUCmr63BgUFpxL4HYOLC3Ku +ujsZ9qaHtHdG1P4hvcwg88pfEf8PQLFi5mJ+fFbc1Qp0ayKG6fG/jFp6MTYkg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715001917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ObbTvkWkkLRyEJCmbxBOB6Pmx8SmVqRhFDJrO81piyo=; b=SuOr/iZeRqyHBWX2DRqMTAugYExS5aM3AdGMxvNVuEDJiPzlmE5a7U34Dv9hqiijkCDISY 9bL6mhUhbJ/vPIDaHB2Slz24o6xBWXr+MEDseAwDeCjLG5c1isuPqCAOxtPLBgziCtYpw4 CmtFqof3IKkcd78xE/W9hBUh9NZV0/sydqB4RXdbH969Cg5sLpcmNwkiRB+YeU1+ozUvel 16EAsJn+ARYY0IjbLQt6eBca1xljRQ2IqmXvUFQWX6ysM/p0rqy6sEJnOr9fljcXOonkvJ WXHDiapQs0bFZYM9GlfK+yQYUis40GMFXX0lU3TeMGB+6QwQYwsBZfhaMnISWQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY2G46rVvzyyk; Mon, 6 May 2024 13:25: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 446DPGT1034000; Mon, 6 May 2024 13:25:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446DPGk6033997; Mon, 6 May 2024 13:25:16 GMT (envelope-from git) Date: Mon, 6 May 2024 13:25:16 GMT Message-Id: <202405061325.446DPGk6033997@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 43387b4e5740 - main - if: guard against if_ioctl being NULL List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 43387b4e574043b78a58c8bcb7575161b055fce1 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=43387b4e574043b78a58c8bcb7575161b055fce1 commit 43387b4e574043b78a58c8bcb7575161b055fce1 Author: Kristof Provost AuthorDate: 2024-05-06 09:39:08 +0000 Commit: Kristof Provost CommitDate: 2024-05-06 09:39:08 +0000 if: guard against if_ioctl being NULL There are situations where an struct ifnet has a NULL if_ioctl pointer. For example, e6000sw creates such struct ifnets for each of its ports so it can call into the MII code. If there is then a link state event this calls do_link_state_change() -> rtnl_handle_ifevent() -> dump_iface() -> get_operstate() -> get_operstate_ether(). That wants to know if the link is up or down, so it tries to ioctl(SIOCGIFMEDIA), which doesn't go well if if_ioctl is NULL. Guard against this, and return EOPNOTSUPP. PR: 275920 MFC ater: 3 days Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/net/if.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/net/if.c b/sys/net/if.c index 9f44223af0dd..c3c27fbf678f 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -4871,6 +4871,9 @@ if_resolvemulti(if_t ifp, struct sockaddr **srcs, struct sockaddr *dst) int if_ioctl(if_t ifp, u_long cmd, void *data) { + if (ifp->if_ioctl == NULL) + return (EOPNOTSUPP); + return (ifp->if_ioctl(ifp, cmd, data)); } From nobody Mon May 6 16:19:20 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY66w4QNHz5KWc0; Mon, 06 May 2024 16:19: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 4VY66w3vndz4Zgs; Mon, 6 May 2024 16:19:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012360; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T3ge//IGrqSYaBASECvdgddKqzr6+EDEiJWtDrqiLM0=; b=oWNK7ab1Hz2onNLgMgUXIN20QTxlpigXBYQgHBpmypIKym9OB2CUKCQP6deYsxS1T0oGGk aWIiBtVjhTZNBlwsNLqcIH4zZhHvPq+BhrZNZUk9UNWUYtwivcftF0nXcNKVTh1bgdH3gH sOvDuEpBzEX+v2y2aQEigRSY8ADjn5QX/1kAIstHLqC4nbzyvMOHQR6WtdZIJrhU5iiPCU RDs2pD2Y+L+ewCFLAD/RycuiR3ZddFItCPASHE6vAta+8P37kB6CAw25zk8jkx5YtT6Ivi i8vOIwW4ehB71UB6LSwx4QfMmYM0H9CS4xMNj1aY/8mLcZPfY7/eJofnqQy4oQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715012360; a=rsa-sha256; cv=none; b=MiF9dYYoQoZ7YH9L/I8t0WEHDy8ZRL4lQClvdGvLESDrjPInsGMK6rJA7bWhw2dojYY3nJ KLn4nhRTc+PYV3v4PswgyGtOZC1KrV4ml9GP0LWyLxU0FKVIsRNismoSJAWdZvXHcmuHCo NkhhkdZyYx8Ru1N1R12ID2KDZuRtOGpP5Hncw/Yn7j+mal4yuy0vlPJKv2G/ziAGVrc3zg pHwWcirE62LR+i4Us5oQeXU/kEBNxXyiPdp/fJ/FwbDBsATWGNF2SP+QQcusaDs5RHUp07 HbC+hnH3R3Oskrd12L2oAxmTc8i9W0EbRvbxRjdJyUl/K1IpzgMVS/iXpC5ssA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012360; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T3ge//IGrqSYaBASECvdgddKqzr6+EDEiJWtDrqiLM0=; b=g1tHb/TUrio6O+js1jP4mEhG2JvQnamPjMRm5U96965eSqPCKv4d8ywsgRZ4KeFdpTs6rH o5357/6zGEfnYZeD4V55jpUf6TNa68C+hrdVoixiZw/iILzTf3utJQPZOhvtgKMSZMmy0S 9Gm8pQx38j7HGbHLYHxpnc/BzBS3ik8077sh2UTuhcE8TDAoFdirOJVrmk0ZTILlLs+t1r 0PrFaG5Hy9Z+QUQEADGGpZs4PEd2yOPmLgqeU47ooPnUvychBE1vSwJepw6BulEINYX3I8 URXmsf0oJWrdEzKxAOwG+eBfsA/h6zCNz6FJSlcndR6IwSj2PiQdOGC8FKcjog== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY66w3WGgz14Lk; Mon, 6 May 2024 16:19: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 446GJKIG022704; Mon, 6 May 2024 16:19:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446GJKwV022701; Mon, 6 May 2024 16:19:20 GMT (envelope-from git) Date: Mon, 6 May 2024 16:19:20 GMT Message-Id: <202405061619.446GJKwV022701@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: a9ea647c29cf - main - pw: Rename some enums. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a9ea647c29cf510a164947251de0d34f53f2bca0 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=a9ea647c29cf510a164947251de0d34f53f2bca0 commit a9ea647c29cf510a164947251de0d34f53f2bca0 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-06 16:18:39 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-06 16:18:39 +0000 pw: Rename some enums. Rename `M_PRINT` and `M_UPDATE` to `M_SHOW` and `M_MODIFY` to match the names of the commands they represent. No functional change intended. MFC after: 3 days Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D45096 --- usr.sbin/pw/pw.h | 20 ++++++++++---------- usr.sbin/pw/pw_group.c | 4 ++-- usr.sbin/pw/pw_user.c | 6 +++--- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/usr.sbin/pw/pw.h b/usr.sbin/pw/pw.h index 5de333ce5e71..e8ec95079fec 100644 --- a/usr.sbin/pw/pw.h +++ b/usr.sbin/pw/pw.h @@ -36,14 +36,14 @@ enum _mode { - M_ADD, - M_DELETE, - M_UPDATE, - M_PRINT, + M_ADD, + M_DELETE, + M_MODIFY, + M_SHOW, M_NEXT, M_LOCK, M_UNLOCK, - M_NUM + M_NUM }; enum _passmode @@ -56,13 +56,13 @@ enum _passmode enum _which { - W_USER, - W_GROUP, - W_NUM + W_USER, + W_GROUP, + W_NUM }; -#define _DEF_DIRMODE (S_IRWXU | S_IRWXG | S_IRWXO) -#define _PW_CONF "pw.conf" +#define _DEF_DIRMODE (S_IRWXU | S_IRWXG | S_IRWXO) +#define _PW_CONF "pw.conf" #define _UC_MAXLINE 1024 #define _UC_MAXSHELLS 32 diff --git a/usr.sbin/pw/pw_group.c b/usr.sbin/pw/pw_group.c index 32dec769fb1a..b2777177b9e6 100644 --- a/usr.sbin/pw/pw_group.c +++ b/usr.sbin/pw/pw_group.c @@ -697,11 +697,11 @@ pw_group_mod(int argc, char **argv, char *arg1) if ((grp = GETGRNAM(name)) == NULL) errx(EX_SOFTWARE, "group disappeared during update"); - pw_log(cnf, M_UPDATE, W_GROUP, "%s(%ju)", grp->gr_name, + pw_log(cnf, M_MODIFY, W_GROUP, "%s(%ju)", grp->gr_name, (uintmax_t)grp->gr_gid); if (nis && nis_update() == 0) - pw_log(cnf, M_UPDATE, W_GROUP, "NIS maps updated"); + pw_log(cnf, M_MODIFY, W_GROUP, "NIS maps updated"); return (EXIT_SUCCESS); } diff --git a/usr.sbin/pw/pw_user.c b/usr.sbin/pw/pw_user.c index 6875d931a1d2..66f021fff983 100644 --- a/usr.sbin/pw/pw_user.c +++ b/usr.sbin/pw/pw_user.c @@ -146,7 +146,7 @@ create_and_populate_homedir(struct userconf *cnf, struct passwd *pwd, copymkdir(conf.rootfd, pwd->pw_dir, skelfd, homemode, pwd->pw_uid, pwd->pw_gid, 0); - pw_log(cnf, update ? M_UPDATE : M_ADD, W_USER, "%s(%ju) home %s made", + pw_log(cnf, update ? M_MODIFY : M_ADD, W_USER, "%s(%ju) home %s made", pwd->pw_name, (uintmax_t)pwd->pw_uid, pwd->pw_dir); } @@ -1787,7 +1787,7 @@ pw_user_mod(int argc, char **argv, char *arg1) if (pwd == NULL) errx(EX_NOUSER, "user '%s' disappeared during update", name); grp = GETGRGID(pwd->pw_gid); - pw_log(cnf, M_UPDATE, W_USER, "%s(%ju):%s(%ju):%s:%s:%s", + pw_log(cnf, M_MODIFY, W_USER, "%s(%ju):%s(%ju):%s:%s:%s", pwd->pw_name, (uintmax_t)pwd->pw_uid, grp ? grp->gr_name : "unknown", (uintmax_t)(grp ? grp->gr_gid : (uid_t)-1), @@ -1808,7 +1808,7 @@ pw_user_mod(int argc, char **argv, char *arg1) } if (nis && nis_update() == 0) - pw_log(cnf, M_UPDATE, W_USER, "NIS maps updated"); + pw_log(cnf, M_MODIFY, W_USER, "NIS maps updated"); return (EXIT_SUCCESS); } From nobody Mon May 6 16:19:21 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY66x5Qgkz5KWW1; Mon, 06 May 2024 16:19: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 4VY66x4xsnz4ZmL; Mon, 6 May 2024 16:19:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BsHQereJrnRgtfb2hJ1m0efahdgtiDcdB9PAk/MC5JE=; b=qdGKw9aiLAh1H5T+a/lSpI+aHUg/VXfsx9eWpgQmiA9Pzu+8Td/9Z9/zsFcKFhXc+RrFoa pSn+zPxQSjhcruij1Q8MKZ+NaMmfZPU72SrfFg5pp7NSnYklw+20Vl5wmGMm2/h0oOz0a5 yfOMkAQnYJ60MAhMF9vh53qQSsa7ngSNfQbX0PWz63FeahH6C7bRm4iT7ujhfAdswuYpkV PMH5RtNjtbCducx7zUIN0BWmdXtihUq7BgVFD4h9zJc5vq/TUSZk/G/4n2dQFrh9uYvtIW 30wcrazVmdCOxX1yiBIBeYtvRsiuPgOZEP7AbfbY4HjXTqfFBFbd1+YAfgbyzQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715012361; a=rsa-sha256; cv=none; b=vcssgfnHbIeN3f/ONspTBx29QWypptM57UBw25UEIbbMPXuP8HM45LC44F9ZDrYj2x5wCR BhaUwAvpD1l69p1Ge+U7/3M715xZ3DTFSkFaMVtYa4nFv+4hydGtI7K1zfYsijHVo1WZOl xC051TmV6S6Htf2QYfxbAInIY+z5AEIeMeiFhlb7Qk75phtahj2/1BkidSg+/QgLnxIp/j gpovwsS5LS+x1V+KL5a5eIYqbwukVygnj3XU1TbaCsgd4gZH2kEnxM9dZ4CowdyqvGLJQi sdjayGNkgxMuf1AuMyTYuSvfiVjSPMCteIB3FuUBJqxiEpqqh6TZzT4NUyNBTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BsHQereJrnRgtfb2hJ1m0efahdgtiDcdB9PAk/MC5JE=; b=N7t4vvfL44UJkjp6BzIg5U4Gs+HFuDOnHLpcnXG8RR5r6K0jF6nPjqbsy8NsWjWeAJwhZK bqM7kzMpirwfx5O0+zwB3P34yiq5BFqdmSPkXKv2rLumULpB+0xNRB6Rrp9yX2+z8R9HI0 E5KdgK1Nk+7xCorKMEi8xImoNzrIBv7VcXNCcEP6fRdBHNJ40c04gPQzBacqtGo1KBy6tW oDpwhQrU9cfZH4J7Iz1xQ8+7LFWU5yFHuxYAhDlZiFWaYhzJuySUjqpYKyu/iRHeZI7l0Q GZMXIKGN+ZMqKn7dCOzLi/+GwiljW4UEvvFzq3i2k/rJBYUVvwoLx7u8X+LPQA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY66x4Y66z13tK; Mon, 6 May 2024 16:19: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 446GJLSK022759; Mon, 6 May 2024 16:19:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446GJLPG022756; Mon, 6 May 2024 16:19:21 GMT (envelope-from git) Date: Mon, 6 May 2024 16:19:21 GMT Message-Id: <202405061619.446GJLPG022756@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: c86119328e6b - main - pw: Don't silently ignore unparsed command line arguments. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c86119328e6b2cfeb4f9319f6b154524d88caaf4 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=c86119328e6b2cfeb4f9319f6b154524d88caaf4 commit c86119328e6b2cfeb4f9319f6b154524d88caaf4 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-06 16:18:43 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-06 16:18:43 +0000 pw: Don't silently ignore unparsed command line arguments. MFC after: 3 days Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D45097 --- usr.sbin/pw/pw.c | 13 +++++++++++-- usr.sbin/pw/pw.h | 2 ++ usr.sbin/pw/pw_group.c | 31 ++++++++++++++++++++++++++----- usr.sbin/pw/pw_user.c | 42 +++++++++++++++++++++++++++++++++++------- 4 files changed, 74 insertions(+), 14 deletions(-) diff --git a/usr.sbin/pw/pw.c b/usr.sbin/pw/pw.c index 063553dd084f..fc17f6dba022 100644 --- a/usr.sbin/pw/pw.c +++ b/usr.sbin/pw/pw.c @@ -101,13 +101,16 @@ static int (*cmdfunc[W_NUM][M_NUM])(int argc, char **argv, char *_name) = { struct pwconf conf; +static int mode = -1; +static int which = -1; + static int getindex(const char *words[], const char *word); static void cmdhelp(int mode, int which); int main(int argc, char *argv[]) { - int mode = -1, which = -1, tmp; + int tmp; struct stat st; char arg, *arg1; bool relocated, nis; @@ -375,5 +378,11 @@ cmdhelp(int mode, int which) fprintf(stderr, "%s", help[which][mode]); } - exit(EXIT_FAILURE); + exit(EX_USAGE); +} + +void +usage(void) +{ + cmdhelp(mode, which); } diff --git a/usr.sbin/pw/pw.h b/usr.sbin/pw/pw.h index e8ec95079fec..c3725693f91d 100644 --- a/usr.sbin/pw/pw.h +++ b/usr.sbin/pw/pw.h @@ -114,3 +114,5 @@ uintmax_t strtounum(const char * __restrict, uintmax_t, uintmax_t, const char ** __restrict); bool grp_has_member(struct group *grp, const char *name); + +void usage(void); diff --git a/usr.sbin/pw/pw_group.c b/usr.sbin/pw/pw_group.c index b2777177b9e6..1941c03aa2c5 100644 --- a/usr.sbin/pw/pw_group.c +++ b/usr.sbin/pw/pw_group.c @@ -273,9 +273,13 @@ pw_group_next(int argc, char **argv, char *arg1 __unused) quiet = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (quiet) freopen(_PATH_DEVNULL, "w", stderr); @@ -332,9 +336,13 @@ pw_group_show(int argc, char **argv, char *arg1) all = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (quiet) freopen(_PATH_DEVNULL, "w", stderr); @@ -391,9 +399,13 @@ pw_group_del(int argc, char **argv, char *arg1) nis = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (quiet) freopen(_PATH_DEVNULL, "w", stderr); @@ -551,9 +563,13 @@ pw_group_add(int argc, char **argv, char *arg1) nis = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (quiet) freopen(_PATH_DEVNULL, "w", stderr); @@ -645,9 +661,14 @@ pw_group_mod(int argc, char **argv, char *arg1) nis = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); + if (quiet) freopen(_PATH_DEVNULL, "w", stderr); cnf = get_userconfig(cfg); diff --git a/usr.sbin/pw/pw_user.c b/usr.sbin/pw/pw_user.c index 66f021fff983..89354b249935 100644 --- a/usr.sbin/pw/pw_user.c +++ b/usr.sbin/pw/pw_user.c @@ -708,9 +708,13 @@ pw_user_next(int argc, char **argv, char *name __unused) quiet = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (quiet) freopen(_PATH_DEVNULL, "w", stderr); @@ -772,9 +776,13 @@ pw_user_show(int argc, char **argv, char *arg1) v7 = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (quiet) freopen(_PATH_DEVNULL, "w", stderr); @@ -855,9 +863,13 @@ pw_user_del(int argc, char **argv, char *arg1) nis = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (quiet) freopen(_PATH_DEVNULL, "w", stderr); @@ -1003,9 +1015,13 @@ pw_user_lock(int argc, char **argv, char *arg1) /* compatibility */ break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); return (pw_userlock(arg1, M_LOCK)); } @@ -1022,9 +1038,13 @@ pw_user_unlock(int argc, char **argv, char *arg1) /* compatibility */ break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); return (pw_userlock(arg1, M_UNLOCK)); } @@ -1291,9 +1311,13 @@ pw_user_add(int argc, char **argv, char *arg1) nis = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (geteuid() != 0 && ! dryrun) errx(EX_NOPERM, "you must be root"); @@ -1604,9 +1628,13 @@ pw_user_mod(int argc, char **argv, char *arg1) nis = true; break; default: - exit(EX_USAGE); + usage(); } } + argc -= optind; + argv += optind; + if (argc > 0) + usage(); if (geteuid() != 0 && ! dryrun) errx(EX_NOPERM, "you must be root"); From nobody Mon May 6 16:19:22 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY66z1k2Fz5KWkD; Mon, 06 May 2024 16:19: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 4VY66y5zVmz4ZkK; Mon, 6 May 2024 16:19:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HbdewNQkyax5jt73k8tRzQVR304ctepbk7doz82SxqY=; b=bxKsFQM+iQQshKAWmJNJCy3K67kGEcF5g6P2cdajZajKzRP9eiLLLcIEnMsM8IxOlEsdag Wvj6vrGeicEevXMStPb8tV+fttMLmNMFwNrg6DH0efB8oaeDYlNyGaSwXwF8kOGm7PdpRT lJ02UfsCjCXAunBBhC2HIGzomZBnyz26ggltOW/dIRGeGFeRgwpe0WV3f9udZhMIzYdlS3 h6LnYKh/hFgYaOoE4PrnrE1LpOx78ifF4YP9zfZpwClcJ85z5fqaljmGG91bU7ibGyN7Ay W+DwIo0oCLm2lWXzFldGwQs1YgIx2oDKcSwj6KMYexSB8MoeIr57QA/IfhQriA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715012362; a=rsa-sha256; cv=none; b=YUY1nf+l9zkkRpJsIwmLBop+EFf//pmOm3DixmYD2J/zzNr9ocQy9EuRlb3s5gA4BNV2sF zdp0GgJZCzm2nKCdcRKkmoKifY/oEsmAgquhc9wPvkHgGZ5jULxhm9CfoQP5YULKiF4rPQ 3fjGy9YqEDlXwxGsXSXse7KFU/KxiZwPshmausijnuURTznAIsgHxOi0UDp/i51vRnzu+x lpKapQuX2+QVm80KhbJInKcdKDocYF2qhnDUw9oz0lcI5PHBqrYG/ktlOHypw90wQ+IxhR 6rpsPUJemeVCY+vhv0/gSKBwZfqmm298/+rEUtf/hDjEnyrguoTNswUNKM4rzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HbdewNQkyax5jt73k8tRzQVR304ctepbk7doz82SxqY=; b=UODAh+81O/F0uGlJpPS7R+b2NXM69fBJ8vrAkUWfKtVfmIMOKftuFg2XZoyWA1e9wlBV2i JTge8J8w+K10Eane5BMZ4ifq/zC3jtwxnVE5oK3nIn1+XCW7TVf43gqTZAjsOcBLNF2PoS AXMfX1RJd58ftuO53Aia91KZr3Ylp7KR1ajCGR3B9zT5B7RrY6Qb+FIQ+euDppEhdFaCBo eYh+/CFqWImTNEzi6sA0ZEU4+M67qMGaRs848DYowkViEO1lo7iXC5Ep1v0u1aKoM0y7KT JsM9zyh+mCu4yEXsHXHg4Hhvpjs3j0zRIwIdhxes7Qukn2MxX7IOZB6L24PWiA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY66y5ZGsz13tL; Mon, 6 May 2024 16:19: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 446GJMGS022811; Mon, 6 May 2024 16:19:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446GJMmL022808; Mon, 6 May 2024 16:19:22 GMT (envelope-from git) Date: Mon, 6 May 2024 16:19:22 GMT Message-Id: <202405061619.446GJMmL022808@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 46c4e86ebf18 - main - adduser: Fix confusion between `uclass` and `_class`. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 46c4e86ebf1819fc09084c8aa79423d96fcaad4a Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=46c4e86ebf1819fc09084c8aa79423d96fcaad4a commit 46c4e86ebf1819fc09084c8aa79423d96fcaad4a Author: Dag-Erling Smørgrav AuthorDate: 2024-05-06 16:18:47 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-06 16:18:47 +0000 adduser: Fix confusion between `uclass` and `_class`. This caused adduser to produce an invalid `pw(8)` command line. Due to bugs in `pw(8)`, the command line was silently accepted and led to the user being created, but locked out and with no home directory. Also fix the default value for the “Another user?” prompt. Fixes: 170d0882903e MFC after: 3 days Reviewed by: karels, allanjude Differential Revision: https://reviews.freebsd.org/D45098 --- usr.sbin/adduser/adduser.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/usr.sbin/adduser/adduser.sh b/usr.sbin/adduser/adduser.sh index e9027b6b7876..61a4b3b5058f 100644 --- a/usr.sbin/adduser/adduser.sh +++ b/usr.sbin/adduser/adduser.sh @@ -194,7 +194,7 @@ save_config() { # add_user() { local _uid _name _comment _gecos _home _group _grouplist _shell _class - local _dotdir _expire _pwexpire _passwd _upasswd _passwdmethod + local _dotdir _expire _pwexpire _passwd _upasswd _passwdmethod _pwcmd # Is this a configuration run? If so, don't modify user database. # @@ -519,7 +519,7 @@ get_uid() { # Reads login class of account. Can be used in interactive or batch mode. # get_class() { - local _input _uclass + local _input _class uclass="$defaultclass" _class=${uclass:-"default"} @@ -740,7 +740,6 @@ input_interactive() { local _logingroup_ok="no" local _groups_ok="no" local _all_ok="yes" - local _another_user="no" case $passwdtype in none) _emptypass="yes" @@ -1129,6 +1128,7 @@ if [ -n "$fflag" ]; then else input_interactive while : ; do + _another_user="no" if [ -z "$configflag" ]; then echo -n "Add another user? (yes/no) [$_another_user]: " else From nobody Mon May 6 16:19:23 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY670134hz5KWYJ; Mon, 06 May 2024 16:19: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 4VY66z70mMz4ZkW; Mon, 6 May 2024 16:19:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012364; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WTngl1O7dkyFyP22v4Gk9eMpN9UbJUnFdLaAk9XTrDo=; b=IVwkbOo9gyM4ewGq/ohM0QsTgDbCMpIRtoxFSAopkunvvl1Xyui6nlrw0DEGHH/Nz+my1A XgOEHlmDaJTVcOdR30w6H7zMKG6pgYqhMe5cyQ2A/KCKIUnqNJgPfiiiIjkQSCNOGp8yOi gQgg+oNAYUCvtuPm1BG4bdT5A3P1Y9B5O34amkRlJEqREUe2VQNEkhwxA9Re3LF8/BDdoO w/BnOApzGBptHO4lMnNqQukD8lTzHUyxoR/od7LjV+VaQ1YRoBJtinX4jJa+69mwp6v/VH cdDaODvVg4RluC/aO8NPV1mMz6kEMbEPAgqG0lNrHmkrBxfKf5B1vEs10vfGlQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715012364; a=rsa-sha256; cv=none; b=uDiYVexi/IQN3AOChyss5d6y4So43YUiaUpXRRNlc20GfmqJkJeKe0LpH7XfzZmsGJ2L6B 07pTqw3Dyx9VJ5RhI9l1+8yeR58jxUxvQW5OJNmhHFaopr0AbN4BO3unD5HVwYAIhCfBtl BDcL/COUFiX4RiQt4Aez5b+5K9r5FEF1tx1oxO6MttAAlrLF7Ayp78VobQbTBQwsM+iar1 y7S7PkyFGGRKaroUsAF3K8jeERWRpTm5A0XNf8WDjpqcehVnCpFbJ9SJJFUAnVPHN9FL2+ yK1Q5jFS3bBpy2Rdd7i0AbjEpPAG/lDkCIw+RqYkG9MBuA3sw07tTmJKfViozQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715012364; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WTngl1O7dkyFyP22v4Gk9eMpN9UbJUnFdLaAk9XTrDo=; b=c0PTsbdSkAHVoJogBWMlHhWPrwHaCOCvgkr+ggEmGldg04lOpOe+y86v2/pAfcOSzDldeT m+S2X8fK+pdf+PPEAhWObxZ1K27sZ9Erx8gCWYHuk9dk7Xj5Jlch9OY2lyOU3wRQTgAEuf a6y1BIug1AqlPWEnbQ1MgARNwuiFeo8yPjAqRh7h/tjH8RkuSSkkpv7B/JfDuntU14R9Tc Nbcvab0jqgVmXYEeJv+3WanNwh2n3+BYO4MNXBC8sJyOglNkGyr2rlb+vkHIemASz2T/H3 9s0Fy4Pukwx5GGFsQD5abbpGURqNeBwtpZM8qAKmRs7igc+eILBpX9ceZVGGIg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY66z6cTrz13qP; Mon, 6 May 2024 16:19: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 446GJNMo022862; Mon, 6 May 2024 16:19:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446GJNjk022859; Mon, 6 May 2024 16:19:23 GMT (envelope-from git) Date: Mon, 6 May 2024 16:19:23 GMT Message-Id: <202405061619.446GJNjk022859@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: e12b7446bddc - main - pw: Test home directory ownership and mode. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e12b7446bddcb91b869abef6048910cc15185a33 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=e12b7446bddcb91b869abef6048910cc15185a33 commit e12b7446bddcb91b869abef6048910cc15185a33 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-06 16:18:50 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-06 16:18:50 +0000 pw: Test home directory ownership and mode. MFC after: 3 days Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D45099 --- usr.sbin/pw/tests/pw_useradd_test.sh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/usr.sbin/pw/tests/pw_useradd_test.sh b/usr.sbin/pw/tests/pw_useradd_test.sh index 3b495482eb05..b4efa42bada7 100755 --- a/usr.sbin/pw/tests/pw_useradd_test.sh +++ b/usr.sbin/pw/tests/pw_useradd_test.sh @@ -313,6 +313,22 @@ user_add_R_intermed_body() { test -d ${HOME}/a/b/c/foo || atf_fail "user directory not created" } +atf_test_case user_add_dir +user_add_dir_body() { + populate_root_etc_skel + + atf_check -s exit:0 ${RPW} useradd foo -M 0705 -m + atf_check grep -q '^foo:' $HOME/etc/master.passwd + atf_check test -d ${HOME}/home/foo + atf_check -o save:ugid \ + awk -F: '$1 == "foo" { print $3, $4 }' \ + $HOME/etc/master.passwd + atf_check -o file:ugid \ + stat -f '%u %g' ${HOME}/home/foo + atf_check -o inline:"40705\n" \ + stat -f '%p' ${HOME}/home/foo +} + atf_test_case user_add_skel user_add_skel_body() { populate_root_etc_skel @@ -511,6 +527,7 @@ atf_init_test_cases() { atf_add_test_case user_add_R atf_add_test_case user_add_R_no_symlink atf_add_test_case user_add_R_intermed + atf_add_test_case user_add_dir atf_add_test_case user_add_skel atf_add_test_case user_add_uid0 atf_add_test_case user_add_uid_too_large From nobody Mon May 6 16:44:09 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY6gZ07Zhz5KYvQ; Mon, 06 May 2024 16:44: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 4VY6gY6X5yz4dQF; Mon, 6 May 2024 16:44:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715013849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ttis8co9wZDPZiDuocX375qcDjCoUeE0I3D+spOFHBI=; b=SdX7m1iTPVuE+8ZrcwyWREAWcxjik/qVc3+dIe8NSV3EpSvvf06e0pcrKU/AVtQId8WtIa e1iqzvCJqmZ26jsFueodiERyVa3mG1WCLJLvMS2BXHrb1g4mg9Xy8DKQSKprKSaVDzGEXt JqSUuTZzB8JvDFnv7oIroRResUsh0aWX/XS4+px19faNL7k0frXGpOwxBBn+s4t+JAKkhv B8cQeQwrUN42e7x+ZKHz5XdmU3ZUTbaFlY4oyed95XHipvO/GbARlREB2QQ5NfTCUisU3k vUM7LR9joeC+Y1cDciJWsNZuscsMtYuGNws3EuU7i4673uT2gv6d6FDMm/1Ezw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715013849; a=rsa-sha256; cv=none; b=qZyNd+Fr/KxAPkcCNBQPIFWtQF53pnT4czRNCM23vTpe/AwRVZGUofU5m77jFRiAtWAEzv rKXvvMrAnWqGBT+fIqT5e3y/9GOBeSEPYN0+ORac0a8lqaR8EiS8kfYBJipKNPS38EiA9U fFA294sP/n1hA0sI1megbtZMdNjBDqIiRZAJh0PPxqpYWUdmxNFFdf1andfPhMdX5d6xDp 9Bhyvbiu6TfDCcft/0FgJDnkOvOE9C0AbEL4fvkMuQuTe1J6Dlp0YvtJiRRq2q0qyJ9C5G IZAT0nP5SQt+mH9lyqXjHN+2i1J+PsTJRpkReAEu1a234ixM74KCvohmEc62rw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715013849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ttis8co9wZDPZiDuocX375qcDjCoUeE0I3D+spOFHBI=; b=PCvxJJaSx+EnyB5jINMuWORYWAcGe41+Bt0cEqguo9faUKbFhqcdHWiYhi+crJTvo6jO9k oVZzVd2/D5d2uKB90jwO77olIrg7FJN8MUW4xhQW8Mk2SnWhgP6v+ni4U74iUtYJWXKCJ6 XQsZjUYCNPDMucvW5w2kKXO7FIsBv+HMx4l+uKwwJPnya9rF0WH0LARA4ERtqU6Nsyhfai 82H5jLkMgpGqwvttHA41/qWN8bbieKFKW3jT1U6LWa5PHwZOigX66Kkg90OYIIHQCdGKaB YucccF3qzHXBsnUsyIxp5kA484wm7EQ6vIidLsYxRueeX86BY1McwENjllbl1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY6gY66SZz14jJ; Mon, 6 May 2024 16:44: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 446Gi9g3071973; Mon, 6 May 2024 16:44:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446Gi9Co071970; Mon, 6 May 2024 16:44:09 GMT (envelope-from git) Date: Mon, 6 May 2024 16:44:09 GMT Message-Id: <202405061644.446Gi9Co071970@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 1314d14c3271 - main - endian.h: Define uint{16,32,64}_t List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1314d14c32713b448738cc821c04a5e7482bb4af Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=1314d14c32713b448738cc821c04a5e7482bb4af commit 1314d14c32713b448738cc821c04a5e7482bb4af Author: Warner Losh AuthorDate: 2024-05-06 15:10:46 +0000 Commit: Warner Losh CommitDate: 2024-05-06 16:43:14 +0000 endian.h: Define uint{16,32,64}_t The Draft Posix Issue 8 standard requires that these be defined. Define them in the usual way that lets multiple headers define them. Opted to not just use #include , allowed by the draft, to be conservative. Add notes about how we comply with Issue 8, and that we've opted to define these only as macros, though the standard allows functions, macros or both. Sponsored by: Netflix --- include/endian.h | 26 +++++++++++++++++++++++++- sys/sys/_endian.h | 6 ++++-- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/include/endian.h b/include/endian.h index eb25cedf0bef..87ec7866c791 100644 --- a/include/endian.h +++ b/include/endian.h @@ -11,9 +11,33 @@ #ifndef _ENDIAN_H_ #define _ENDIAN_H_ +/* + * POSIX Issue 8 requires that endian.h define uint{16,32,64}_t. Although POSIX + * allows stdint.h symbols here, be conservative and only define there required + * ones. FreeBSD's sys/_endian.h doesn't need to expose those types since it + * implements all the [bl]eXtoh hto[bl]eX interfaces as macros calling builtin + * functions. POSIX allows functions, macros or both. We opt for macros only. + */ +#include + +#ifndef _UINT16_T_DECLARED +typedef __uint16_t uint16_t; +#define _UINT16_T_DECLARED +#endif + +#ifndef _UINT32_T_DECLARED +typedef __uint32_t uint32_t; +#define _UINT32_T_DECLARED +#endif + +#ifndef _UINT64_T_DECLARED +typedef __uint64_t uint64_t; +#define _UINT64_T_DECLARED +#endif + /* * FreeBSD's sys/_endian.h is very close to the interface provided on Linux by - * glibc's endian.h. + * glibc's endian.h as well as POSIX Issue 8's endian.h. */ #include diff --git a/sys/sys/_endian.h b/sys/sys/_endian.h index 8d1eb3f3f3df..d0ffd87efa11 100644 --- a/sys/sys/_endian.h +++ b/sys/sys/_endian.h @@ -69,8 +69,10 @@ /* * POSIX Issue 8 will require these for endian.h. Define them there and in the - * traditional BSD compilation environment. Since issue 8 doesn't yet have an - * assigned date, use strictly greater than issue 7's date. + * traditional BSD compilation environment. PDP_ENDIAN isn't strictly in Issue + * 8, but is allowed as implementations can define any *_ENDIAN symbol. Since + * issue 8 doesn't yet have an assigned date, use strictly greater than issue + * 7's date. */ #if __BSD_VISIBLE || _POSIX_C_SOURCE > 200809 #define LITTLE_ENDIAN _LITTLE_ENDIAN From nobody Mon May 6 17:14:17 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY7LK6XKtz5Kc7p; Mon, 06 May 2024 17:14: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 4VY7LK5gGMz4hjm; Mon, 6 May 2024 17:14:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715015657; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fcXrGjW4mqG06dtQqqCuFxx7bjG/Bc10RKuVUts3QHM=; b=VnOe9v4jsIcpO8mdPLQUeja4oTQTM6/j3agIDlaWhW0hsvl18099mrLNaocCScdpMLggA6 vgN50aqm9E1OoPLY4Ox+LWGlR6fN9Q6Ag8yM0qblR9dcgzg1fXiwkaw8Gs2U+envEN9Xss 7lyDhA1OojlUwBEt1r+G+zlw5FgG3CwaK6MFwh2j0RNUEHAqX3IuY5jff6qDVhb4tKFLwR 61GVc0IG8nYT0G0aCl8+U6axeAma8ac7Qr9bXgmibsYDlsUDztmDmAygBuFJxJQ+RT39GS xYCHQxWBU/Mm6XoBD1F9e8fBTUvHIAo1a6kSV76Gm1QMySyhFBVrligTfSlw0A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715015657; a=rsa-sha256; cv=none; b=hMv20MyboLcWYGDdQnDB7JKEHxXqtstWPLKnltMMs4XSzlpkLswO7BKsswOurG2MOOHkPQ CSzzLF4vNFpGusHZrtCuo4tsFZK7lvrXgZ2MI90pOadgvgu0kgoHadXtNAyzIRjfy5j6Gi 3SWB2QVDgcC0rEzQRksWnoa+IvBRHo6VoZiH+Tu0Wa2XhvBmFMDdbN8tH+VrDsO/r/C8Ki 0g/3E7QqRlWxPKmkr17DuepW5+IsKhaXF/2QHzRElL/2TtusVbWzC/phleMePqdn7QOkmd 4/SXLIGA+fJPfki8xRs7r8jLeWOGS4VyJTtVmjVM2TEki9CEtnkb/empAb+wRA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715015657; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fcXrGjW4mqG06dtQqqCuFxx7bjG/Bc10RKuVUts3QHM=; b=Ef0RY7BiOP5f1vTnooJUew2k5KWIvTaOPoAW++asV8sT9oWuQYuvwGk5eSnyh2BDg2rLG3 o5FWBFxrAx3jlEgFx/pbiDD2ExxztuL6pko9GC67uLDsGg9LH90I+nigl1B1/LU+DyW3uX TrWCRJ4anHgCUO1fGLWwvJt99nEJN5LFhhNvluEDD1KURGcJlQDq6ljg16bvKLWgzcDBzg /fKRTF1WdWoxSV1o7yW67WgY/PFBUTTtA4Hav+eMP6LpURdq1zGkfwCEPKIl//ePAsl3Vk GmJOTqRfktl1DvNL33dRvQEGLMDxndTM0fzwVFp4UwyqDEkT0BBPEDQxZCW5+w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY7LK5GjJz15v7; Mon, 6 May 2024 17:14: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 446HEHtO024101; Mon, 6 May 2024 17:14:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446HEHnL024098; Mon, 6 May 2024 17:14:17 GMT (envelope-from git) Date: Mon, 6 May 2024 17:14:17 GMT Message-Id: <202405061714.446HEHnL024098@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Piotr Pawel Stefaniak Subject: git: 3f0b80bc1537 - main - ps: handle incorrect -D values List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: pstef X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3f0b80bc1537c257f3bd68592832ec8cb65e1c58 Auto-Submitted: auto-generated The branch main has been updated by pstef: URL: https://cgit.FreeBSD.org/src/commit/?id=3f0b80bc1537c257f3bd68592832ec8cb65e1c58 commit 3f0b80bc1537c257f3bd68592832ec8cb65e1c58 Author: Jamie Landeg-Jones AuthorDate: 2024-04-23 16:44:36 +0000 Commit: Piotr Paweł Stefaniak CommitDate: 2024-05-06 17:13:35 +0000 ps: handle incorrect -D values I just noticed a slight issue with the '-D' option. Basically, I accidentally typed something along the lines of: ps -Dboth-p303 I.E. missing out the "space". Instead of giving an error, it behaved as if I'd just typed "ps". Looking at bin/ps/ps.c, where the -D option is parsed, it doesn't error-out if there is no valid match. This commit fixes the bug. --- bin/ps/ps.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bin/ps/ps.c b/bin/ps/ps.c index cbee10c20d53..53ace6247b33 100644 --- a/bin/ps/ps.c +++ b/bin/ps/ps.c @@ -263,6 +263,8 @@ main(int argc, char *argv[]) else if (len <= 4 && strncasecmp(optarg, "both", len) == 0) directions |= BOTH; + else + usage(); break; } case 'd': From nobody Mon May 6 17:49:20 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY86m4s0Zz5KgRV; Mon, 06 May 2024 17:49:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VY86m4KMdz4mK8; Mon, 6 May 2024 17:49:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715017760; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S42CHmJ7zEWPmVxedDcY9Ca4eT84mmJbajIC8B7ZOxU=; b=c0jTAFWUR2zVUQNfNqpcm6rKXsUyFOhvqetOYCWuQeuGZgVYJPIOQWqa05mgQYDp+gy868 oirqbKsELEzx3PviKe6dHePFfQwg71LFNwRKwSiQ//DDLqKODTWw8gZIZcsOjgqHzIOV+G g37jlhCSBm8Xa3HelG3WNJNKKySqPBj56KmeDUllRKrCTu7QsMD32IafpAFTaWEaOxjDG8 Uknkt+HtPMPlW3PemxL39F/fks82gpj3jkwTqmTXw/gaoZVsh3mwxo+vLZw4UChdKD/nwK GaE/P1djnvwnncwGowDLpxRfzZOdjGhbfdGnrKJwrdNaFeS2eeuPxIEkh4EPNw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715017760; a=rsa-sha256; cv=none; b=TahMJIZvM8UlQ16+/8Hj/PSe1sl+iXuE6wsanKfLMPtCGCgqummZJphBkiWD569+4rnfWR 1u4U2ZJY4jYDtqpdGe08G4yNvNuD+ln4/TuBgf3eEt3zy3teqLT1FO45E8aB2eyBeub2N4 uX4YTrblMXfsyUAnoMvHP0k1pkv2coeCmoCkQ3xQ/ftQuDJk2SfQvErPrYz03/aiqRJV7n pgPt2z59RySQox5yD0vQEefR4pOUU0nkAUwSNffHPRQeCyFuskVVAjMkFgwZQsu1TOLNJA LE90OLomJ/X2yJmfzS8dMpugC7dMpqKbEzbgoKW6ngRUvkLK+US8HCZegwo9zw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715017760; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S42CHmJ7zEWPmVxedDcY9Ca4eT84mmJbajIC8B7ZOxU=; b=Dc+vxPtPEpvtqXk5Kj8Lt4NDVcpFWW6Yd5/8FMIwY+EXr2m3afUP4cwZs8EyCn0p2QrEMG 9yq6VzEFCB7OqxApOYKfHCbtVq9VKHYtSSm2xK2LJ8LMbIT30NiIhjHiEMU1H07JF5KFuC i2BzHwUHq46zAMP6lZRuR3ZFN7bx37i422BgxHSedCAo52j0QNo9x0vm9NB+WgvXYwiGXa 1/hVdLF7xM81RbiPOhG0Ek1dJ5VSQO6CozkcSC71R/g7OEfwCcbr5yne6S8hj7Ff3G0xYm sTaKSqY4yYAdsz542EOOfAJJPzv3VeooTDwN9OhqAKDZVNM3QJXbVN/hb0UiSw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY86m3wVRz16TF; Mon, 6 May 2024 17:49:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 446HnKOM075810; Mon, 6 May 2024 17:49:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446HnKXi075807; Mon, 6 May 2024 17:49:20 GMT (envelope-from git) Date: Mon, 6 May 2024 17:49:20 GMT Message-Id: <202405061749.446HnKXi075807@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 2f68f6474e41 - main - git-arc: Add list mode support for the update command List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2f68f6474e4174999bcbab531b9b221c8671f544 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=2f68f6474e4174999bcbab531b9b221c8671f544 commit 2f68f6474e4174999bcbab531b9b221c8671f544 Author: John Baldwin AuthorDate: 2024-05-06 17:49:04 +0000 Commit: John Baldwin CommitDate: 2024-05-06 17:49:04 +0000 git-arc: Add list mode support for the update command This can be particularly useful to do bulk-updates of multiple commits using the same message, e.g. git arc update -lm "Move function xyz to libfoo" main..myfeature Similar to the list mode for the create command, git arc will list all the candidate revisions with a single prompt. Once that is confirmed, all the revisions are updated without showing the diffs or pausing further prompts. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D45050 --- tools/tools/git/git-arc.1 | 19 ++++++++++++++++--- tools/tools/git/git-arc.sh | 37 ++++++++++++++++++++++++++++--------- 2 files changed, 44 insertions(+), 12 deletions(-) diff --git a/tools/tools/git/git-arc.1 b/tools/tools/git/git-arc.1 index e449875c5043..5ada942d13a9 100644 --- a/tools/tools/git/git-arc.1 +++ b/tools/tools/git/git-arc.1 @@ -50,6 +50,7 @@ .Op Ar commit ... Ns | Ns Ar commit-range .Nm .Cm update +.Op Fl l .Op Fl m Ar message .Op Ar commit ... Ns | Ns Ar commit-range .Sh DESCRIPTION @@ -117,6 +118,11 @@ each revision. If an empty message is supplied via .Fl m , then no notes will be added when updating Differential Revisions. +.Pp +If +.Fl l +is used, display list of commits to be updated and wait for confirmation +of the list rather than prompting for each commit. .El .Sh CONFIGURATION These are manipulated by @@ -138,9 +144,9 @@ Defaults to false. Always use .Dq list mode .Pq Fl l -with create. -In this mode, the list of git revisions to create reviews for -is listed with a single prompt before creating reviews. +with create and update. +In this mode, the list of git revisions to use +is listed with a single prompt before creating or updating reviews. The diffs for individual commits are not shown. Defaults to false. .It Va arc.verbose @@ -227,6 +233,13 @@ List the status of reviews for all the commits in the branch .Bd -literal -offset indent $ git arc list main..feature .Ed +.Pp +Update reviews for all commits in the branch +.Dq feature +after rebasing: +.Bd -literal -offset indent +$ git arc update -lm "Rebase" main..feature +.Ed .Sh SEE ALSO .Xr build 7 , .Xr development 7 diff --git a/tools/tools/git/git-arc.sh b/tools/tools/git/git-arc.sh index 1c828f3194af..e8da1f1ed32a 100644 --- a/tools/tools/git/git-arc.sh +++ b/tools/tools/git/git-arc.sh @@ -53,7 +53,7 @@ Commands: list | patch [-c] [ ...] stage [-b branch] [|] - update [-m message] [|] + update [-l] [-m message] [|] Description: Create or manage FreeBSD Phabricator reviews based on git commits. There @@ -100,11 +100,11 @@ Config Variables: arc.browse [bool] -- Try to open newly created reviews in a browser tab. Defaults to false. - arc.list [bool] -- Always use "list mode" (-l) with create. In this - mode, the list of git revisions to create reviews for - is listed with a single prompt before creating - reviews. The diffs for individual commits are not - shown. + arc.list [bool] -- Always use "list mode" (-l) with create and update. + In this mode, the list of git revisions to use + is listed with a single prompt before creating or + updating reviews. The diffs for individual commits + are not shown. arc.verbose [bool] -- Verbose output. Equivalent to the -v flag. @@ -669,10 +669,18 @@ gitarc__stage() gitarc__update() { - local commit commits diff have_msg msg + local commit commits diff doprompt have_msg list o msg - while getopts m: o; do + list= + if [ "$(git config --bool --get arc.list 2>/dev/null || echo false)" != "false" ]; then + list=1 + fi + doprompt=1 + while getopts lm: o; do case "$o" in + l) + list=1 + ;; m) msg="$OPTARG" have_msg=1 @@ -685,10 +693,21 @@ gitarc__update() shift $((OPTIND-1)) commits=$(build_commit_list "$@") + + if [ "$list" ]; then + for commit in ${commits}; do + git --no-pager show --oneline --no-patch "$commit" + done | git_pager + if ! prompt; then + return + fi + doprompt= + fi + for commit in ${commits}; do diff=$(commit2diff "$commit") - if ! show_and_prompt "$commit"; then + if [ "$doprompt" ] && ! show_and_prompt "$commit"; then break fi From nobody Mon May 6 18:23:48 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY8tX418tz5J1rZ; Mon, 06 May 2024 18:23: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 4VY8tX3VrHz4r8k; Mon, 6 May 2024 18:23:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715019828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3mSKdmONorKQiyE+svsdDVxLwhgpywAbyWLQis1YCe8=; b=HNgEmqRofgdNHkVqhMrpHIZkXoNcdz6wsKz71G/EEs+g0JBBVGG97x1WsQaeQpaTOyuTof yJ6oRZBPhevYQOSlKlkAnfKyD3cMNPoTYUL1v2FKd4oJ5Z4gOmVvzDc8cbGPZGjyHwsUFi fzMWkj/B0AjnydtUiac81SfVYz3noU9n+gU14OH7V8lGKSaBv/MQp3Eqtoh6RFtKL05CAr 3O9UTuLctgZp2CrViNwj6vIhx89Jr0mrIV7BDm+270u42NxGXzo/yj3m8nYBc/pMqQVziC x4Gu3PftpKKH+N7d8leTgUOjFtyGIe3qJ025hB8jVIkwyCcShCVBe5Tn0RetgQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715019828; a=rsa-sha256; cv=none; b=leQ6sLT2zFLOSwSlhR0QpFK0aa/b3q62RP32jXWm/judVuYNt+5Dx3UoU9a0nu2AqyLiiE eqC04KnLgrg9urpcoqEtJugvZuDoQR+ujqxRE0Jv1nPCRUj8s204nM26EOpt7iQ+52XJsb byHt7EDfjjZhMEVjIoWqRj9cypMcDRWiGOO31MuQZ1XVR3UvRjAxjCniLv0uHUimWxxaUb 6UeLVBMrJW/qDVlbJvBx6Ce9f9+WuXvf9tRKX3aox4oLUXaXNAobc5fkM6UNcBVkl5K1Qs kaTymbmk93m7VsEJgbUb/QM6WHHW2kztNAJvWVYJZGEeqBhbJAwOqd02C9OXdA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715019828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3mSKdmONorKQiyE+svsdDVxLwhgpywAbyWLQis1YCe8=; b=uoag45EfH1jr5qkaSRw5yxKshqnWMdYunnxYOuoUVU8wB4EcG6N+0KPg7dpOimehS210eq vMzMdJF+RPRgvFYXhnGvz2K++bBZ4V6Co++/LZ/5Wtn2yh4YBztdw8Z/EedX9W32qepGc5 aVK5yW+rjZKn4Ym6PqZXPEb0XxLAtuz5Vi5NeS05XwibjwUZAtdIEyrK1TSovxQbjtpZTl KKlkmg+/ATkTWAUbHzYIQAN2ZEX0sXqv4OZAzxvyIoXiLwyIoI2317mQuaTiAvNSjsZDql H+ztkOcfk5n1yfzi7NaYjVMelwPds+ZqncSmFz3XCFddwvDGDVmf1H5ev643hw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY8tX35yvz17bT; Mon, 6 May 2024 18:23: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 446INmpn042807; Mon, 6 May 2024 18:23:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446INmkv042804; Mon, 6 May 2024 18:23:48 GMT (envelope-from git) Date: Mon, 6 May 2024 18:23:48 GMT Message-Id: <202405061823.446INmkv042804@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marko Zec Subject: git: 308caa38cdf5 - main - fib_dxr: log malloc() failures. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zec X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 308caa38cdf5db4d688b7243d74ecd301b77945f Auto-Submitted: auto-generated The branch main has been updated by zec: URL: https://cgit.FreeBSD.org/src/commit/?id=308caa38cdf5db4d688b7243d74ecd301b77945f commit 308caa38cdf5db4d688b7243d74ecd301b77945f Author: Marko Zec AuthorDate: 2024-05-06 18:21:55 +0000 Commit: Marko Zec CommitDate: 2024-05-06 18:21:55 +0000 fib_dxr: log malloc() failures. MFC after: 1 week --- sys/netinet/in_fib_dxr.c | 45 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 38 insertions(+), 7 deletions(-) diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index e7eede53ea51..db4f4a537e22 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -1118,8 +1118,10 @@ dxr_init(uint32_t fibnum, struct fib_data *fd, void *old_data, void **data) struct dxr *dxr; dxr = malloc(sizeof(*dxr), M_DXRAUX, M_NOWAIT); - if (dxr == NULL) + if (dxr == NULL) { + FIB_PRINTF(LOG_NOTICE, fd, "Unable to allocate DXR struct"); return (FLM_REBUILD); + } /* Check whether we may reuse the old auxiliary structures */ if (old_dxr != NULL && old_dxr->aux != NULL) { @@ -1213,16 +1215,41 @@ dxr_dump_end(void *data, struct fib_dp *dp) dxr_build(dxr); da = dxr->aux; - if (da == NULL) + if (da == NULL) { + /* malloc(, M_DXRAUX, M_NOWAIT) failed, retry later */ + FIB_PRINTF(LOG_NOTICE, dxr->fd, + "Unable to allocate DXR aux struct"); return (FLM_REBUILD); + } - /* Structural limit exceeded, hard error */ - if (da->rtbl_top >= BASE_MAX) + if (da->range_tbl == NULL) { + /* malloc(, M_DXRAUX, M_NOWAIT) failed, retry later */ + FIB_PRINTF(LOG_NOTICE, dxr->fd, + "Unable to allocate DXR range table"); + return (FLM_REBUILD); + } + +#ifdef DXR2 + if (da->x_tbl == NULL) { + /* malloc(, M_DXRAUX, M_NOWAIT) failed, retry later */ + FIB_PRINTF(LOG_NOTICE, dxr->fd, + "Unable to allocate DXR extension table"); + return (FLM_REBUILD); + } +#endif + + if (da->rtbl_top >= BASE_MAX) { + /* Structural limit exceeded, hard error */ + FIB_PRINTF(LOG_ERR, dxr->fd, "DXR structural limit exceeded"); return (FLM_ERROR); + } - /* A malloc(,, M_NOWAIT) failed somewhere, retry later */ - if (dxr->d == NULL) + if (dxr->d == NULL) { + /* malloc(, M_DXRLPM, M_NOWAIT) failed, retry later */ + FIB_PRINTF(LOG_NOTICE, dxr->fd, + "Unable to allocate DXR lookup table"); return (FLM_REBUILD); + } dp->f = choose_lookup_fn(da); dp->arg = dxr; @@ -1311,13 +1338,17 @@ dxr_change_rib_batch(struct rib_head *rnh, struct fib_change_queue *q, /* Structural limit exceeded, hard error */ if (da->rtbl_top >= BASE_MAX) { + /* Structural limit exceeded, hard error */ dxr_destroy(new_dxr); + FIB_PRINTF(LOG_ERR, dxr->fd, "DXR structural limit exceeded"); return (FLM_ERROR); } - /* A malloc(,, M_NOWAIT) failed somewhere, retry later */ if (new_dxr->d == NULL) { + /* malloc(, M_DXRLPM, M_NOWAIT) failed, retry later */ dxr_destroy(new_dxr); + FIB_PRINTF(LOG_NOTICE, dxr->fd, + "Unable to allocate DXR lookup table"); return (FLM_REBUILD); } From nobody Mon May 6 18:36:31 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99C5GzKz5J2rF; Mon, 06 May 2024 18:36: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 4VY99C4mVmz4sGq; Mon, 6 May 2024 18:36:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020591; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nzDkZfbkPGnfk26duMjWLd086kQS+52dxlwzdZslwKQ=; b=eA3CqmMnTVr8M2n0fyKBE0+M9MzcZowWVM5ci3+Zj9MtLhJyZt1LsDTjyG9CakNavqZFSt FrPbN1Om0gzWJ9/uReXt2jRzaYiEHFWnqsQhCjrmQKHfIIMmj88S4/nG5Xda25Fv3KYd/U Apol0ur7MR95v6eHTICRiaK3TY34PgMHNpN/Dg4Gu8GvAJSwhgDKZljWrwAGRusxW0QGA5 Lp3wUFYWHsO8mc7HHqBxclgMVFPKGPIMJD8uaK/S+mHu7iqWI0f0znvkCGrqJPs1SfhJBD CvqE91Lk4CnbHT7NYi4+t2WVtGzBFbSVGv2h+EtdVU2RMWiyZIWQIs0zUF3hFA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020591; a=rsa-sha256; cv=none; b=kJRg36vFZGCxsHQ6IXg6gbBgysv5LpZX/wSWLYOvqDsCrBbL91Mlf+BXi3CKS5gWVANCdq Q0wYuYqkq47lyVprp85rqqa5dxGPtd6PZNzxuTJqHTgPUlJhSRT8SaPAH4la8+PKzL/b7y S9ZjH8b72mRt/M7X29+wXDPL50rJMxlEsVgW0ozaKtjs2d2UHuY0q1CK6GJJhpxy4wShce Tmv+LXMMevHuOjY6CXew2f44rJ80Cj6MG5VNFZgTTNnJ2FnsoZhBjwFtTLQxB0PBCtn2Ic mgpB0jUZbTmbXf1EgjwZNhBvF1iBAjaoPY5Ib0qHJ0J7jFcxfqPWE0762gGoLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020591; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nzDkZfbkPGnfk26duMjWLd086kQS+52dxlwzdZslwKQ=; b=ZELqhiNpAcbi9J9pBdoMk/IpaQRDbM+J2c1mU7kRRKBGGsFl2hoAZ7OcUikPE8v5TQ4Vwm o+w97TywY1AW9CgCDFl8mIbQO2/57rvF/PjvcelyCPE/neOVLnqPtJerLIHxblwFSgH40q HSMmC4dEcY3ufbAG/kSXx8fP+RpCQIgky/K0qDJCtdFpS837NVoVVG5CQWIAKln6mBjd4p s9+YWuHUxWEkCVV4F8ndc7CnIc8e3nKCep02/I0BJCEhV+tjb3kY1uEuJcgXWIe9QV5dXf CPfdiPjL06Jp4adJGhmKEhUNodH3eLSQDmvKiPPQX+2nbvyOfRAcVw6mIk1Ajw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99C4MWgz1711; Mon, 6 May 2024 18:36: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 446IaVmm059932; Mon, 6 May 2024 18:36:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IaVbt059929; Mon, 6 May 2024 18:36:31 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:31 GMT Message-Id: <202405061836.446IaVbt059929@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 2e9962ef5704 - main - sound: Merge pcm_chn_create() and chn_init() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2e9962ef57044b191431fe9228841e1415574d82 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=2e9962ef57044b191431fe9228841e1415574d82 commit 2e9962ef57044b191431fe9228841e1415574d82 Author: Christos Margiolis AuthorDate: 2024-05-06 18:26:37 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:26:37 +0000 sound: Merge pcm_chn_create() and chn_init() Follow-up of b3ea087c05d8c75978a302cbb3fa92ce1afa3e49 ("sound: Merge pcm_chn_destroy() and chn_kill()") While here, add device_printf()'s to all failure points. Also fix an existing bug where we'd unlock an already unlocked channel, in case we went to "out" (now "out2") before locking the channel. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D44993 --- sys/dev/sound/pcm/channel.c | 167 ++++++++++++++++++++++++++++++++++++++------ sys/dev/sound/pcm/channel.h | 3 +- sys/dev/sound/pcm/sound.c | 114 +----------------------------- sys/dev/sound/pcm/sound.h | 1 - sys/dev/sound/pcm/vchan.c | 2 +- 5 files changed, 151 insertions(+), 136 deletions(-) diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c index 859476f212ae..996cb0cb04f7 100644 --- a/sys/dev/sound/pcm/channel.c +++ b/sys/dev/sound/pcm/channel.c @@ -1157,14 +1157,112 @@ chn_reset(struct pcm_channel *c, uint32_t fmt, uint32_t spd) return r; } -int -chn_init(struct pcm_channel *c, void *devinfo, int dir, int direction) +struct pcm_channel * +chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, + int dir, int num, void *devinfo) { + struct pcm_channel *c; struct feeder_class *fc; struct snd_dbuf *b, *bs; - int i, ret; + char *dirs, *devname, buf[CHN_NAMELEN]; + int i, ret, direction, rpnum, *pnum, max, type, unit; + PCM_BUSYASSERT(d); + PCM_LOCKASSERT(d); + KASSERT(num >= -1, ("invalid num=%d", num)); + + switch (dir) { + case PCMDIR_PLAY: + dirs = "play"; + direction = PCMDIR_PLAY; + pnum = &d->playcount; + type = SND_DEV_DSPHW_PLAY; + max = SND_MAXHWCHAN; + break; + case PCMDIR_PLAY_VIRTUAL: + dirs = "virtual_play"; + direction = PCMDIR_PLAY; + pnum = &d->pvchancount; + type = SND_DEV_DSPHW_VPLAY; + max = SND_MAXVCHANS; + break; + case PCMDIR_REC: + dirs = "record"; + direction = PCMDIR_REC; + pnum = &d->reccount; + type = SND_DEV_DSPHW_REC; + max = SND_MAXHWCHAN; + break; + case PCMDIR_REC_VIRTUAL: + dirs = "virtual_record"; + direction = PCMDIR_REC; + pnum = &d->rvchancount; + type = SND_DEV_DSPHW_VREC; + max = SND_MAXVCHANS; + break; + default: + device_printf(d->dev, + "%s(): invalid channel direction: %d\n", + __func__, dir); + goto out1; + } + + unit = (num == -1) ? 0 : num; + + if (*pnum >= max || unit >= max) { + device_printf(d->dev, "%s(): unit=%d or pnum=%d >= than " + "max=%d\n", __func__, unit, *pnum, max); + goto out1; + } + + rpnum = 0; + + CHN_FOREACH(c, d, channels.pcm) { + if (c->type != type) + continue; + if (unit == c->unit && num != -1) { + device_printf(d->dev, + "%s(): channel num=%d already allocated\n", + __func__, unit); + goto out1; + } + unit++; + if (unit >= max) { + device_printf(d->dev, + "%s(): chan=%d >= max=%d\n", __func__, unit, max); + goto out1; + } + rpnum++; + } + + if (*pnum != rpnum) { + device_printf(d->dev, + "%s(): pnum screwed: dirs=%s pnum=%d rpnum=%d\n", + __func__, dirs, *pnum, rpnum); + goto out1; + } + + PCM_UNLOCK(d); + c = malloc(sizeof(*c), M_DEVBUF, M_WAITOK | M_ZERO); + c->methods = kobj_create(cls, M_DEVBUF, M_WAITOK | M_ZERO); + c->type = type; + c->unit = unit; + c->pid = -1; + strlcpy(c->comm, CHN_COMM_UNUSED, sizeof(c->comm)); + c->parentsnddev = d; + c->parentchannel = parent; + c->dev = d->dev; + c->trigger = PCMTRIG_STOP; chn_lockinit(c, dir); + devname = dsp_unit2name(buf, sizeof(buf), c); + if (devname == NULL) { + ret = EINVAL; + device_printf(d->dev, "%s(): failed to create channel name", + __func__); + goto out2; + } + snprintf(c->name, sizeof(c->name), "%s:%s:%s", + device_get_nameunit(c->dev), dirs, devname); b = NULL; bs = NULL; @@ -1177,20 +1275,31 @@ chn_init(struct pcm_channel *c, void *devinfo, int dir, int direction) ret = ENOMEM; b = sndbuf_create(c->dev, c->name, "primary", c); - if (b == NULL) - goto out; + if (b == NULL) { + device_printf(d->dev, "%s(): failed to create hardware buffer\n", + __func__); + goto out2; + } bs = sndbuf_create(c->dev, c->name, "secondary", c); - if (bs == NULL) - goto out; + if (bs == NULL) { + device_printf(d->dev, "%s(): failed to create software buffer\n", + __func__); + goto out2; + } CHN_LOCK(c); ret = EINVAL; fc = feeder_getclass(NULL); - if (fc == NULL) - goto out; - if (chn_addfeeder(c, fc, NULL)) - goto out; + if (fc == NULL) { + device_printf(d->dev, "%s(): failed to get feeder class\n", + __func__); + goto out2; + } + if (chn_addfeeder(c, fc, NULL)) { + device_printf(d->dev, "%s(): failed to add feeder\n", __func__); + goto out2; + } /* * XXX - sndbuf_setup() & sndbuf_resize() expect to be called @@ -1226,12 +1335,17 @@ chn_init(struct pcm_channel *c, void *devinfo, int dir, int direction) CHN_UNLOCK(c); /* XXX - Unlock for CHANNEL_INIT() malloc() call */ c->devinfo = CHANNEL_INIT(c->methods, devinfo, b, c, direction); CHN_LOCK(c); - if (c->devinfo == NULL) - goto out; + if (c->devinfo == NULL) { + device_printf(d->dev, "%s(): NULL devinfo\n", __func__); + goto out2; + } ret = ENOMEM; - if ((sndbuf_getsize(b) == 0) && ((c->flags & CHN_F_VIRTUAL) == 0)) - goto out; + if ((sndbuf_getsize(b) == 0) && ((c->flags & CHN_F_VIRTUAL) == 0)) { + device_printf(d->dev, "%s(): hardware buffer's size is 0\n", + __func__); + goto out2; + } ret = 0; c->direction = direction; @@ -1251,12 +1365,14 @@ chn_init(struct pcm_channel *c, void *devinfo, int dir, int direction) bs->shadbuf = malloc(bs->sl, M_DEVBUF, M_NOWAIT); if (bs->shadbuf == NULL) { ret = ENOMEM; - goto out; + device_printf(d->dev, "%s(): failed to create shadow " + "buffer\n", __func__); + goto out2; } } - -out: - CHN_UNLOCK(c); +out2: + if (CHN_LOCKOWNED(c)) + CHN_UNLOCK(c); if (ret) { if (c->devinfo) { if (CHANNEL_FREE(c->methods, c->devinfo)) @@ -1270,10 +1386,19 @@ out: c->flags |= CHN_F_DEAD; chn_lockdestroy(c); - return ret; + PCM_LOCK(d); + + kobj_delete(c->methods, M_DEVBUF); + free(c, M_DEVBUF); + + return (NULL); } - return 0; + PCM_LOCK(d); + + return (c); +out1: + return (NULL); } void diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h index 698a1186924f..6aca089a7c4d 100644 --- a/sys/dev/sound/pcm/channel.h +++ b/sys/dev/sound/pcm/channel.h @@ -259,7 +259,8 @@ int chn_sync(struct pcm_channel *c, int threshold); int chn_flush(struct pcm_channel *c); int chn_poll(struct pcm_channel *c, int ev, struct thread *td); -int chn_init(struct pcm_channel *c, void *devinfo, int dir, int direction); +struct pcm_channel *chn_init(struct snddev_info *d, struct pcm_channel *parent, + kobj_class_t cls, int dir, int num, void *devinfo); void chn_kill(struct pcm_channel *c); void chn_shutdown(struct pcm_channel *c); int chn_release(struct pcm_channel *c); diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index 9d5eaf3f5ad7..cc19d119ac36 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -379,116 +379,6 @@ SYSCTL_PROC(_hw_snd, OID_AUTO, maxautovchans, sysctl_hw_snd_maxautovchans, "I", "maximum virtual channel"); -struct pcm_channel * -pcm_chn_create(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, int dir, int num, void *devinfo) -{ - struct pcm_channel *ch; - int direction, err, rpnum, *pnum, max; - int type, unit; - char *dirs, *devname, buf[CHN_NAMELEN]; - - PCM_BUSYASSERT(d); - PCM_LOCKASSERT(d); - KASSERT(num >= -1, ("invalid num=%d", num)); - - switch (dir) { - case PCMDIR_PLAY: - dirs = "play"; - direction = PCMDIR_PLAY; - pnum = &d->playcount; - type = SND_DEV_DSPHW_PLAY; - max = SND_MAXHWCHAN; - break; - case PCMDIR_PLAY_VIRTUAL: - dirs = "virtual_play"; - direction = PCMDIR_PLAY; - pnum = &d->pvchancount; - type = SND_DEV_DSPHW_VPLAY; - max = SND_MAXVCHANS; - break; - case PCMDIR_REC: - dirs = "record"; - direction = PCMDIR_REC; - pnum = &d->reccount; - type = SND_DEV_DSPHW_REC; - max = SND_MAXHWCHAN; - break; - case PCMDIR_REC_VIRTUAL: - dirs = "virtual_record"; - direction = PCMDIR_REC; - pnum = &d->rvchancount; - type = SND_DEV_DSPHW_VREC; - max = SND_MAXVCHANS; - break; - default: - return (NULL); - } - - unit = (num == -1) ? 0 : num; - - if (*pnum >= max || unit >= max) - return (NULL); - - rpnum = 0; - - CHN_FOREACH(ch, d, channels.pcm) { - if (ch->type != type) - continue; - if (unit == ch->unit && num != -1) { - device_printf(d->dev, - "channel num=%d allocated!\n", unit); - return (NULL); - } - unit++; - if (unit >= max) { - device_printf(d->dev, - "chan=%d > %d\n", unit, max); - return (NULL); - } - rpnum++; - } - - if (*pnum != rpnum) { - device_printf(d->dev, - "%s(): WARNING: pnum screwed : dirs=%s pnum=%d rpnum=%d\n", - __func__, dirs, *pnum, rpnum); - return (NULL); - } - - PCM_UNLOCK(d); - ch = malloc(sizeof(*ch), M_DEVBUF, M_WAITOK | M_ZERO); - ch->methods = kobj_create(cls, M_DEVBUF, M_WAITOK | M_ZERO); - ch->type = type; - ch->unit = unit; - ch->pid = -1; - strlcpy(ch->comm, CHN_COMM_UNUSED, sizeof(ch->comm)); - ch->parentsnddev = d; - ch->parentchannel = parent; - ch->dev = d->dev; - ch->trigger = PCMTRIG_STOP; - devname = dsp_unit2name(buf, sizeof(buf), ch); - if (devname == NULL) { - device_printf(d->dev, "Failed to query device name"); - kobj_delete(ch->methods, M_DEVBUF); - free(ch, M_DEVBUF); - return (NULL); - } - snprintf(ch->name, sizeof(ch->name), "%s:%s:%s", - device_get_nameunit(ch->dev), dirs, devname); - - err = chn_init(ch, devinfo, dir, direction); - PCM_LOCK(d); - if (err) { - device_printf(d->dev, "chn_init(%s) failed: err = %d\n", - ch->name, err); - kobj_delete(ch->methods, M_DEVBUF); - free(ch, M_DEVBUF); - return (NULL); - } - - return (ch); -} - int pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch) { @@ -569,9 +459,9 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) PCM_BUSYASSERT(d); PCM_LOCK(d); - ch = pcm_chn_create(d, NULL, cls, dir, -1, devinfo); + ch = chn_init(d, NULL, cls, dir, -1, devinfo); if (!ch) { - device_printf(d->dev, "pcm_chn_create(%s, %d, %p) failed\n", + device_printf(d->dev, "chn_init(%s, %d, %p) failed\n", cls->name, dir, devinfo); PCM_UNLOCK(d); return (ENODEV); diff --git a/sys/dev/sound/pcm/sound.h b/sys/dev/sound/pcm/sound.h index 08aa56cc96f7..09e739ea5c20 100644 --- a/sys/dev/sound/pcm/sound.h +++ b/sys/dev/sound/pcm/sound.h @@ -297,7 +297,6 @@ int pcm_setvchans(struct snddev_info *d, int direction, int newcnt, int num); int pcm_chnalloc(struct snddev_info *d, struct pcm_channel **ch, int direction, pid_t pid, char *comm); -struct pcm_channel *pcm_chn_create(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, int dir, int num, void *devinfo); int pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch); int pcm_chn_remove(struct snddev_info *d, struct pcm_channel *ch); diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index c3bc36d924bd..ccac08891220 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -698,7 +698,7 @@ vchan_create(struct pcm_channel *parent, int num) } /* create a new playback channel */ - ch = pcm_chn_create(d, parent, &vchan_class, direction, num, parent); + ch = chn_init(d, parent, &vchan_class, direction, num, parent); if (ch == NULL) { PCM_UNLOCK(d); CHN_LOCK(parent); From nobody Mon May 6 18:36:32 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99F00lVz5J2hy; Mon, 06 May 2024 18:36: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 4VY99D5pQCz4sBR; Mon, 6 May 2024 18:36:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020592; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lj9yE+0O/jA0Nl+jKF5oOnf2WAi4jl+kB9tPwCm4sME=; b=Jg0h2aP0tONgrhzq4PrJm02ELLtuM2wB6ioaYGSUz6sf9F+2iAUP8hUds/rRp7XJV/wOZD eL9PVEt4BV3CDR8JXDbz6dUsogKK1QAEJFoSrLg9ZhsqCcTfQ92LaNIHJ4V9mdbUG94ufW 0ZMeaAKKdWn009Tv6glD/NCEIQBVmW1aTPDQ/QDRVhwxvYenkazBIskwDOclsj/suLNkYw UL2p2O4tSv3xhkbtSLv2lO/HgIzh4NjGdc5nhwYV8xQ5xeXaKCxVGcs7SrdKKhUF+Zq8Fz DTjlSeigUotduMm8XSUixyQvcGqAqZFRg8A2MSJb7q+12w26p07XsSfWJql/8g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020592; a=rsa-sha256; cv=none; b=p+8g4jZnMrbC9TgRFYqKs8LkDRiMDaHHAqXacafaIxyzpxs2f6XGSWu8iFLlj3+6LsW8cd Jx9djbvXc+0m8KvI6m+UaZ9u8MsUIz7fqPimg39wqZEAWDN1p/+UmQiw+EPT+0mVY//TQx J6MAXf67Ox3KpipE2Tegk2HxHs6gk95Y9IAtlcmNJDV0LyQcgH2fVNl2rVj9gYRtfgR41G 4RP8h0IOm0eRhPYy2LTENF4IKHU8fztH7/KmnwFJp/whin+poaw/6axN/oNRrQfVOPgMal RpPbgAxfWrlM1x/lI2kwz+oRpSXu51DdlyGgg1s1DAP+YT+0KhyBY48syvCsmA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020592; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lj9yE+0O/jA0Nl+jKF5oOnf2WAi4jl+kB9tPwCm4sME=; b=INTUe1df51gRqxBTFMAsUYiFgfm3eTwSyTzyNJRxZq0Wxns4DKOFHvZHcGWVeacbpLXZ+n I14zEqUS6iyhgxbFX1mwf4WxUgHnN+IhoqGM4FQt3BGRT0DdoIWIP2E2iFA2H56/rzvBR2 4Iopvi1eu2dor+AHJNu1PH+c/RWpEeDE13uLNqIezCgiMFFN6+AqX7nVSs0hSR0PBkWXc5 0eKeOp57K5AU39xc8JLniTcHcaJo0Q8h3PCfeiW2vpUhpy6AGuOWhPfX3dvQGlnoZ9C0O2 2qqevYKr1mK14SD+w4YYYMX8oqQR2SxxuA8zszWuI6TI4+9G+TWwaPJZ8EiiKg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99D5PjSz1712; Mon, 6 May 2024 18:36: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 446IaWss059989; Mon, 6 May 2024 18:36:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IaWt2059986; Mon, 6 May 2024 18:36:32 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:32 GMT Message-Id: <202405061836.446IaWt2059986@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 76f95bae092b - main - sound: Add __assert_unreachable() to default cases in pcm_chn_add() and pcm_chn_remove() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 76f95bae092b7353ff82b7a0056ca5801bb98f76 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=76f95bae092b7353ff82b7a0056ca5801bb98f76 commit 76f95bae092b7353ff82b7a0056ca5801bb98f76 Author: Christos Margiolis AuthorDate: 2024-05-06 18:26:56 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:26:56 +0000 sound: Add __assert_unreachable() to default cases in pcm_chn_add() and pcm_chn_remove() We should normally never enter these cases. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj, emaste Differential Revision: https://reviews.freebsd.org/D44994 --- sys/dev/sound/pcm/sound.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index cc19d119ac36..2787c0ee126d 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -403,7 +403,7 @@ pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch) d->rvchancount++; break; default: - break; + __assert_unreachable(); } return (0); @@ -443,7 +443,7 @@ pcm_chn_remove(struct snddev_info *d, struct pcm_channel *ch) d->rvchancount--; break; default: - break; + __assert_unreachable(); } return (0); From nobody Mon May 6 18:36:33 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99G1dHRz5J2rH; Mon, 06 May 2024 18:36: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 4VY99F73fZz4sBZ; Mon, 6 May 2024 18:36:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020594; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jnyLPjEkSEKPrXGM0DZFBMMws5izdoDaxGUUx+ibuSo=; b=Ydo7sbkJcbXZy+3Pb+7evUpuuf01Y25aCcHBsk7CkDOXKgE9ROg8bXzq2+Irwxq+AQ8mXW qaKaYU9s27nZhPv5vDeDJ0FdACXnlnm7R+r6RjIfVsvVui/X7h/+eCQCcyMsnjk1GyJIEo 2FyuMfdqnZTTtSR/U3bhPwQDoOPgVNKG1TM0wKGSuLAtc/8E6kIYafSaDw+kd8ryfSQpvs AG9pTbFcsGIXZIkIRWlb10F2w8pDaVainclgHdgCj87ZdaiUyVofY139O8MGyw7Q2WD2UQ R+PkSEnP/YaKw/KWL/qGWKfZRdoeP7BfMsra+FDLCsg9Y4pfOBXwB4oRxI2v4w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020594; a=rsa-sha256; cv=none; b=kz/mq+ikiPKoID3tRMrIm4HF6uj2rdUt/uWx2Iunr5xtRGB8fKZKkq5GmDMTHeSrcMf+pZ 2BHhXUi3Etji6L7XCHOolqPwRE1FAjP8En/CBy/UOe++GGui10agpROlRU3bbGznnn20cX UrIsLbcbnVdVNAbObC7FYo22asB1VC9cW/U0qaIOohoM49txvn/kN5xeC5fEoUZ548Q2Px EYrKyMwWQnDHFUagcjB/1DFIpOxquHNsvrdmDf8KmHW83Hy6RPDFIODyxVub9cFd1Hfk5r aOLOw5o4mgMKGj79AXODuHRMY+3LHpuIbNKYDQOWkXt4YxL1863n0LbZ53oQBg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020594; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jnyLPjEkSEKPrXGM0DZFBMMws5izdoDaxGUUx+ibuSo=; b=kSKwqZK2cy8Lygi8n6BooLo1quL+S66JCDIDcfrua7IETtdd38GDnn9g/YYvzew8SVUTf5 21DOEifv/92l/PTrILaLv+KoyOtFhBSHR3HeKF0/D/Y64VOVOmwGG/uij5WeUiGR7OIP/F gqJ4znnX9GuwnHbN5hUdq6Nnj7WSTK73knuBsrbFN+t0xYwYqHMsYZf2/3Dn/6qAMqEDb9 k733yA8BKLvfhfcxXvNo7HDIhSDpiTL5XKul2mSrrwSL02d/RD+ZLZu5fwulGKhb1lwinB p9515hd38WmV7yJIiroHsNlFy4e6TaZ2Yymca5BkiMj4q2Kfv+APn1hYuEk6uA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99F6QvGz17qm; Mon, 6 May 2024 18:36: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 446IaXCY060031; Mon, 6 May 2024 18:36:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IaXBu060028; Mon, 6 May 2024 18:36:33 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:33 GMT Message-Id: <202405061836.446IaXBu060028@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 139bcec852cf - main - sound: Convert pcm_chn_add() to void List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 139bcec852cf2786ca839ca0bddbb2b78a23d6fa Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=139bcec852cf2786ca839ca0bddbb2b78a23d6fa commit 139bcec852cf2786ca839ca0bddbb2b78a23d6fa Author: Christos Margiolis AuthorDate: 2024-05-06 18:27:18 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:27:18 +0000 sound: Convert pcm_chn_add() to void It always returns 0. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj, emaste Differential Revision: https://reviews.freebsd.org/D44998 --- sys/dev/sound/pcm/sound.c | 14 +++----------- sys/dev/sound/pcm/sound.h | 2 +- sys/dev/sound/pcm/vchan.c | 8 ++------ 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index 2787c0ee126d..9b4de948eac4 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -379,7 +379,7 @@ SYSCTL_PROC(_hw_snd, OID_AUTO, maxautovchans, sysctl_hw_snd_maxautovchans, "I", "maximum virtual channel"); -int +void pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch) { PCM_BUSYASSERT(d); @@ -405,8 +405,6 @@ pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch) default: __assert_unreachable(); } - - return (0); } int @@ -454,7 +452,6 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) { struct snddev_info *d = device_get_softc(dev); struct pcm_channel *ch; - int err; PCM_BUSYASSERT(d); @@ -467,15 +464,10 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) return (ENODEV); } - err = pcm_chn_add(d, ch); + pcm_chn_add(d, ch); PCM_UNLOCK(d); - if (err) { - device_printf(d->dev, "pcm_chn_add(%s) failed, err=%d\n", - ch->name, err); - chn_kill(ch); - } - return (err); + return (0); } static void diff --git a/sys/dev/sound/pcm/sound.h b/sys/dev/sound/pcm/sound.h index 09e739ea5c20..6c9f4c8f18b2 100644 --- a/sys/dev/sound/pcm/sound.h +++ b/sys/dev/sound/pcm/sound.h @@ -297,7 +297,7 @@ int pcm_setvchans(struct snddev_info *d, int direction, int newcnt, int num); int pcm_chnalloc(struct snddev_info *d, struct pcm_channel **ch, int direction, pid_t pid, char *comm); -int pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch); +void pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch); int pcm_chn_remove(struct snddev_info *d, struct pcm_channel *ch); int pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo); diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index ccac08891220..1a21b7049b77 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -706,13 +706,8 @@ vchan_create(struct pcm_channel *parent, int num) } /* add us to our grandparent's channel list */ - ret = pcm_chn_add(d, ch); + pcm_chn_add(d, ch); PCM_UNLOCK(d); - if (ret != 0) { - chn_kill(ch); - CHN_LOCK(parent); - return (ret); - } CHN_LOCK(parent); /* @@ -727,6 +722,7 @@ vchan_create(struct pcm_channel *parent, int num) parent->flags |= CHN_F_HAS_VCHAN; + ret = 0; parent_caps = chn_getcaps(parent); if (parent_caps == NULL) ret = EINVAL; From nobody Mon May 6 18:36:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99H2F41z5J2F8; Mon, 06 May 2024 18:36: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 4VY99H0qwXz4sdT; Mon, 6 May 2024 18:36:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020595; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3pXBvB2j7nOYkcoVutEfD6oO/+khU8L8L7mL7u9IVqc=; b=IND5DN3zhrfGskk2Sw8srbY01s8d31F7Qv8rRxqG1gg3S+XWnXYN/99lBfXOWeikd/4xtU In+Op6dKo5MnpZDobBxO81sabHOuHUBOTTs0Ugyxr9je2EbXLOOThbB+76OjFSIIzoGpxQ I+5r50EjYR9NQgFBUpw1m209RNj/b/Ru/HoaXFskXPX17V60O8+AzzT47lFZK/0+fPtSHI TQbwa+O/UE2OEeU4ah7C36+otwogy1y1K3TjXk8vX7P+OvhYof+FfV4lphLtMFNhjSx2N3 MlEyrERQSocvmOKuZ1uhkIMeBNKkYOuBLZ61Z86E0NGFQtqd4q++EpjCEU9LAQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020595; a=rsa-sha256; cv=none; b=oqIcywDULi0czwlpxOAkAX1GunMdRcVVeD0dnpAmQzwDPkQpEfWtozreaEm9jRNyJPruCQ ZIjHI1gMS4Qm8EqJHVPlpgps6hiUXY19knb3zxLHXnabnmSUBNwWZMVO/MPBblETH2kNnn jgcr4yz2jo/diJo+LfxEBHEybl976KeceNvfM8DcaYtaIJRFDSZobXOLT2Gs6RRwNJshIM KH7SHLdjXVnbZjff0dQdpbQ/UE13Us/+AZLGP42ly0rLEa1sSb8PF9SJaTL+tyiOpWsXb1 oA/gv31fFFVRP8g+dtaPBzcl42ZpnzQylO4YHdlCgE7fe3E9a+O5rs5Td/H53Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020595; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3pXBvB2j7nOYkcoVutEfD6oO/+khU8L8L7mL7u9IVqc=; b=lo089iw2suVAWh6sdPbYSMueL3QX5yF42yF1sIBZGzsEzRSbebp6q+lihH3b7JdPTJBsy3 H06W4gOAlAoRnWEaPX21eqGFnzIcTm0Ca5g4mu4UZ4qjZrgk584EnSFYDPtgC8xgRGiGpm WlTxtW3C5YQTwNkvjmhaob7eHWd6Rw1IDxU7oAKU3/qyfRuEzM80xwnFcmqqNhGncSSoEf GfuN31zjKujvpLEXsIlRrLSdoOjj2dJipBa7kUOr+Ue1QtEGD9+GF3R4CkbQnwkhJxvBtW KjhdrQs4rhJJJdSd+nS87AkJ6Y3Pmzf5gKS76baJnXN4RRHF4ohRZ+mnHuSURw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99H0Kz5z17pL; Mon, 6 May 2024 18:36: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 446IaYDa060076; Mon, 6 May 2024 18:36:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IaYb7060074; Mon, 6 May 2024 18:36:34 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:34 GMT Message-Id: <202405061836.446IaYb7060074@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 7398d1ece5cf - main - sound: Remove hw.snd.version and SND_DRV_VERSION List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7398d1ece5cfa2e6ce4997234a95115b49c9e818 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=7398d1ece5cfa2e6ce4997234a95115b49c9e818 commit 7398d1ece5cfa2e6ce4997234a95115b49c9e818 Author: Christos Margiolis AuthorDate: 2024-05-06 18:30:58 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:06 +0000 sound: Remove hw.snd.version and SND_DRV_VERSION hw.snd.version and SND_DRV_VERSION define the sound driver version and are meant to be used in bug reports, but because these values are constant, there is not much useful information we can extract from them. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: dev_submerge.ch, emaste Differential Revision: https://reviews.freebsd.org/D44996 --- sys/dev/sound/pcm/sndstat.c | 8 ++------ sys/dev/sound/pcm/sound.c | 10 ---------- sys/dev/sound/version.h | 42 ------------------------------------------ 3 files changed, 2 insertions(+), 58 deletions(-) diff --git a/sys/dev/sound/pcm/sndstat.c b/sys/dev/sound/pcm/sndstat.c index ef006a580d40..edb33e92ade9 100644 --- a/sys/dev/sound/pcm/sndstat.c +++ b/sys/dev/sound/pcm/sndstat.c @@ -51,7 +51,6 @@ #include #include -#include #include "feeder_if.h" @@ -1271,11 +1270,8 @@ sndstat_prepare(struct sndstat_file *pf_self) /* make sure buffer is reset */ sbuf_clear(s); - if (snd_verbose > 0) { - sbuf_printf(s, "FreeBSD Audio Driver (%ubit %d/%s)\n", - (u_int)sizeof(intpcm32_t) << 3, SND_DRV_VERSION, - MACHINE_ARCH); - } + if (snd_verbose > 0) + sbuf_printf(s, "FreeBSD Audio Driver\n"); /* generate list of installed devices */ k = 0; diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index 9b4de948eac4..d2acfc403e8c 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -41,7 +41,6 @@ #include #include #include -#include #include #include @@ -64,15 +63,6 @@ SYSCTL_NODE(_hw, OID_AUTO, snd, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, static void pcm_sysinit(device_t); -/* - * XXX I've had enough with people not telling proper version/arch - * while reporting problems, not after 387397913213th questions/requests. - */ -static char snd_driver_version[] = - __XSTRING(SND_DRV_VERSION)"/"MACHINE_ARCH; -SYSCTL_STRING(_hw_snd, OID_AUTO, version, CTLFLAG_RD, &snd_driver_version, - 0, "driver version/arch"); - /** * @brief Unit number allocator for syncgroup IDs */ diff --git a/sys/dev/sound/version.h b/sys/dev/sound/version.h deleted file mode 100644 index b816bbf964e8..000000000000 --- a/sys/dev/sound/version.h +++ /dev/null @@ -1,42 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2007 Ariff Abdullah - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * 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 _SND_VERSION_H_ -#define _SND_VERSION_H_ - -/* - * FreeBSD sound driver internal versioning, nothing to do - * with OSS whatsoever. Dear future maintainer, please revisit - * this _before_ Jan 1 2148 - * - * Last 2 decimal places reserved for daily versioning, starting - * with 0. - */ -#define SND_DRV_VERSION 2009061500 - -#endif /* !_SND_VERSION_H_ */ From nobody Mon May 6 18:36:36 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99J4wzsz5J2gG; Mon, 06 May 2024 18:36: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 4VY99J1N2rz4sKl; Mon, 6 May 2024 18:36:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020596; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tGwRQ1EKJCF7rzyxpWmSPfes54nlfwwpo7YGFYVcd9w=; b=vl0MGQrTcGCgxpOPSIJEgT5wxDH01D8yxV6JkNV1qrdzu3Mf+TxroqRbo/WNnG3dKnQuk3 4jojoR9m3yJMpxy04FcNSH2lE9sJ5D5CspGpaAGdoezSAzUDGEzwf7OIKSONXE7iYN/a6S RrYUjUvzt6jotgqXcrz9Kg2Yo1+g6D7qcc9qP+A9P77J4FO3pigLj4VCJHHX/ki3WChIN4 Y51nnOKXvA11YIosESo0Fly0UwBn1f5t8EyC/lkiXhUC323X5ExIAV1HZ60fYnVRzXqllY R85xUduqQL819WocHyJ03jX0tOBgKvmMCklIMdPLT+9TJ95UQKbz7XZhnwQaBQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020596; a=rsa-sha256; cv=none; b=dmadYEQNc7NXOiaPR6tIabDddd3jdf7SMb8dXDaRdfAvI4XscF5qK+Bkpu44XdD07t0xpM +7dX3L9bsyCQ1qialqXhPOuMkSt8MwocaZkvAQER5yGFspohcAjcK9rLOTg7bGPoImO6W9 9v+ih09myNWDsv7DuzP7k6jl+xuzwHE+7jeOecNf4AYkMPuRbTeZvhrdcUfQgumhO1606Q jk0Qs/nGT4zDYmCCXXyXsZIbhbhRlBJqQoNmpk7EVXa4zfaOoFMetluSbaDoo/FI3ldJ0g LN140v/iIcLEc89+1Wk1blUPGZ2vyutzL1KPrdSE/svc3rrqhs2qXpN5lQi0Yg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020596; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tGwRQ1EKJCF7rzyxpWmSPfes54nlfwwpo7YGFYVcd9w=; b=mZEr1zvyZUoSYOMVxAl5uG+mSNfRPxZG39qjBt+1aORIlZwG+yDYat3wi3FhMinTKgKME1 qG2fpwrlw7XdKlca40TptmSQV2qEV7BFDpLDm3Xns+xtoarYSBawiUHZoW5YLBGIdPGioe 1RJMktjcr7evcb9HCB6iIqLMHJM3+Ty48pe0erpZ5D2+QTeWXBBqIdboPNaLAibdatWlqr rTGhGPddEt2WRaBuZDqL0QUpINQCwKoKSpz9rS/VBtrSskqZVtA6EGkDHqRVY2DiStMbGp 7v4cOwpVCLrnpZO3TEps+1009HjEi54YAjaro8MckBgdc54be+xlSERciI0vYA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99J102vz17pM; Mon, 6 May 2024 18:36: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 446Iaa2Q060130; Mon, 6 May 2024 18:36:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IaaLI060127; Mon, 6 May 2024 18:36:36 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:36 GMT Message-Id: <202405061836.446IaaLI060127@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 5224825a0edb - main - RELNOTES: Mention hw.snd.version being removed List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5224825a0edb27a6b7d675884e496df35a0d61ac Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=5224825a0edb27a6b7d675884e496df35a0d61ac commit 5224825a0edb27a6b7d675884e496df35a0d61ac Author: Christos Margiolis AuthorDate: 2024-05-06 18:35:35 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:35 +0000 RELNOTES: Mention hw.snd.version being removed Sponsored by: The FreeBSD Foundation --- RELNOTES | 3 +++ 1 file changed, 3 insertions(+) diff --git a/RELNOTES b/RELNOTES index ffd114d3358c..5c367720c928 100644 --- a/RELNOTES +++ b/RELNOTES @@ -10,6 +10,9 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +7398d1ece5cf: + hw.snd.version is removed. + a15f7c96a276,a8089ea5aee5: NVMe over Fabrics controller. The nvmft(4) kernel module adds a new frontend to the CAM target layer which exports ctl(4) From nobody Mon May 6 18:36:37 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99K4QJ4z5J2Zn; Mon, 06 May 2024 18:36: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 4VY99K2DnPz4sZ4; Mon, 6 May 2024 18:36:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020597; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HvfXYkFJDYrRrB5E7eJp3urJNYE37Zcbn86SlfHeA1Q=; b=xKUQJNTs3QE8ToeoH8mlxWNxbf4yQV8dbcUo7Y08oBi/XsiPDWeqwLJ0x63mTON6fwiItk eH4roNhAjSGi8BuyyDNo/09iQFhjOl0XBfQwIeSHBTJJ6h92QUTSmUdsWC+mPtm4dEWo3Y CqlGSQzemyqb97Mly7iKBaB1Vi4Y9GTTEPoiF2HqwbASAxe0LqVAAhkKdOn03kkOKhQW8Q g4KRQjWY2xYhvJDXNRIlA88GhOuS4LPN8L8vy2/utE983uO3c7FmQwUTxOS0KZn2A59IOJ UVF74GTHpA/Ftpaz9EPENh/Q9uWKRdPokIRZ5cwKwfY+I0FDnNnmICt/CBmtRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020597; a=rsa-sha256; cv=none; b=hy2sL40HZP36w5PhwLG3CXhDn6ZF1LLx9Zb5TluqnWnOqA9ep+/d1bZxqWxUfuPXForHWe /iPGn+nM8/5KnNcCsMxfL4xIiIWi+A61RHBzlYN6gLOzQ1sfhGO3atTEdT4c7se0G2hYob F3es3QWOg2Cv+HKwoFYsygaGSkojIfPe49f2XLVcDhb7c2/vRqq4m/ud4dc7PVkAEviKMz OtM+hb/KYcUu70lyXRvUhGzH608H4LsC45LWFszKhFee0A91AVhsELwBo1I8R+FcFaiFks DWqPowO+6csYrIu3O3/CRSd8kJHFF04Db37rTKBTqFtG/cAD3D577zZNdax2kg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020597; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HvfXYkFJDYrRrB5E7eJp3urJNYE37Zcbn86SlfHeA1Q=; b=LSMDy4Kkyh6cCmq0qn5TW/m/buKtPH7qD1bRKLMaraBqnYkpvr8iM6qC3QTy6SGGocgU8a YbBnVn3ILpfVqtLer1Drs+dlFoIUiNc8YwOz4vlvATf8WaXKPLSfg/3FiAhpI/XjXbPVtb d1xqAHbyMbYt9yOwC0F/Jw6wJfifZ8r9DF/c9w2xvvlLoYzGTVnYk3cUKvjWstqm+nlBBq BUFxmCZuDpkUF/Duj4YlXDJVVgsQvonuZIxicpvPDiuio6BV0eRGcYDLiv/h8WySo4maPU r2KGumhIV2r8LJpgVGQ88IJxi91ovA30n73q3ElfxwPtLKVNpcDIIgr68BwmnA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99K1n4Cz17pN; Mon, 6 May 2024 18:36:37 +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 446IabBe060182; Mon, 6 May 2024 18:36:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IabpK060179; Mon, 6 May 2024 18:36:37 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:37 GMT Message-Id: <202405061836.446IabpK060179@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 923e0040a59a - main - sound: Move chip.h contents to pcm/sound.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 923e0040a59af8ac2271d3e673fef1c641d0cce7 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=923e0040a59af8ac2271d3e673fef1c641d0cce7 commit 923e0040a59af8ac2271d3e673fef1c641d0cce7 Author: Christos Margiolis AuthorDate: 2024-05-06 18:32:12 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:55 +0000 sound: Move chip.h contents to pcm/sound.h Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D44997 --- sys/dev/sound/chip.h | 47 ---------------------------------------- sys/dev/sound/pci/csa.c | 1 - sys/dev/sound/pci/csamidi.c | 1 - sys/dev/sound/pci/csapcm.c | 1 - sys/dev/sound/pci/emu10kx-midi.c | 1 - sys/dev/sound/pci/emu10kx-pcm.c | 1 - sys/dev/sound/pci/emu10kx.c | 1 - sys/dev/sound/pci/hdspe-pcm.c | 1 - sys/dev/sound/pci/hdspe.c | 1 - sys/dev/sound/pci/solo.c | 1 - sys/dev/sound/pcm/sound.h | 16 ++++++++++++++ sys/dev/sound/usb/uaudio.c | 1 - sys/dev/sound/usb/uaudio_pcm.c | 1 - 13 files changed, 16 insertions(+), 58 deletions(-) diff --git a/sys/dev/sound/chip.h b/sys/dev/sound/chip.h deleted file mode 100644 index bb40d2809a00..000000000000 --- a/sys/dev/sound/chip.h +++ /dev/null @@ -1,47 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 1999 Seigo Tanimura - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * 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. - */ - -/* - * These are the function codes assigned to the children of - * sound cards. - */ -enum { - SCF_PCM, - SCF_MIDI, - SCF_SYNTH, -}; - -/* - * This is the device information struct, used by - * a bridge device to pass the device function code - * to the children. - */ -struct sndcard_func { - int func; /* The function code. */ - void *varinfo; /* Bridge-specific information. */ -}; diff --git a/sys/dev/sound/pci/csa.c b/sys/dev/sound/pci/csa.c index 7191f0cc4bf9..de7ae7be57c4 100644 --- a/sys/dev/sound/pci/csa.c +++ b/sys/dev/sound/pci/csa.c @@ -45,7 +45,6 @@ #endif #include -#include #include #include diff --git a/sys/dev/sound/pci/csamidi.c b/sys/dev/sound/pci/csamidi.c index df1699092990..29d5548b0954 100644 --- a/sys/dev/sound/pci/csamidi.c +++ b/sys/dev/sound/pci/csamidi.c @@ -43,7 +43,6 @@ #include #include -#include #include #include diff --git a/sys/dev/sound/pci/csapcm.c b/sys/dev/sound/pci/csapcm.c index 71b9a0253cdb..c8424dd3e433 100644 --- a/sys/dev/sound/pci/csapcm.c +++ b/sys/dev/sound/pci/csapcm.c @@ -36,7 +36,6 @@ #include #include -#include #include #include diff --git a/sys/dev/sound/pci/emu10kx-midi.c b/sys/dev/sound/pci/emu10kx-midi.c index 4ed8e6c1dd9c..2a98562f8f39 100644 --- a/sys/dev/sound/pci/emu10kx-midi.c +++ b/sys/dev/sound/pci/emu10kx-midi.c @@ -43,7 +43,6 @@ #include "opt_snd.h" #endif -#include #include #include diff --git a/sys/dev/sound/pci/emu10kx-pcm.c b/sys/dev/sound/pci/emu10kx-pcm.c index 825a39fc4e63..bef6b596646e 100644 --- a/sys/dev/sound/pci/emu10kx-pcm.c +++ b/sys/dev/sound/pci/emu10kx-pcm.c @@ -43,7 +43,6 @@ #include "opt_snd.h" #endif -#include #include #include diff --git a/sys/dev/sound/pci/emu10kx.c b/sys/dev/sound/pci/emu10kx.c index d17f5fb16d34..0f938597e06c 100644 --- a/sys/dev/sound/pci/emu10kx.c +++ b/sys/dev/sound/pci/emu10kx.c @@ -49,7 +49,6 @@ #include "opt_snd.h" #endif -#include #include #include diff --git a/sys/dev/sound/pci/hdspe-pcm.c b/sys/dev/sound/pci/hdspe-pcm.c index 0e78be113a66..e7fa03904595 100644 --- a/sys/dev/sound/pci/hdspe-pcm.c +++ b/sys/dev/sound/pci/hdspe-pcm.c @@ -34,7 +34,6 @@ #include #include -#include #include #include diff --git a/sys/dev/sound/pci/hdspe.c b/sys/dev/sound/pci/hdspe.c index f9c36df359e3..74a9ca968658 100644 --- a/sys/dev/sound/pci/hdspe.c +++ b/sys/dev/sound/pci/hdspe.c @@ -37,7 +37,6 @@ #include #include -#include #include #include diff --git a/sys/dev/sound/pci/solo.c b/sys/dev/sound/pci/solo.c index bee79e723696..82eabf3a4884 100644 --- a/sys/dev/sound/pci/solo.c +++ b/sys/dev/sound/pci/solo.c @@ -35,7 +35,6 @@ #include #include -#include #include "mixer_if.h" diff --git a/sys/dev/sound/pcm/sound.h b/sys/dev/sound/pcm/sound.h index 6c9f4c8f18b2..d2ec480b45b0 100644 --- a/sys/dev/sound/pcm/sound.h +++ b/sys/dev/sound/pcm/sound.h @@ -321,6 +321,22 @@ void snd_mtxassert(void *m); int sndstat_register(device_t dev, char *str); int sndstat_unregister(device_t dev); +/* These are the function codes assigned to the children of sound cards. */ +enum { + SCF_PCM, + SCF_MIDI, + SCF_SYNTH, +}; + +/* + * This is the device information struct, used by a bridge device to pass the + * device function code to the children. + */ +struct sndcard_func { + int func; /* The function code. */ + void *varinfo; /* Bridge-specific information. */ +}; + /* * this is rather kludgey- we need to duplicate these struct def'ns from sound.c * so that the macro versions of pcm_{,un}lock can dereference them. diff --git a/sys/dev/sound/usb/uaudio.c b/sys/dev/sound/usb/uaudio.c index 2351c2522021..d47eb86ed271 100644 --- a/sys/dev/sound/usb/uaudio.c +++ b/sys/dev/sound/usb/uaudio.c @@ -90,7 +90,6 @@ #include #include #include -#include #include "feeder_if.h" static int uaudio_default_rate = 0; /* use rate list */ diff --git a/sys/dev/sound/usb/uaudio_pcm.c b/sys/dev/sound/usb/uaudio_pcm.c index 9b17cb232907..0b3da9b20440 100644 --- a/sys/dev/sound/usb/uaudio_pcm.c +++ b/sys/dev/sound/usb/uaudio_pcm.c @@ -32,7 +32,6 @@ #endif #include -#include #include #include "mixer_if.h" From nobody Mon May 6 18:36:38 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99L52xtz5J2lf; Mon, 06 May 2024 18:36: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 4VY99L3VZwz4sQt; Mon, 6 May 2024 18:36:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020598; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7DMR9fH88aabKun0cGenUJn+ESHpsK48Mujdl2vWQO0=; b=bKQ3TXifsD6jluIIJwVQ4Ed7LpCGZ0RoRB4isaWSsCJrsiVHPOfGRtcaQIClbX2DzaBtzk zaG87xnaUVnTt7TBIfxhFvLvmLzp85WNtpLMInm/4GjhEjZnEOzkl0mOesaXselvCs7GWl A4QA7mELX/XwEym5mjnCATvYVegbxLQE/fzj9ZseF1M1TR5VhHJMY4Naa5/NOQLbyxeKGa +i7JHZmogfE9joShvqQ83SAhruya/rq0cWFOCQoWn2/suyaTfHpU/N+EwZQomn+tS2mLQf 90mB8J4RuAY44mJOPDFDfrOYH9xT4hffwQ0Up2gWdiQZ5/dHxRDClN+3mhlm2Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020598; a=rsa-sha256; cv=none; b=ZKHso7wieR49vnsDvyImSqmYrF0fOj+UQUiU/pRTGeqmqo7cWYQjcG9F6CvebNeIBgDDtG gmggmcNjlUFTydQTrUrTEERJ28IGxH1lVM6KTY9ZQp8zqav1/WypDjGpvrvKpjVLRk7wgt MWXOLaH35x2i+i1ublsPB9sddbQJlO/mDPIj+7n8KoGkVOItDNEnWdvZMLvKVH/1iFBI7H c6Yx1pEB/VERxf50C8YNmVjCgYOSbsz1zN4LDyUPVGcVH07smTvKXQ9uW0PIQKYjJNOzrQ JyApjhs/qvivCkFZ+0FTeSoqeFUwC2COChirmCgIQKE75ryU7PLBZKPH9vnlsw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020598; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7DMR9fH88aabKun0cGenUJn+ESHpsK48Mujdl2vWQO0=; b=u0tEBcc9L3wk5CCadLudqT8Nik4faRqV3Zc+uikHL/BmvgybO/6ugng3eCHEotGPmjYiAm sOKAJ64mhc/RBxxRC+f8fZ4O/+csJKYa+IOilprP7A+ZmHE55dWjOaKBOXPX3XHOIUXi36 BvQZcniKuBOoDu9gAl9sbjdqP5JdiwDaMR2sNR81K20Qr7eFMaKszW15rlMajje/qe62Pl eRtHVBEbvgnwCxyFXyAtI0Eif9Wtjx2+heYG1wBhQGzW7Chwz0lVUfxkwpAL876Mbs6FeO 6iqXVe7WfdsXg6JLseJmCLUErsOCkSnpHQHfprAFkl3HOMDP3dec+EkhEOadvA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99L34Nfz17tD; Mon, 6 May 2024 18:36: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 446IacdT060230; Mon, 6 May 2024 18:36:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446Iacou060227; Mon, 6 May 2024 18:36:38 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:38 GMT Message-Id: <202405061836.446Iacou060227@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 72cbd381075a - main - sound: Remove unused dsp_cdevs[] fields and devices List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 72cbd381075a2eb22a070505334d1ce92ec2d7ad Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=72cbd381075a2eb22a070505334d1ce92ec2d7ad commit 72cbd381075a2eb22a070505334d1ce92ec2d7ad Author: Christos Margiolis AuthorDate: 2024-05-06 18:32:25 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:55 +0000 sound: Remove unused dsp_cdevs[] fields and devices These fields and devices are unused as of e8c0d15a64fa ("sound: Get rid of snd_clone and use DEVFS_CDEVPRIV(9)"). While here, remove unused SND_DEV_* defines from pcm/sound.h and convert the list to an enum. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: dev_submerge.ch, markj Differential Revision: https://reviews.freebsd.org/D45013 --- sys/dev/sound/pcm/dsp.c | 57 +++++++++-------------------------------------- sys/dev/sound/pcm/sound.h | 50 +++++++++-------------------------------- 2 files changed, 21 insertions(+), 86 deletions(-) diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index 9c31fff7e8cd..6c3d76e27b6b 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -203,13 +203,6 @@ relchns(struct dsp_cdevpriv *priv, uint32_t prio) CHN_UNLOCK(priv->wrch); } -/* duplex / simplex cdev type */ -enum { - DSP_CDEV_TYPE_RDONLY, /* simplex read-only (record) */ - DSP_CDEV_TYPE_WRONLY, /* simplex write-only (play) */ - DSP_CDEV_TYPE_RDWR /* duplex read, write, or both */ -}; - #define DSP_F_VALID(x) ((x) & (FREAD | FWRITE)) #define DSP_F_DUPLEX(x) (((x) & (FREAD | FWRITE)) == (FREAD | FWRITE)) #define DSP_F_SIMPLEX(x) (!DSP_F_DUPLEX(x)) @@ -221,48 +214,18 @@ static const struct { char *name; char *sep; char *alias; - int use_sep; - int hw; - int max; - int volctl; - uint32_t fmt, spd; - int query; } dsp_cdevs[] = { - { SND_DEV_DSP, "dsp", ".", NULL, 0, 0, 0, 0, - SND_FORMAT(AFMT_U8, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, - { SND_DEV_AUDIO, "audio", ".", NULL, 0, 0, 0, 0, - SND_FORMAT(AFMT_MU_LAW, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, - { SND_DEV_DSP16, "dspW", ".", NULL, 0, 0, 0, 0, - SND_FORMAT(AFMT_S16_LE, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, - { SND_DEV_DSPHW_PLAY, "dsp", ".p", NULL, 1, 1, SND_MAXHWCHAN, 1, - SND_FORMAT(AFMT_S16_LE, 2, 0), 48000, DSP_CDEV_TYPE_WRONLY }, - { SND_DEV_DSPHW_VPLAY, "dsp", ".vp", NULL, 1, 1, SND_MAXVCHANS, 1, - SND_FORMAT(AFMT_S16_LE, 2, 0), 48000, DSP_CDEV_TYPE_WRONLY }, - { SND_DEV_DSPHW_REC, "dsp", ".r", NULL, 1, 1, SND_MAXHWCHAN, 1, - SND_FORMAT(AFMT_S16_LE, 2, 0), 48000, DSP_CDEV_TYPE_RDONLY }, - { SND_DEV_DSPHW_VREC, "dsp", ".vr", NULL, 1, 1, SND_MAXVCHANS, 1, - SND_FORMAT(AFMT_S16_LE, 2, 0), 48000, DSP_CDEV_TYPE_RDONLY }, - { SND_DEV_DSPHW_CD, "dspcd", ".", NULL, 0, 0, 0, 0, - SND_FORMAT(AFMT_S16_LE, 2, 0), 44100, DSP_CDEV_TYPE_RDWR }, + { SND_DEV_DSP, "dsp", ".", NULL }, + { SND_DEV_DSPHW_PLAY, "dsp", ".p", NULL }, + { SND_DEV_DSPHW_VPLAY, "dsp", ".vp", NULL }, + { SND_DEV_DSPHW_REC, "dsp", ".r", NULL }, + { SND_DEV_DSPHW_VREC, "dsp", ".vr", NULL }, /* Low priority, OSSv4 aliases. */ - { SND_DEV_DSP, "dsp_ac3", ".", "dsp", 0, 0, 0, 0, - SND_FORMAT(AFMT_U8, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, - { SND_DEV_DSP, "dsp_mmap", ".", "dsp", 0, 0, 0, 0, - SND_FORMAT(AFMT_U8, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, - { SND_DEV_DSP, "dsp_multich", ".", "dsp", 0, 0, 0, 0, - SND_FORMAT(AFMT_U8, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, - { SND_DEV_DSP, "dsp_spdifout", ".", "dsp", 0, 0, 0, 0, - SND_FORMAT(AFMT_U8, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, - { SND_DEV_DSP, "dsp_spdifin", ".", "dsp", 0, 0, 0, 0, - SND_FORMAT(AFMT_U8, 1, 0), DSP_DEFAULT_SPEED, - DSP_CDEV_TYPE_RDWR }, + { SND_DEV_DSP, "dsp_ac3", ".", "dsp" }, + { SND_DEV_DSP, "dsp_mmap", ".", "dsp" }, + { SND_DEV_DSP, "dsp_multich", ".", "dsp" }, + { SND_DEV_DSP, "dsp_spdifout", ".", "dsp" }, + { SND_DEV_DSP, "dsp_spdifin", ".", "dsp" }, }; static void diff --git a/sys/dev/sound/pcm/sound.h b/sys/dev/sound/pcm/sound.h index d2ec480b45b0..5a750440cbea 100644 --- a/sys/dev/sound/pcm/sound.h +++ b/sys/dev/sound/pcm/sound.h @@ -228,45 +228,17 @@ struct snd_mixer; #define AFMT_NE (AFMT_SIGNED_NE | AFMT_U8_NE | AFMT_U16_NE | \ AFMT_U24_NE | AFMT_U32_NE) -/* - * Minor numbers for the sound driver. - * - * Unfortunately Creative called the codec chip of SB as a DSP. For this - * reason the /dev/dsp is reserved for digitized audio use. There is a - * device for true DSP processors but it will be called something else. - * In v3.0 it's /dev/sndproc but this could be a temporary solution. - */ - -#define SND_DEV_CTL 0 /* Control port /dev/mixer */ -#define SND_DEV_SEQ 1 /* Sequencer /dev/sequencer */ -#define SND_DEV_MIDIN 2 /* Raw midi access */ -#define SND_DEV_DSP 3 /* Digitized voice /dev/dsp */ -#define SND_DEV_AUDIO 4 /* Sparc compatible /dev/audio */ -#define SND_DEV_DSP16 5 /* Like /dev/dsp but 16 bits/sample */ -#define SND_DEV_STATUS 6 /* /dev/sndstat */ - /* #7 not in use now. */ -#define SND_DEV_SEQ2 8 /* /dev/sequencer, level 2 interface */ -#define SND_DEV_SNDPROC 9 /* /dev/sndproc for programmable devices */ -#define SND_DEV_PSS SND_DEV_SNDPROC /* ? */ -#define SND_DEV_NORESET 10 - -#define SND_DEV_DSPHW_PLAY 11 /* specific playback channel */ -#define SND_DEV_DSPHW_VPLAY 12 /* specific virtual playback channel */ -#define SND_DEV_DSPHW_REC 13 /* specific record channel */ -#define SND_DEV_DSPHW_VREC 14 /* specific virtual record channel */ - -#define SND_DEV_DSPHW_CD 15 /* s16le/stereo 44100Hz CD */ - -/* - * OSSv4 compatible device. For now, it serve no purpose and - * the cloning itself will forward the request to ordinary /dev/dsp - * instead. - */ -#define SND_DEV_DSP_MMAP 16 /* /dev/dsp_mmap */ -#define SND_DEV_DSP_AC3 17 /* /dev/dsp_ac3 */ -#define SND_DEV_DSP_MULTICH 18 /* /dev/dsp_multich */ -#define SND_DEV_DSP_SPDIFOUT 19 /* /dev/dsp_spdifout */ -#define SND_DEV_DSP_SPDIFIN 20 /* /dev/dsp_spdifin */ +enum { + SND_DEV_CTL = 0, /* Control port /dev/mixer */ + SND_DEV_SEQ, /* Sequencer /dev/sequencer */ + SND_DEV_MIDIN, /* Raw midi access */ + SND_DEV_DSP, /* Digitized voice /dev/dsp */ + SND_DEV_STATUS, /* /dev/sndstat */ + SND_DEV_DSPHW_PLAY, /* specific playback channel */ + SND_DEV_DSPHW_VPLAY, /* specific virtual playback channel */ + SND_DEV_DSPHW_REC, /* specific record channel */ + SND_DEV_DSPHW_VREC, /* specific virtual record channel */ +}; #define DSP_DEFAULT_SPEED 8000 From nobody Mon May 6 18:36:39 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99M70Qfz5J2FN; Mon, 06 May 2024 18:36: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 4VY99M4Fl2z4sR6; Mon, 6 May 2024 18:36:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020599; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CYZp4ouTiySa6Vgs1VIx2n6lwn1F0HVXnLtbKwjIB+g=; b=XG0I52WRLWFryQRDjPxJWZ5VWrf+VJfwudmwk6J2/amsHDptWmBVkTSooKuLtB7+bXZHZb v1MWBxDVtEjtZPCchkY5cCN1kJBhvVYGDiBAnZFzNNb0lR4nIYcu5Cu83GL+MQ9AKQXRS/ ESS1ilNe15H4cXN+nA0BpD4cpKASkjgckurSmdBjVu9yRPYle4hyybZA7SXmta9DdND4pT cOJlSg8FQhqTIb0QKsWftHAmH7wZ5EajRwhIsYBre3CqoW7cNuQUMMGpIaQ4ykZfSgVFEl 6pJuiEeMgU0cZLSuFyqpVbIzJ5+vTSlrArHRopM4E9PPyodN9pFXr9UZGWYL5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020599; a=rsa-sha256; cv=none; b=AnarP7g2f8Vhyqtgz0h3CYqRxNPyFWd5O/81sRfau6fzkygl9qSGRamUXPY+ml4VDi4dNB y5dxh8yZe2GXab62QnhH2DQ8icQfha+y+nothrNxjujMC9zgKzwdxFsAEaN5El82NI0nXi MoQP+IdIxalAXpX8aEur+MDMqvepQLYCcfwOBktE5AjAkYPLs23yR85WQW0ox6uMHoc6hu N0bM2LqBeyAAG2i45mbOJxlt6CyzitibKtur1L7ROJaLgQDg52m6+kTZDWM+0aqM+SM0OB Zh1Ez+FtQFcIDQ8WyOoznF+NNDyHPKOgYrHaqrJEznUSrMm7zm6OUW/sURSVFw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020599; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CYZp4ouTiySa6Vgs1VIx2n6lwn1F0HVXnLtbKwjIB+g=; b=OQOsDdBv7F0qp5kLucsPALAd3EVPidSKN1oeM05SwY7/VTPCROYO8+UlJS7/J8oofOEIrN 7V4bLlHXuJ1uRwTFWF6vN5iOWXXt3Mx6H1ZLy9oTj8xQGCeL38uaZJDwJjSukn/qupPKo1 DOQ5b3mK8CceYJtI9unHvE9J//kTRFVI4YaIwSRow8ATJlVZyYXJNWxIIWbb9jNvWGYXiS ouXuNLRDrdNmFzJH2X79mTpwuNLeoM6KBM2xloTmJ2kSHkm8rPb57EaKmZc8ViQSOZQLms J2l9dGXiwmEGEg5YYbGbRCutio1ug2bbX/SW4aL+aZ7MFewfAECeDlRtFVlAkw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99M3sfJz17C3; Mon, 6 May 2024 18:36: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 446Iadmk060272; Mon, 6 May 2024 18:36:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IadwH060269; Mon, 6 May 2024 18:36:39 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:39 GMT Message-Id: <202405061836.446IadwH060269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: c597c5579232 - main - sound: Use nitems() where possible List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c597c557923288eff527594619a692a44ade909a Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=c597c557923288eff527594619a692a44ade909a commit c597c557923288eff527594619a692a44ade909a Author: Christos Margiolis AuthorDate: 2024-05-06 18:32:35 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:55 +0000 sound: Use nitems() where possible No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj, emaste Differential Revision: https://reviews.freebsd.org/D45014 --- sys/dev/sound/pci/atiixp.c | 4 ++-- sys/dev/sound/pci/hda/hdaa.c | 11 +++++++---- sys/dev/sound/pci/ich.c | 4 ++-- sys/dev/sound/pci/maestro3.c | 4 ++-- sys/dev/sound/pcm/dsp.c | 4 ++-- sys/dev/sound/pcm/feeder_format.c | 15 ++++++--------- sys/dev/sound/pcm/feeder_matrix.c | 4 ++-- sys/dev/sound/pcm/feeder_volume.c | 2 +- sys/dev/sound/pcm/mixer.c | 4 ++-- sys/dev/sound/pcm/sound.c | 5 +++-- 10 files changed, 29 insertions(+), 28 deletions(-) diff --git a/sys/dev/sound/pci/atiixp.c b/sys/dev/sound/pci/atiixp.c index dcbf041f9605..eeb28bb08276 100644 --- a/sys/dev/sound/pci/atiixp.c +++ b/sys/dev/sound/pci/atiixp.c @@ -1168,12 +1168,12 @@ atiixp_release_resource(struct atiixp_info *sc) static int atiixp_pci_probe(device_t dev) { - int i; + size_t i; uint16_t devid, vendor; vendor = pci_get_vendor(dev); devid = pci_get_device(dev); - for (i = 0; i < sizeof(atiixp_hw) / sizeof(atiixp_hw[0]); i++) { + for (i = 0; i < nitems(atiixp_hw); i++) { if (vendor == atiixp_hw[i].vendor && devid == atiixp_hw[i].devid) { device_set_desc(dev, atiixp_hw[i].desc); diff --git a/sys/dev/sound/pci/hda/hdaa.c b/sys/dev/sound/pci/hda/hdaa.c index dcd10cb36510..e8d9ee12fffc 100644 --- a/sys/dev/sound/pci/hda/hdaa.c +++ b/sys/dev/sound/pci/hda/hdaa.c @@ -267,7 +267,8 @@ hdaa_channels_handler(struct hdaa_audio_as *as) struct hdaa_chan *ch = &devinfo->chans[as->chans[0]]; struct hdaa_widget *w; uint8_t *eld; - int i, total, sub, assume, channels; + int total, sub, assume, channels; + size_t i; uint16_t cpins, upins, tpins; cpins = upins = 0; @@ -347,7 +348,7 @@ hdaa_channels_handler(struct hdaa_audio_as *as) printf("\n"); ); /* Look for maximal fitting matrix. */ - for (i = 0; i < sizeof(matrixes) / sizeof(struct matrix); i++) { + for (i = 0; i < nitems(matrixes); i++) { if (as->pinset != 0 && matrixes[i].analog == 0) continue; if ((matrixes[i].m.mask & ~channels) == 0) { @@ -1252,7 +1253,8 @@ hdaa_sysctl_config(SYSCTL_HANDLER_ARGS) static void hdaa_config_fetch(const char *str, uint32_t *on, uint32_t *off) { - int i = 0, j, k, len, inv; + size_t k; + int i = 0, j, len, inv; for (;;) { while (str[i] != '\0' && @@ -1292,7 +1294,8 @@ static int hdaa_sysctl_quirks(SYSCTL_HANDLER_ARGS) { char buf[256]; - int error, n = 0, i; + int error, n = 0; + size_t i; uint32_t quirks, quirks_off; quirks = *(uint32_t *)oidp->oid_arg1; diff --git a/sys/dev/sound/pci/ich.c b/sys/dev/sound/pci/ich.c index fbde0accfd28..910a371c6653 100644 --- a/sys/dev/sound/pci/ich.c +++ b/sys/dev/sound/pci/ich.c @@ -860,12 +860,12 @@ ich_init(struct sc_info *sc) static int ich_pci_probe(device_t dev) { - int i; + size_t i; uint16_t devid, vendor; vendor = pci_get_vendor(dev); devid = pci_get_device(dev); - for (i = 0; i < sizeof(ich_devs)/sizeof(ich_devs[0]); i++) { + for (i = 0; i < nitems(ich_devs); i++) { if (vendor == ich_devs[i].vendor && devid == ich_devs[i].devid) { device_set_desc(dev, ich_devs[i].name); diff --git a/sys/dev/sound/pci/maestro3.c b/sys/dev/sound/pci/maestro3.c index 6dd54a66f683..4d6dca310eea 100644 --- a/sys/dev/sound/pci/maestro3.c +++ b/sys/dev/sound/pci/maestro3.c @@ -488,7 +488,7 @@ m3_pchan_init(kobj_t kobj, void *devinfo, struct snd_dbuf *b, struct pcm_channel DMAC_BLOCKF_SELECTOR); /* set an armload of static initializers */ - for(i = 0 ; i < (sizeof(pv) / sizeof(pv[0])) ; i++) { + for(i = 0 ; i < nitems(pv); i++) { m3_wr_assp_data(sc, ch->dac_data + pv[i].addr, pv[i].val); } @@ -862,7 +862,7 @@ m3_rchan_init(kobj_t kobj, void *devinfo, struct snd_dbuf *b, struct pcm_channel DMAC_PAGE3_SELECTOR + DMAC_BLOCKF_SELECTOR); /* set an armload of static initializers */ - for(i = 0 ; i < (sizeof(rv) / sizeof(rv[0])) ; i++) { + for(i = 0 ; i < nitems(rv); i++) { m3_wr_assp_data(sc, ch->adc_data + rv[i].addr, rv[i].val); } diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index 6c3d76e27b6b..fe816db54697 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -1966,7 +1966,7 @@ dsp_clone(void *arg, struct ucred *cred, char *name, int namelen, struct cdev **dev) { struct snddev_info *d; - int i; + size_t i; if (*dev != NULL) return; @@ -2017,7 +2017,7 @@ SYSUNINIT(dsp_sysuninit, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, dsp_sysuninit, NULL); char * dsp_unit2name(char *buf, size_t len, struct pcm_channel *ch) { - int i; + size_t i; KASSERT(buf != NULL && len != 0, ("bogus buf=%p len=%ju", buf, (uintmax_t)len)); diff --git a/sys/dev/sound/pcm/feeder_format.c b/sys/dev/sound/pcm/feeder_format.c index 1e18e3e07450..3bdd808df0ee 100644 --- a/sys/dev/sound/pcm/feeder_format.c +++ b/sys/dev/sound/pcm/feeder_format.c @@ -115,16 +115,13 @@ static const struct { } }; -#define FEEDFORMAT_TAB_SIZE \ - ((int32_t)(sizeof(feed_format_ops) / sizeof(feed_format_ops[0]))) - static int feed_format_init(struct pcm_feeder *f) { struct feed_format_info *info; intpcm_read_t *rd_op; intpcm_write_t *wr_op; - int i; + size_t i; if (f->desc->in == f->desc->out || AFMT_CHANNEL(f->desc->in) != AFMT_CHANNEL(f->desc->out)) @@ -133,7 +130,7 @@ feed_format_init(struct pcm_feeder *f) rd_op = NULL; wr_op = NULL; - for (i = 0; i < FEEDFORMAT_TAB_SIZE && + for (i = 0; i < nitems(feed_format_ops) && (rd_op == NULL || wr_op == NULL); i++) { if (rd_op == NULL && AFMT_ENCODING(f->desc->in) == feed_format_ops[i].format) @@ -276,9 +273,9 @@ FEEDER_DECLARE(feeder_format, NULL); intpcm_read_t * feeder_format_read_op(uint32_t format) { - int i; + size_t i; - for (i = 0; i < FEEDFORMAT_TAB_SIZE; i++) { + for (i = 0; i < nitems(feed_format_ops); i++) { if (AFMT_ENCODING(format) == feed_format_ops[i].format) return (feed_format_ops[i].read); } @@ -289,9 +286,9 @@ feeder_format_read_op(uint32_t format) intpcm_write_t * feeder_format_write_op(uint32_t format) { - int i; + size_t i; - for (i = 0; i < FEEDFORMAT_TAB_SIZE; i++) { + for (i = 0; i < nitems(feed_format_ops); i++) { if (AFMT_ENCODING(format) == feed_format_ops[i].format) return (feed_format_ops[i].write); } diff --git a/sys/dev/sound/pcm/feeder_matrix.c b/sys/dev/sound/pcm/feeder_matrix.c index f5f02e2bf4f5..97cf86585636 100644 --- a/sys/dev/sound/pcm/feeder_matrix.c +++ b/sys/dev/sound/pcm/feeder_matrix.c @@ -230,7 +230,7 @@ feed_matrix_reset(struct feed_matrix_info *info) { uint32_t i, j; - for (i = 0; i < (sizeof(info->matrix) / sizeof(info->matrix[0])); i++) { + for (i = 0; i < nitems(info->matrix); i++) { for (j = 0; j < (sizeof(info->matrix[i].chn) / sizeof(info->matrix[i].chn[0])); j++) { @@ -679,7 +679,7 @@ feeder_matrix_compare(struct pcmchan_matrix *m_in, struct pcmchan_matrix *m_out) m_in->mask != m_out->mask) return (1); - for (i = 0; i < (sizeof(m_in->map) / sizeof(m_in->map[0])); i++) { + for (i = 0; i < nitems(m_in->map); i++) { if (m_in->map[i].type != m_out->map[i].type) return (1); if (m_in->map[i].type == SND_CHN_T_MAX) diff --git a/sys/dev/sound/pcm/feeder_volume.c b/sys/dev/sound/pcm/feeder_volume.c index 452d8788a5a5..7e600c131afe 100644 --- a/sys/dev/sound/pcm/feeder_volume.c +++ b/sys/dev/sound/pcm/feeder_volume.c @@ -337,7 +337,7 @@ feeder_volume_apply_matrix(struct pcm_feeder *f, struct pcmchan_matrix *m) info = f->data; - for (i = 0; i < (sizeof(info->matrix) / sizeof(info->matrix[0])); i++) { + for (i = 0; i < nitems(info->matrix); i++) { if (i < m->channels) info->matrix[i] = m->map[i].type; else diff --git a/sys/dev/sound/pcm/mixer.c b/sys/dev/sound/pcm/mixer.c index 3e197b120c9d..4e67a0227506 100644 --- a/sys/dev/sound/pcm/mixer.c +++ b/sys/dev/sound/pcm/mixer.c @@ -650,7 +650,7 @@ mixer_obj_create(device_t dev, kobj_class_t cls, void *devinfo, int type, const char *desc) { struct snd_mixer *m; - int i; + size_t i; KASSERT(dev != NULL && cls != NULL && devinfo != NULL, ("%s(): NULL data dev=%p cls=%p devinfo=%p", @@ -671,7 +671,7 @@ mixer_obj_create(device_t dev, kobj_class_t cls, void *devinfo, m->devinfo = devinfo; m->busy = 0; m->dev = dev; - for (i = 0; i < (sizeof(m->parent) / sizeof(m->parent[0])); i++) { + for (i = 0; i < nitems(m->parent); i++) { m->parent[i] = SOUND_MIXER_NONE; m->child[i] = 0; m->realdev[i] = i; diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index d2acfc403e8c..afa19f9f0624 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -880,7 +880,8 @@ sound_oss_sysinfo(oss_sysinfo *si) struct snddev_info *d; struct pcm_channel *c; - int i, j, ncards; + int j, ncards; + size_t i; ncards = 0; @@ -958,7 +959,7 @@ sound_oss_sysinfo(oss_sysinfo *si) * Si->filler is a reserved array, but according to docs each * element should be set to -1. */ - for (i = 0; i < sizeof(si->filler)/sizeof(si->filler[0]); i++) + for (i = 0; i < nitems(si->filler); i++) si->filler[i] = -1; } From nobody Mon May 6 18:36:40 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99P130kz5J2p8; Mon, 06 May 2024 18:36: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 4VY99N5RkWz4st9; Mon, 6 May 2024 18:36:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020600; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pnFR68R++F/AX7FhQP6vGTuSRi7srx456BgkjJUlbPs=; b=HxJqAv4skT6RX2755TkVpilCYvOCIqcFX9k60YG5i/ZmdFTXOYRZsgV/mSjfQDVTiPFgEW Ohod/ZYqUA9CVfN9+GaBgm/GM6sxtWXwa+gwrQwp9dI0FW4KuOE/+iy96Z8kvmZgLvv1xP vDeOB6DYisoZgugPwfFnqJrH2on0Z7X4m480sChkVhq5dWKVYdF4uKhvzombC5vwEfSII8 x2D2j4DFoXHQA3Bzn2S4Kw/vMNzlLAHbpkCN2kq/KuYqC7SAJu8OCkBKzvHbatbhtrbh4D +P5rIf6VxRDvTP7oQkJTbobWcZl7FV19KzUARK1DX8dPTdOjbSDDJ13sNl7lCQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020600; a=rsa-sha256; cv=none; b=e94ZYspQS60vJy2/dttjIcb7XuLgGXGw8f+LPUDd6LggV3rLbOeHxV+4ajUxeKON6btpNS uNlGUMPbM+B6q9s8QiXAwuDnGOSVfWFU+HVTXes2Pd3RnBU1Ygorh6dT3j4y68litT0DTf Xth5E1r8BsoOSymySlyfpqRLksCAKYnrMiqNADKAIP73kLs0ru9ia0UDmcWjoA0i/R02sh MTcDU9u6daOFDalpbUk28n7reJyu4aKJfqU+IEXe/3ymm6dy+mvQ/yPDUlNh8P7wq4kJte /3P8Q+yP6sR1pcL9KcX6CUCplTaZFhpnq942/ffmrVRAKRGwjPm1cQhq9aealg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020600; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pnFR68R++F/AX7FhQP6vGTuSRi7srx456BgkjJUlbPs=; b=eE1NVTVJt9ew9Bxev5vL8cPHqntiTqbAbdYNXZAV4jjWqKJgU5gZ4qPoC08wagJkMq41o8 NqXQFw20yfLPA8WTGNPkkc7UhEkwzIygW2i+9bfy/AVDislrRdWPBWqKgve3ILa2yG18D0 /cv/XDNVL0I9uyu+ajpH8XVk6bwFTiOxX/I1dY7gYAWievFQOCoZ1Z71YwPa5R0AuLX6Vl WsRg+E9H60JzCFj1v++jGaj7HZflZgjG2IQjjky79GwVAgDxizjtx+6bfQ6WcI+Xr99Ew2 qd3raxiBCG9clPWJ+aOCZVWf/X6TLaCKn3TgaDR69VE3WiRujDPBjk4NUPKHEw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99N4lxWz17C4; Mon, 6 May 2024 18:36: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 446Iaepu060317; Mon, 6 May 2024 18:36:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IaeSr060314; Mon, 6 May 2024 18:36:40 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:40 GMT Message-Id: <202405061836.446IaeSr060314@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 7ad5f383fcb5 - main - sound: Move vchan-related code to pcm/vchan.* List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7ad5f383fcb507482d5606c8eb7a324b3621a9db Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=7ad5f383fcb507482d5606c8eb7a324b3621a9db commit 7ad5f383fcb507482d5606c8eb7a324b3621a9db Author: Christos Margiolis AuthorDate: 2024-05-06 18:32:46 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:55 +0000 sound: Move vchan-related code to pcm/vchan.* pcm/sound.* contains code that should be part of pcm/vchan.*. Changes: - pcm_setvchans() -> vchan_setnew() - pcm_setmaxautovchans() -> vchan_setmaxauto() - hw.snd.maxautovchans moved to pcm/vchan.c - snd_maxautovchans declaration moved to pcm/vchan.h and definition to pcm/vchan.c Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: dev_submerge.ch, markj Differential Revision: https://reviews.freebsd.org/D45015 --- sys/dev/sound/pcm/feeder.c | 1 + sys/dev/sound/pcm/sound.c | 176 +-------------------------------------------- sys/dev/sound/pcm/sound.h | 2 - sys/dev/sound/pcm/vchan.c | 173 +++++++++++++++++++++++++++++++++++++++++++- sys/dev/sound/pcm/vchan.h | 5 ++ 5 files changed, 180 insertions(+), 177 deletions(-) diff --git a/sys/dev/sound/pcm/feeder.c b/sys/dev/sound/pcm/feeder.c index 78443ad76140..0113299bd0d4 100644 --- a/sys/dev/sound/pcm/feeder.c +++ b/sys/dev/sound/pcm/feeder.c @@ -32,6 +32,7 @@ #endif #include +#include #include "feeder_if.h" diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index afa19f9f0624..971054261030 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -56,8 +56,6 @@ static int snd_unit_auto = -1; SYSCTL_INT(_hw_snd, OID_AUTO, default_auto, CTLFLAG_RWTUN, &snd_unit_auto, 0, "assign default unit to a newly attached device"); -int snd_maxautovchans = 16; - SYSCTL_NODE(_hw, OID_AUTO, snd, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "Sound driver"); @@ -111,126 +109,6 @@ snd_setup_intr(device_t dev, struct resource *res, int flags, driver_intr_t hand return bus_setup_intr(dev, res, flags, NULL, hand, param, cookiep); } -int -pcm_setvchans(struct snddev_info *d, int direction, int newcnt, int num) -{ - struct pcm_channel *c, *ch, *nch; - struct pcmchan_caps *caps; - int i, err, vcnt; - - PCM_BUSYASSERT(d); - - if ((direction == PCMDIR_PLAY && d->playcount < 1) || - (direction == PCMDIR_REC && d->reccount < 1)) - return (ENODEV); - - if (!(d->flags & SD_F_AUTOVCHAN)) - return (EINVAL); - - if (newcnt < 0 || newcnt > SND_MAXVCHANS) - return (E2BIG); - - if (direction == PCMDIR_PLAY) - vcnt = d->pvchancount; - else if (direction == PCMDIR_REC) - vcnt = d->rvchancount; - else - return (EINVAL); - - if (newcnt > vcnt) { - KASSERT(num == -1 || - (num >= 0 && num < SND_MAXVCHANS && (newcnt - 1) == vcnt), - ("bogus vchan_create() request num=%d newcnt=%d vcnt=%d", - num, newcnt, vcnt)); - /* add new vchans - find a parent channel first */ - ch = NULL; - CHN_FOREACH(c, d, channels.pcm) { - CHN_LOCK(c); - if (c->direction == direction && - ((c->flags & CHN_F_HAS_VCHAN) || (vcnt == 0 && - c->refcount < 1 && - !(c->flags & (CHN_F_BUSY | CHN_F_VIRTUAL))))) { - /* - * Reuse hw channel with vchans already - * created. - */ - if (c->flags & CHN_F_HAS_VCHAN) { - ch = c; - break; - } - /* - * No vchans ever created, look for - * channels with supported formats. - */ - caps = chn_getcaps(c); - if (caps == NULL) { - CHN_UNLOCK(c); - continue; - } - for (i = 0; caps->fmtlist[i] != 0; i++) { - if (caps->fmtlist[i] & AFMT_CONVERTIBLE) - break; - } - if (caps->fmtlist[i] != 0) { - ch = c; - break; - } - } - CHN_UNLOCK(c); - } - if (ch == NULL) - return (EBUSY); - ch->flags |= CHN_F_BUSY; - err = 0; - while (err == 0 && newcnt > vcnt) { - err = vchan_create(ch, num); - if (err == 0) - vcnt++; - else if (err == E2BIG && newcnt > vcnt) - device_printf(d->dev, - "%s: err=%d Maximum channel reached.\n", - __func__, err); - } - if (vcnt == 0) - ch->flags &= ~CHN_F_BUSY; - CHN_UNLOCK(ch); - if (err != 0) - return (err); - } else if (newcnt < vcnt) { - KASSERT(num == -1, - ("bogus vchan_destroy() request num=%d", num)); - CHN_FOREACH(c, d, channels.pcm) { - CHN_LOCK(c); - if (c->direction != direction || - CHN_EMPTY(c, children) || - !(c->flags & CHN_F_HAS_VCHAN)) { - CHN_UNLOCK(c); - continue; - } - CHN_FOREACH_SAFE(ch, c, nch, children) { - CHN_LOCK(ch); - if (vcnt == 1 && c->refcount > 0) { - CHN_UNLOCK(ch); - break; - } - if (!(ch->flags & CHN_F_BUSY) && - ch->refcount < 1) { - err = vchan_destroy(ch); - if (err == 0) - vcnt--; - } else - CHN_UNLOCK(ch); - if (vcnt == newcnt) - break; - } - CHN_UNLOCK(c); - break; - } - } - - return (0); -} - /* return error status and a locked channel */ int pcm_chnalloc(struct snddev_info *d, struct pcm_channel **ch, int direction, @@ -287,7 +165,7 @@ vchan_alloc: /* no channel available */ if (!(vchancount > 0 && vchancount < snd_maxautovchans)) return (err); - err = pcm_setvchans(d, direction, vchancount + 1, -1); + err = vchan_setnew(d, direction, vchancount + 1, -1); if (err == 0) { retry = true; goto retry_chnalloc; @@ -296,25 +174,6 @@ vchan_alloc: return (err); } -static void -pcm_setmaxautovchans(struct snddev_info *d, int num) -{ - PCM_BUSYASSERT(d); - - if (num < 0) - return; - - if (num >= 0 && d->pvchancount > num) - (void)pcm_setvchans(d, PCMDIR_PLAY, num, -1); - else if (num > 0 && d->pvchancount == 0) - (void)pcm_setvchans(d, PCMDIR_PLAY, 1, -1); - - if (num >= 0 && d->rvchancount > num) - (void)pcm_setvchans(d, PCMDIR_REC, num, -1); - else if (num > 0 && d->rvchancount == 0) - (void)pcm_setvchans(d, PCMDIR_REC, 1, -1); -} - static int sysctl_hw_snd_default_unit(SYSCTL_HANDLER_ARGS) { @@ -338,37 +197,6 @@ SYSCTL_PROC(_hw_snd, OID_AUTO, default_unit, sizeof(int), sysctl_hw_snd_default_unit, "I", "default sound device"); -static int -sysctl_hw_snd_maxautovchans(SYSCTL_HANDLER_ARGS) -{ - struct snddev_info *d; - int i, v, error; - - v = snd_maxautovchans; - error = sysctl_handle_int(oidp, &v, 0, req); - if (error == 0 && req->newptr != NULL) { - if (v < 0) - v = 0; - if (v > SND_MAXVCHANS) - v = SND_MAXVCHANS; - snd_maxautovchans = v; - for (i = 0; pcm_devclass != NULL && - i < devclass_get_maxunit(pcm_devclass); i++) { - d = devclass_get_softc(pcm_devclass, i); - if (!PCM_REGISTERED(d)) - continue; - PCM_ACQUIRE_QUICK(d); - pcm_setmaxautovchans(d, v); - PCM_RELEASE_QUICK(d); - } - } - return (error); -} -SYSCTL_PROC(_hw_snd, OID_AUTO, maxautovchans, - CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NEEDGIANT, 0, sizeof(int), - sysctl_hw_snd_maxautovchans, "I", - "maximum virtual channel"); - void pcm_chn_add(struct snddev_info *d, struct pcm_channel *ch) { @@ -549,7 +377,7 @@ pcm_setstatus(device_t dev, char *str) if (d->playcount > 0 || d->reccount > 0) d->flags |= SD_F_AUTOVCHAN; - pcm_setmaxautovchans(d, snd_maxautovchans); + vchan_setmaxauto(d, snd_maxautovchans); strlcpy(d->status, str, SND_STATUSLEN); diff --git a/sys/dev/sound/pcm/sound.h b/sys/dev/sound/pcm/sound.h index 5a750440cbea..e4a3ba41ee7f 100644 --- a/sys/dev/sound/pcm/sound.h +++ b/sys/dev/sound/pcm/sound.h @@ -247,7 +247,6 @@ enum { extern int pcm_veto_load; extern int snd_unit; -extern int snd_maxautovchans; extern int snd_verbose; extern devclass_t pcm_devclass; extern struct unrhdr *pcmsg_unrhdr; @@ -265,7 +264,6 @@ extern struct unrhdr *pcmsg_unrhdr; SYSCTL_DECL(_hw_snd); -int pcm_setvchans(struct snddev_info *d, int direction, int newcnt, int num); int pcm_chnalloc(struct snddev_info *d, struct pcm_channel **ch, int direction, pid_t pid, char *comm); diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index 1a21b7049b77..9df23298b742 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -57,6 +57,8 @@ struct vchan_info { int trigger; }; +int snd_maxautovchans = 16; + static void * vchan_init(kobj_t obj, void *devinfo, struct snd_dbuf *b, struct pcm_channel *c, int dir) @@ -337,7 +339,7 @@ sysctl_dev_pcm_vchans(SYSCTL_HANDLER_ARGS) cnt = 0; if (cnt > SND_MAXVCHANS) cnt = SND_MAXVCHANS; - err = pcm_setvchans(d, direction, cnt, -1); + err = vchan_setnew(d, direction, cnt, -1); } PCM_RELEASE_QUICK(d); @@ -930,6 +932,175 @@ vchan_sync(struct pcm_channel *c) return (ret); } +int +vchan_setnew(struct snddev_info *d, int direction, int newcnt, int num) +{ + struct pcm_channel *c, *ch, *nch; + struct pcmchan_caps *caps; + int i, err, vcnt; + + PCM_BUSYASSERT(d); + + if ((direction == PCMDIR_PLAY && d->playcount < 1) || + (direction == PCMDIR_REC && d->reccount < 1)) + return (ENODEV); + + if (!(d->flags & SD_F_AUTOVCHAN)) + return (EINVAL); + + if (newcnt < 0 || newcnt > SND_MAXVCHANS) + return (E2BIG); + + if (direction == PCMDIR_PLAY) + vcnt = d->pvchancount; + else if (direction == PCMDIR_REC) + vcnt = d->rvchancount; + else + return (EINVAL); + + if (newcnt > vcnt) { + KASSERT(num == -1 || + (num >= 0 && num < SND_MAXVCHANS && (newcnt - 1) == vcnt), + ("bogus vchan_create() request num=%d newcnt=%d vcnt=%d", + num, newcnt, vcnt)); + /* add new vchans - find a parent channel first */ + ch = NULL; + CHN_FOREACH(c, d, channels.pcm) { + CHN_LOCK(c); + if (c->direction == direction && + ((c->flags & CHN_F_HAS_VCHAN) || (vcnt == 0 && + c->refcount < 1 && + !(c->flags & (CHN_F_BUSY | CHN_F_VIRTUAL))))) { + /* + * Reuse hw channel with vchans already + * created. + */ + if (c->flags & CHN_F_HAS_VCHAN) { + ch = c; + break; + } + /* + * No vchans ever created, look for + * channels with supported formats. + */ + caps = chn_getcaps(c); + if (caps == NULL) { + CHN_UNLOCK(c); + continue; + } + for (i = 0; caps->fmtlist[i] != 0; i++) { + if (caps->fmtlist[i] & AFMT_CONVERTIBLE) + break; + } + if (caps->fmtlist[i] != 0) { + ch = c; + break; + } + } + CHN_UNLOCK(c); + } + if (ch == NULL) + return (EBUSY); + ch->flags |= CHN_F_BUSY; + err = 0; + while (err == 0 && newcnt > vcnt) { + err = vchan_create(ch, num); + if (err == 0) + vcnt++; + else if (err == E2BIG && newcnt > vcnt) + device_printf(d->dev, + "%s: err=%d Maximum channel reached.\n", + __func__, err); + } + if (vcnt == 0) + ch->flags &= ~CHN_F_BUSY; + CHN_UNLOCK(ch); + if (err != 0) + return (err); + } else if (newcnt < vcnt) { + KASSERT(num == -1, + ("bogus vchan_destroy() request num=%d", num)); + CHN_FOREACH(c, d, channels.pcm) { + CHN_LOCK(c); + if (c->direction != direction || + CHN_EMPTY(c, children) || + !(c->flags & CHN_F_HAS_VCHAN)) { + CHN_UNLOCK(c); + continue; + } + CHN_FOREACH_SAFE(ch, c, nch, children) { + CHN_LOCK(ch); + if (vcnt == 1 && c->refcount > 0) { + CHN_UNLOCK(ch); + break; + } + if (!(ch->flags & CHN_F_BUSY) && + ch->refcount < 1) { + err = vchan_destroy(ch); + if (err == 0) + vcnt--; + } else + CHN_UNLOCK(ch); + if (vcnt == newcnt) + break; + } + CHN_UNLOCK(c); + break; + } + } + + return (0); +} + +void +vchan_setmaxauto(struct snddev_info *d, int num) +{ + PCM_BUSYASSERT(d); + + if (num < 0) + return; + + if (num >= 0 && d->pvchancount > num) + (void)vchan_setnew(d, PCMDIR_PLAY, num, -1); + else if (num > 0 && d->pvchancount == 0) + (void)vchan_setnew(d, PCMDIR_PLAY, 1, -1); + + if (num >= 0 && d->rvchancount > num) + (void)vchan_setnew(d, PCMDIR_REC, num, -1); + else if (num > 0 && d->rvchancount == 0) + (void)vchan_setnew(d, PCMDIR_REC, 1, -1); +} + +static int +sysctl_hw_snd_maxautovchans(SYSCTL_HANDLER_ARGS) +{ + struct snddev_info *d; + int i, v, error; + + v = snd_maxautovchans; + error = sysctl_handle_int(oidp, &v, 0, req); + if (error == 0 && req->newptr != NULL) { + if (v < 0) + v = 0; + if (v > SND_MAXVCHANS) + v = SND_MAXVCHANS; + snd_maxautovchans = v; + for (i = 0; pcm_devclass != NULL && + i < devclass_get_maxunit(pcm_devclass); i++) { + d = devclass_get_softc(pcm_devclass, i); + if (!PCM_REGISTERED(d)) + continue; + PCM_ACQUIRE_QUICK(d); + vchan_setmaxauto(d, v); + PCM_RELEASE_QUICK(d); + } + } + return (error); +} +SYSCTL_PROC(_hw_snd, OID_AUTO, maxautovchans, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NEEDGIANT, 0, sizeof(int), + sysctl_hw_snd_maxautovchans, "I", "maximum virtual channel"); + void vchan_initsys(device_t dev) { diff --git a/sys/dev/sound/pcm/vchan.h b/sys/dev/sound/pcm/vchan.h index e2dcc9761261..dcc1d6e9ff32 100644 --- a/sys/dev/sound/pcm/vchan.h +++ b/sys/dev/sound/pcm/vchan.h @@ -30,6 +30,8 @@ #ifndef _SND_VCHAN_H_ #define _SND_VCHAN_H_ +extern int snd_maxautovchans; + int vchan_create(struct pcm_channel *, int); int vchan_destroy(struct pcm_channel *); @@ -45,6 +47,9 @@ int vchan_sync(struct pcm_channel *); sndbuf_getfmt((c)->bufhard) != (c)->parentchannel->format || \ sndbuf_getspd((c)->bufhard) != (c)->parentchannel->speed)) +int vchan_setnew(struct snddev_info *, int, int, int); +void vchan_setmaxauto(struct snddev_info *, int); + void vchan_initsys(device_t); /* From nobody Mon May 6 18:36:41 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99Q2JxKz5J2ln; Mon, 06 May 2024 18:36: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 4VY99P63kwz4sqw; Mon, 6 May 2024 18:36:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020601; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cHUeC7u2TP/f6J0n0GeuvjiH4czzF5O1OfbcOrAFPg4=; b=ViyFtPiKeb/WfM0IRio3W3/ccvFb8qYmxw2Za58QTIzF7acM4k7OTv3PYZapI8imJRiaSr uglDGqwnfiyq/x9FEmkpmi2/+QW8zFNDYTNRFt0umHoyjJaRbxHXH6Cdk+ce3Bzaszont0 WdmqQUHwDKK4+Fobos7xGrY4Onii3vBuhBTrr25FnFzbOoq3Q3AkoxzmHTVVSsJvKzq6T5 AbDoN/pffauus4GuqMfUMQ0sIYmziD2gwkVW5Zu+lKKBstad6MMLdp8Oli25JhwutnfBLa Gf/y5mDR2poNqqW6DJFgBr0MYS9Lojj+JJjZMbUbv4YOyf1RSV08Ipcf4sgkLA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020601; a=rsa-sha256; cv=none; b=xLed65+171iWyFE9IvYJNoTi6HTsxWW24D97CJAguukxyCBFRAwbjYTChkFvZ6u6GdgCXF ysKbgqK94oseCRHMGKTVdL1vmWKgn9Kw13xAMSQVPs7TOKCSDaqWTW+CaG8xAYuFbs33JR L1cxmeBCPczD4hKGbGkjrrDtRiGslu9yBg5PUpuHKZAyJ6+/w8m1rxyQx9I2pGmLaiI1xB om47EjeI/ucjvjNcwRyPFzwFwdNJDED1wD5oiDyGF2Zq+G1UyFilu3ti2YXefPc+1koeZB OeDABWgFYqRTVz0aTj+GKrC5eJVA8NjNJZCmPLWeK3JXqUv5hXJVFNapLU6l/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020601; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cHUeC7u2TP/f6J0n0GeuvjiH4czzF5O1OfbcOrAFPg4=; b=lB6HdUJKmbaiCTxpsbf7b/T79B43R4qJPLa+QiH0qXqgJGCqm2jPc8zJBIE9K9xIHhIu/e uDR8/kxmIDpt8d8Xw9xDxOiWOqx7rv8vNDq5+1FObeaMdPjQ+pDgkmBWvm+PFe62AiDmZg yuZBMmv/f07b7dz/YWUs9BFYHI4UtoLvK7UmDexZQEEGG0774CPh/dPP7K/LNVXnZCvvbl 34UotqM9VZLSpwizS46uaosxQ15Ot+TThKBp4DHa0fP6FcjPhcNNUo/mXeHjO3uDJGiHMJ D5t8ay4NbbPXw/qhPeAm2r8CtluIu1BCsAjgGDxQf9yv2837wSi3Aj+PrBhwmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99P5gRgz16xG; Mon, 6 May 2024 18:36: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 446Iafsj060359; Mon, 6 May 2024 18:36:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IafYP060356; Mon, 6 May 2024 18:36:41 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:41 GMT Message-Id: <202405061836.446IafYP060356@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 77ab4263bc42 - main - sound: Rename pcm_getparentchannel() to vchan_getparentchannel() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 77ab4263bc42a5dcc102bbea39ce4f7f46b8d4f8 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=77ab4263bc42a5dcc102bbea39ce4f7f46b8d4f8 commit 77ab4263bc42a5dcc102bbea39ce4f7f46b8d4f8 Author: Christos Margiolis AuthorDate: 2024-05-06 18:32:57 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:55 +0000 sound: Rename pcm_getparentchannel() to vchan_getparentchannel() Follow the rest of the vchan.c naming convention. No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D45016 --- sys/dev/sound/pcm/vchan.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index 9df23298b742..904ce6661675 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -251,7 +251,7 @@ static kobj_method_t vchan_methods[] = { CHANNEL_DECLARE(vchan); static void -pcm_getparentchannel(struct snddev_info *d, +vchan_getparentchannel(struct snddev_info *d, struct pcm_channel **wrch, struct pcm_channel **rdch) { struct pcm_channel **ch, *wch, *rch, *c; @@ -380,9 +380,9 @@ sysctl_dev_pcm_vchanmode(SYSCTL_HANDLER_ARGS) PCM_UNLOCK(d); if (direction == PCMDIR_PLAY) - pcm_getparentchannel(d, &c, NULL); + vchan_getparentchannel(d, &c, NULL); else - pcm_getparentchannel(d, NULL, &c); + vchan_getparentchannel(d, NULL, &c); if (c == NULL) { PCM_RELEASE_QUICK(d); @@ -482,9 +482,9 @@ sysctl_dev_pcm_vchanrate(SYSCTL_HANDLER_ARGS) PCM_UNLOCK(d); if (direction == PCMDIR_PLAY) - pcm_getparentchannel(d, &c, NULL); + vchan_getparentchannel(d, &c, NULL); else - pcm_getparentchannel(d, NULL, &c); + vchan_getparentchannel(d, NULL, &c); if (c == NULL) { PCM_RELEASE_QUICK(d); @@ -591,9 +591,9 @@ sysctl_dev_pcm_vchanformat(SYSCTL_HANDLER_ARGS) PCM_UNLOCK(d); if (direction == PCMDIR_PLAY) - pcm_getparentchannel(d, &c, NULL); + vchan_getparentchannel(d, &c, NULL); else - pcm_getparentchannel(d, NULL, &c); + vchan_getparentchannel(d, NULL, &c); if (c == NULL) { PCM_RELEASE_QUICK(d); From nobody Mon May 6 18:36:42 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY99R2xPkz5J2pC; Mon, 06 May 2024 18: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 4VY99R03GYz4snd; Mon, 6 May 2024 18: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=1715020603; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W6nFVB3Txw0Dhm5N4k7ZidUhCK0WwAokvMuO1zEBIa0=; b=oSZg4eUuREdM/DmQCmcsVC3joyUB3jyoZrb4kkLOCQln7HAePRQ8QWLXy34oMWGNSMo/Cy fP+jVA2U5PGn6VhDEobedEMXdWs9BrV+sb+8/A3xypTSh9qZPSWG04+TAIT6H8awZGjFhD 8emYuIrR51jGe2mByi7pMl9TWZiJSlHsGH/o48eHikQ8HUekzMF/CuzYPTzR4eny834IWf gAxnkOZnp9st/J/D6e6Vn5x5Yl2AH6vuj0G6NiIv30hdcwB/78HWTx4rm+x1CmhOMLq6cp BCjJYippmrYv4Dmi9Wyjz/Vojzm2QEssi2+IkLUGzqmjHvCvHYHSmZldJGquew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020603; a=rsa-sha256; cv=none; b=SKfJ0n9aD1eJolGyiqecRTMiwIXu4OivC4YFLgzb31esJ8FBpEI/ioad3kXAS9NpkdxAP3 sBlmOjfmqAFGUVri4ot3phzy0BHI65G7PRKztmFpg4WQBV5LqSikqPN7B2BFypzo/+MFO4 0Wu9lWO9Q5e4nSEuOspJFw55B/0HeLf/oTHeoucVV22QVT4cpHB2MOlfgYngRTBwtFVYtP qSMij4YMcFD5LhEcTFKqOxjraprDc+xsA1lGl9hPTXXGzeCxxmvoxOBN3sWL4HBTkbc0tP oGkxEVY4IBO2mnlPpMcxkzi+L7UGRIfRdm00Xvknr85QWsitQTsglAmGIE+eWQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020603; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W6nFVB3Txw0Dhm5N4k7ZidUhCK0WwAokvMuO1zEBIa0=; b=anQPJX+V0gD7fZ7taSY+8FMY84Skvr+4M83DFZUKxLfaktHWf2VdFt4cRwfO43sxCnvDEV ZY6umZtTBNKfa4mcSA+d+G/FxLS/ScwO8gBnQXdsz2UyxfD6PX6G58Dwldvqbkdq/rT2xL 1boPxWNZdr/TurF8LTww4F5TIU2rODHG4Hh9syoJp7xJEzY4febM2ecA9sbNuv5aEEg3To 4YNjQ7zO5F5/ce3WS8ZAvxuvhjHMzF/AHqz1MKQeWUwHSYUujaMpftHSEEANu4qL3CivSW j9WRv6DM7mHEIT36BZS9IJ4+bAIVifP03lkT0vumj0dedLHev3zYJlqRsQaSwQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY99Q6knnz17wk; Mon, 6 May 2024 18:36: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 446IagAo060422; Mon, 6 May 2024 18:36:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446Iagon060419; Mon, 6 May 2024 18:36:42 GMT (envelope-from git) Date: Mon, 6 May 2024 18:36:42 GMT Message-Id: <202405061836.446Iagon060419@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 3af2beb8b24b - main - sound: Remove unused "num" argument from chn_init() and related callers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3af2beb8b24ba21fb7e7fbd165a79b8eeff37712 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=3af2beb8b24ba21fb7e7fbd165a79b8eeff37712 commit 3af2beb8b24ba21fb7e7fbd165a79b8eeff37712 Author: Christos Margiolis AuthorDate: 2024-05-06 18:33:11 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:35:55 +0000 sound: Remove unused "num" argument from chn_init() and related callers It is always -1 (i.e unused). Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D45095 --- sys/dev/sound/pcm/channel.c | 11 ++--------- sys/dev/sound/pcm/channel.h | 2 +- sys/dev/sound/pcm/sound.c | 4 ++-- sys/dev/sound/pcm/vchan.c | 27 ++++++++++++--------------- sys/dev/sound/pcm/vchan.h | 4 ++-- 5 files changed, 19 insertions(+), 29 deletions(-) diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c index 996cb0cb04f7..846885b9d729 100644 --- a/sys/dev/sound/pcm/channel.c +++ b/sys/dev/sound/pcm/channel.c @@ -1159,7 +1159,7 @@ chn_reset(struct pcm_channel *c, uint32_t fmt, uint32_t spd) struct pcm_channel * chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, - int dir, int num, void *devinfo) + int dir, void *devinfo) { struct pcm_channel *c; struct feeder_class *fc; @@ -1169,7 +1169,6 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, PCM_BUSYASSERT(d); PCM_LOCKASSERT(d); - KASSERT(num >= -1, ("invalid num=%d", num)); switch (dir) { case PCMDIR_PLAY: @@ -1207,7 +1206,7 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, goto out1; } - unit = (num == -1) ? 0 : num; + unit = 0; if (*pnum >= max || unit >= max) { device_printf(d->dev, "%s(): unit=%d or pnum=%d >= than " @@ -1220,12 +1219,6 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, CHN_FOREACH(c, d, channels.pcm) { if (c->type != type) continue; - if (unit == c->unit && num != -1) { - device_printf(d->dev, - "%s(): channel num=%d already allocated\n", - __func__, unit); - goto out1; - } unit++; if (unit >= max) { device_printf(d->dev, diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h index 6aca089a7c4d..445882a62f0a 100644 --- a/sys/dev/sound/pcm/channel.h +++ b/sys/dev/sound/pcm/channel.h @@ -260,7 +260,7 @@ int chn_flush(struct pcm_channel *c); int chn_poll(struct pcm_channel *c, int ev, struct thread *td); struct pcm_channel *chn_init(struct snddev_info *d, struct pcm_channel *parent, - kobj_class_t cls, int dir, int num, void *devinfo); + kobj_class_t cls, int dir, void *devinfo); void chn_kill(struct pcm_channel *c); void chn_shutdown(struct pcm_channel *c); int chn_release(struct pcm_channel *c); diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index 971054261030..17a7138519ac 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -165,7 +165,7 @@ vchan_alloc: /* no channel available */ if (!(vchancount > 0 && vchancount < snd_maxautovchans)) return (err); - err = vchan_setnew(d, direction, vchancount + 1, -1); + err = vchan_setnew(d, direction, vchancount + 1); if (err == 0) { retry = true; goto retry_chnalloc; @@ -274,7 +274,7 @@ pcm_addchan(device_t dev, int dir, kobj_class_t cls, void *devinfo) PCM_BUSYASSERT(d); PCM_LOCK(d); - ch = chn_init(d, NULL, cls, dir, -1, devinfo); + ch = chn_init(d, NULL, cls, dir, devinfo); if (!ch) { device_printf(d->dev, "chn_init(%s, %d, %p) failed\n", cls->name, dir, devinfo); diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index 904ce6661675..8ba8138e55f1 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -339,7 +339,7 @@ sysctl_dev_pcm_vchans(SYSCTL_HANDLER_ARGS) cnt = 0; if (cnt > SND_MAXVCHANS) cnt = SND_MAXVCHANS; - err = vchan_setnew(d, direction, cnt, -1); + err = vchan_setnew(d, direction, cnt); } PCM_RELEASE_QUICK(d); @@ -664,7 +664,7 @@ sysctl_dev_pcm_vchanformat(SYSCTL_HANDLER_ARGS) "play.vchanrate" : "rec.vchanrate" int -vchan_create(struct pcm_channel *parent, int num) +vchan_create(struct pcm_channel *parent) { struct snddev_info *d; struct pcm_channel *ch; @@ -700,7 +700,7 @@ vchan_create(struct pcm_channel *parent, int num) } /* create a new playback channel */ - ch = chn_init(d, parent, &vchan_class, direction, num, parent); + ch = chn_init(d, parent, &vchan_class, direction, parent); if (ch == NULL) { PCM_UNLOCK(d); CHN_LOCK(parent); @@ -933,7 +933,7 @@ vchan_sync(struct pcm_channel *c) } int -vchan_setnew(struct snddev_info *d, int direction, int newcnt, int num) +vchan_setnew(struct snddev_info *d, int direction, int newcnt) { struct pcm_channel *c, *ch, *nch; struct pcmchan_caps *caps; @@ -959,10 +959,9 @@ vchan_setnew(struct snddev_info *d, int direction, int newcnt, int num) return (EINVAL); if (newcnt > vcnt) { - KASSERT(num == -1 || - (num >= 0 && num < SND_MAXVCHANS && (newcnt - 1) == vcnt), - ("bogus vchan_create() request num=%d newcnt=%d vcnt=%d", - num, newcnt, vcnt)); + KASSERT((newcnt - 1) == vcnt, + ("bogus vchan_create() request newcnt=%d vcnt=%d", + newcnt, vcnt)); /* add new vchans - find a parent channel first */ ch = NULL; CHN_FOREACH(c, d, channels.pcm) { @@ -1004,7 +1003,7 @@ vchan_setnew(struct snddev_info *d, int direction, int newcnt, int num) ch->flags |= CHN_F_BUSY; err = 0; while (err == 0 && newcnt > vcnt) { - err = vchan_create(ch, num); + err = vchan_create(ch); if (err == 0) vcnt++; else if (err == E2BIG && newcnt > vcnt) @@ -1018,8 +1017,6 @@ vchan_setnew(struct snddev_info *d, int direction, int newcnt, int num) if (err != 0) return (err); } else if (newcnt < vcnt) { - KASSERT(num == -1, - ("bogus vchan_destroy() request num=%d", num)); CHN_FOREACH(c, d, channels.pcm) { CHN_LOCK(c); if (c->direction != direction || @@ -1061,14 +1058,14 @@ vchan_setmaxauto(struct snddev_info *d, int num) return; if (num >= 0 && d->pvchancount > num) - (void)vchan_setnew(d, PCMDIR_PLAY, num, -1); + (void)vchan_setnew(d, PCMDIR_PLAY, num); else if (num > 0 && d->pvchancount == 0) - (void)vchan_setnew(d, PCMDIR_PLAY, 1, -1); + (void)vchan_setnew(d, PCMDIR_PLAY, 1); if (num >= 0 && d->rvchancount > num) - (void)vchan_setnew(d, PCMDIR_REC, num, -1); + (void)vchan_setnew(d, PCMDIR_REC, num); else if (num > 0 && d->rvchancount == 0) - (void)vchan_setnew(d, PCMDIR_REC, 1, -1); + (void)vchan_setnew(d, PCMDIR_REC, 1); } static int diff --git a/sys/dev/sound/pcm/vchan.h b/sys/dev/sound/pcm/vchan.h index dcc1d6e9ff32..1f0fa058cf71 100644 --- a/sys/dev/sound/pcm/vchan.h +++ b/sys/dev/sound/pcm/vchan.h @@ -32,7 +32,7 @@ extern int snd_maxautovchans; -int vchan_create(struct pcm_channel *, int); +int vchan_create(struct pcm_channel *); int vchan_destroy(struct pcm_channel *); #ifdef SND_DEBUG @@ -47,7 +47,7 @@ int vchan_sync(struct pcm_channel *); sndbuf_getfmt((c)->bufhard) != (c)->parentchannel->format || \ sndbuf_getspd((c)->bufhard) != (c)->parentchannel->speed)) -int vchan_setnew(struct snddev_info *, int, int, int); +int vchan_setnew(struct snddev_info *, int, int); void vchan_setmaxauto(struct snddev_info *, int); void vchan_initsys(device_t); From nobody Mon May 6 18:37:53 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY9Bn6mZKz5J2pL; Mon, 06 May 2024 18:37: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 4VY9Bn6G07z3xXc; Mon, 6 May 2024 18:37:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020673; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5a0TBdIqywgQjMYwpmMO1SHkv1ve3xxqzItcAFrnAJs=; b=jpJYTnpUDjuyNDUFAMrT2FjlvbCgcWSL7+Ph3nqPoso1aQj5NDjwUODRhhqIotggCcgINR 5iS8ZyoNcs5PVHGW+xFhNyM/WFpSh6y8nxGP5Dj8us7un2LYH4ocWw0ZprbkC97gpfzy9G 6flC6srLZdH0h5WX7Xn3E8yX8xAfqMSvW1QNRBjGVtz19V5lq2AfloSsYnOgzwAXrxzhlR GzpJTetZfjGfCd019brsvrxYWMI19F3cvWZtzCxfg/z53NQ6QxCDaqEjD+mV98VzICE8M+ Id6Qh3WloQGg+QXCbxXfBU86KRSokJZ1JAGn9ai2BDkHJUn9f+TEXnjbVbrzuA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020673; a=rsa-sha256; cv=none; b=CmNFG74yWY9xCGBOe4EME3kjEdmNL+gZ4+lTfwmGWFDoGcuV247glLpdfaPNmWwo+H52V+ R79q2RYVBO/dot89kzPOBbnOJz1N236d5NW7w611TmAFjfyy3Pjq7EgdOBjy8mGJSaEztU WgGHZW7Qega62bb3wOD4JVPIauAoKid2BYRF9V9r/yaq5SiEp9Qo5Gs245bESG7TpMur0g lY8IHwPf2qR5kxcgC7vzd6OcDzqtTix133Hvwlt91Froqw2mdoZKc/rIM2fxictmjbUGk7 KJojIMEp4nkCJom1KNFWuRE1I/atXLbJA2+36rkOysm+YHFslVwnPv7UlIVNqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020673; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5a0TBdIqywgQjMYwpmMO1SHkv1ve3xxqzItcAFrnAJs=; b=EmzvH40jRNwsdcH8ygthneRQ9HMl2nRxtrkWsbgtluUOu1Jm93oWsRi7cI6C27da6kgkrR XYCIknk2AQ4BHFhXoWqpJpfprX4FsnxEVKe6kRxkVEnmPSpjBCnPtVKVMM2g4iIWRqvro1 hoG3qq9SANDrAPCGyq7LFfUhoFCdjsO2XS9sMvle7W8Why16CraIYemBlSs9NZqxbocrBT in4qMJlkYFyma1dPRqVxqwhoFWy3hujepwGD4imDrLgP9EdCQlxmN6zDXOrqBy0m0O2qkB ZkS3zEagY9rpJ21osgPiFgmblmLOGRu15VPgapkv6pGG65/M6LhEG3AyLWCcZA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY9Bn5sBdz17dx; Mon, 6 May 2024 18:37:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 446IbrXD060774; Mon, 6 May 2024 18:37:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IbrFp060771; Mon, 6 May 2024 18:37:53 GMT (envelope-from git) Date: Mon, 6 May 2024 18:37:53 GMT Message-Id: <202405061837.446IbrFp060771@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marko Zec Subject: git: 858010643c54 - main - fib_dxr: free() does nothing if arg is NULL, so remove a redundant check. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zec X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 858010643c54c4c03e477ce452b0a0c25ecc405a Auto-Submitted: auto-generated The branch main has been updated by zec: URL: https://cgit.FreeBSD.org/src/commit/?id=858010643c54c4c03e477ce452b0a0c25ecc405a commit 858010643c54c4c03e477ce452b0a0c25ecc405a Author: Marko Zec AuthorDate: 2024-05-06 18:34:11 +0000 Commit: Marko Zec CommitDate: 2024-05-06 18:37:44 +0000 fib_dxr: free() does nothing if arg is NULL, so remove a redundant check. MFC after: 1 week --- sys/netinet/in_fib_dxr.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index db4f4a537e22..55f79994f552 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -1142,14 +1142,11 @@ static void dxr_destroy(void *data) { struct dxr *dxr = data; - struct dxr_aux *da; + struct dxr_aux *da = dxr->aux; struct chunk_desc *cdp; struct trie_desc *tp; - if (dxr->d != NULL) - free(dxr->d, M_DXRLPM); - - da = dxr->aux; + free(dxr->d, M_DXRLPM); free(dxr, M_DXRAUX); if (da == NULL || atomic_fetchadd_int(&da->refcnt, -1) > 1) From nobody Mon May 6 18:43:08 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY9Jr2XGCz5J3NG; Mon, 06 May 2024 18:43: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 4VY9Jr20qxz3yv1; Mon, 6 May 2024 18:43:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020988; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hsUYbmqXN+yGLsS157s8m/eWkxOq4TQFTfy8xFK9nag=; b=BN58HOLLW1Nief+90wKk9uVSmUhiPkNmczewdSbINu//eGTG9VNmSfcVCYRiGEONRcksYr ZBOtZpDb1YrcciLwDNV6PcHPBXKVxDjPtSrMWK1toWyeIDHJ8hxL32Cvc83p72ZMA1rn82 Zg4+Wx++VOrH8pJKQdF5O9mRKvnfnIaBcpiguUh5BjEqWmsYCujAsGeV1mU/cW8M5BJa+q mL2hQX8HES30/fl0WBeUeb2vModVhJ9SnRQ58w/UFzY2WjHqq8FNYz/UBXuba19jdgiHt3 H5MmyDo9Zt//6v06RPbSNJwJs1URPDvQh2pFPmsFqHYpkhWVzwJlOncAwWiRTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715020988; a=rsa-sha256; cv=none; b=q6CWC2f0qNlhX5DbN1fn8BiOwJqNtQHZry5iFcYHN8Bxa/Fdi0KpxdvzfHR8klrymRchUs U5ABcQl9/+CqdFFkcxr3SweiYyJD7DWXglc5xHAHIhAO8ddsyZcluwueY1w2rmQHZRFp82 IRTC6l3F1k4S6+RugfYbsBtiqeIEG1OJyTDu7UN4/kS0n3ekcrISpdPxzGfBOyO8RdeVwX Y05e4IeF72djdbZ3SIDqtJZgM81B7znNGvPzet5Dvwy4ZOEjinCOr3N5Ywo2/H6r0K1CaH 6voOe8mZMpqKXcjalNfFcudTDAgYBJX+uug636W8+n/lkSiUmLwPMoWNrSmxGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715020988; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hsUYbmqXN+yGLsS157s8m/eWkxOq4TQFTfy8xFK9nag=; b=vPuI6u5FhY++dBoKI30K+vckC6z+N/KbbJV3SY1TJcy57+HGfbJbcx0VQYM0pJOAlt0/o6 PJaTP74QutNbUFW2/nyF3l1f6v2A2O6xmY8/CQYKHsg/l3516PLYy6xCT5XAr0p5hAPKa/ +11uuEjKz3H1qQOA3Gyf8liYdUPjgF71vR4jw01Bm7dx14gLK1PBo+PcNPJ/0xA5r6FIaX W26uDY/6zWJcrImaM/lT+LFTiNM+AVj/zGoIawc00SzFeDYizZWFGhYMKqFXB+L8TpqpDj aRWAfbp5JSsYPvrijLqGc3hnT9qzDTS6psuwOlxWXukiDMqWbB6E5oJxptSXrg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY9Jr1cDLz17rK; Mon, 6 May 2024 18:43: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 446Ih843076569; Mon, 6 May 2024 18:43:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446Ih8Hh076566; Mon, 6 May 2024 18:43:08 GMT (envelope-from git) Date: Mon, 6 May 2024 18:43:08 GMT Message-Id: <202405061843.446Ih8Hh076566@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marko Zec Subject: git: 5295e891d0d3 - main - fib_dxr: update comment. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zec X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5295e891d0d306e37ab2feb7a3fc922339cd6632 Auto-Submitted: auto-generated The branch main has been updated by zec: URL: https://cgit.FreeBSD.org/src/commit/?id=5295e891d0d306e37ab2feb7a3fc922339cd6632 commit 5295e891d0d306e37ab2feb7a3fc922339cd6632 Author: Marko Zec AuthorDate: 2024-05-06 18:42:31 +0000 Commit: Marko Zec CommitDate: 2024-05-06 18:42:31 +0000 fib_dxr: update comment. MFC after: 1 week --- sys/netinet/in_fib_dxr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index 55f79994f552..3015564953c6 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -1098,7 +1098,7 @@ dxr2_try_squeeze: } /* - * Glue functions for attaching to FreeBSD 13 fib_algo infrastructure. + * Glue functions for attaching to the FIB_ALGO infrastructure. */ static struct nhop_object * From nobody Mon May 6 18:47:41 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY9Q55Fkjz5J3nK; Mon, 06 May 2024 18:47: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 4VY9Q54YyDz40Lp; Mon, 6 May 2024 18:47:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715021261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NF/yuIWA0op/RW7GR1clfjPu2hNOTIKcOtNN35LErE4=; b=CbpUph5wRmfrh3dvPraCx0jMqVjWng5yWRrdiVCVcOsoGh4jpGnvgJUOLeufjnillB0nzP z6B9MD7hLQFc6Usgj88Xhq6aBjFBhhnkeyJT1uS8fL5HppLW3WEtPUBBqErY7xrOFBnZBf o+cqk2x7OqxyLrzL1SKKXPX5+WC+8UixE7PPbRN5u5bCUclNzn95biuhRb5iwal5c4II9i UFDxYtddcsQ9U1ISijolvuvuy+m5n4PCuggK47oVrXBjiUQsMRBlMAHWVfI7now3Hsc3Jt iLzhqfiLN5CW+iSMAwbaTJXR8F2BpCfYnkZXlZ75e9e9F0EXzjYSdKos54skWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715021261; a=rsa-sha256; cv=none; b=J8AG0FEEPxAOKuazfaGSYvRtuZHD2+dxObcPW85+FLnVpxJ6JyjLOfXCRxhbpe5Nvw+Vod P62YIJl3/eEJF4ZtSdvAujuc1K6PEgmEaDF1zpAZLNJanfw0v3dlUApkg4ky7ceOFQbK+h 04Iwkux6HNJXiGImi/0VSVhOVeUdRFMFhJT/t9ZyHNoRUpx8PVuBCRYW4yrvXYyIxslAUJ hMQpsR75XsJ+tDuc962WomXfgCOEmVT9oNJ0k1ykpTazr+UZknTGHQHC2uIh5vQb+Ym3dC 8ZWw6isCYt6b+62zSsnEpkP69xrdJx32dLdmRVHXJof3ELduW2miXckV9I7+Yw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715021261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NF/yuIWA0op/RW7GR1clfjPu2hNOTIKcOtNN35LErE4=; b=yJSTQVmwXDiSESrO+eZgszQXAJUf0QFmvsk2qmcn9I6oMigvj7/c92vSgctbg/Re/RyWU9 3CSr+TaQJvvV128e7fuIhornpDSlRl5ZCBJQOkeAq9vYKLu7qjwYy2xhWvDsrrWR1FJpNc 01djOneGioealI6At8EVZQyb+HNgrOm3l4Et0dxTT2Qpf46t9U5L2jbqZBKoR/eBJPFiSw +spC9i+xiKTeO6sDs0NYMSvjZ2BrSHIObrKg77l28Rnw+VnTzPndcY8TtAyzEZqkdq8KM3 9c7oZc5pLKhQ0LrvSJwaHC6dsPSD5CCncLCDo43rrVbBbatW1ZqWFKG6ny9xNw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY9Q542v1z188V; Mon, 6 May 2024 18:47: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 446Ilftw077333; Mon, 6 May 2024 18:47:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446IlfhR077330; Mon, 6 May 2024 18:47:41 GMT (envelope-from git) Date: Mon, 6 May 2024 18:47:41 GMT Message-Id: <202405061847.446IlfhR077330@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 2b14465faa8d - main - sound: Update pcm/vchan.c LICENSE header List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2b14465faa8dd9d228b764359672b38b4c8ca8c1 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=2b14465faa8dd9d228b764359672b38b4c8ca8c1 commit 2b14465faa8dd9d228b764359672b38b4c8ca8c1 Author: Christos Margiolis AuthorDate: 2024-05-06 18:47:33 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 18:47:33 +0000 sound: Update pcm/vchan.c LICENSE header Sponsored by: The FreeBSD Foundation MFC after: 1 week --- sys/dev/sound/pcm/vchan.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/dev/sound/pcm/vchan.c b/sys/dev/sound/pcm/vchan.c index 8ba8138e55f1..528c6fa62621 100644 --- a/sys/dev/sound/pcm/vchan.c +++ b/sys/dev/sound/pcm/vchan.c @@ -4,6 +4,10 @@ * Copyright (c) 2006-2009 Ariff Abdullah * Copyright (c) 2001 Cameron Grant * All rights reserved. + * Copyright (c) 2024 The FreeBSD Foundation + * + * Portions of this software were developed by Christos Margiolis + * 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 From nobody Mon May 6 19:03:54 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VY9mq0Q6bz5J5fW; Mon, 06 May 2024 19:03: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 4VY9mp6SQ3z41xd; Mon, 6 May 2024 19:03:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715022234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iEE65XVPYAKTxB2kqMw8sdngwLpaA9swAz8JbTgLVXw=; b=Ok/nKKChN3o7X3mikEBZtwBmlTrcj7rozSQdp5Vj+I76pF4CGnbKl9iqaDa/NMQ+Xs7C3P YkEaF7dyynPJQx1/FCoTdYikccKVC4wmz0RRCPlAq0/d5ecEtCyxmbCasBo7xiGOzTr0dd iBnDKrTf7Ihj0FevDtKJmeLa7qDWKX1esh8R46RKMUyj2oM1UNEH55tLkia3FbCFhrlNwO W3ssQ38ybRo2IGSnb5Kf42T8X5nCnpsHYB8uMAkG3QH0NR2272xAKECeDlpCkk6agpYi78 FNcSBWuE5CpPGwRS6WGkj81Ttn3XIWVeuGG/b9wRcfc6bXb1a0ZNjjjqRP3CIw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715022234; a=rsa-sha256; cv=none; b=lyS0blf5V50GwwGz1rFkkAUYg17hJySrmKroOtpv9ub4ypqWIdPU2LPg8ydF4Ox6MbdTtE B0At0Nmz5BkIU6MqOqS4iE9rOcgiV1mkDoaRKaU0/NcsgalMGZXgwh+cJMvInvso/hpYgm LmM4SUYcnalajLHKJRIImz9ehxFfrDtrdNfoKgaphVRzWqgLuoJ4q6Z8uk3ugNQMWQ7xgu xglBJ/U1BSw70pL6DDfsiy+PNLBYeE/QxP1/9xwEqELttRQEZXhRWhSceboLtrFPy4CljY pMOpdeqxBr6s1fiO9yvJq5wW5mAPupUCkZUB2RDe8Agx9F96gwcKFHFEXIhudg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715022234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iEE65XVPYAKTxB2kqMw8sdngwLpaA9swAz8JbTgLVXw=; b=eD5JB28Bqm06eiicFORJYgYA7at8U9fWz17/sUX2cFuJHp/d/coDMzIc1vK9iihcQIL3S/ C39tvS584O6B5QZFP1yjS1YkKFRRKJptLON1wsj+ChOHIQNAulLs3JY0pS5HTgrp3W4lT3 5NyvTczYIHSj9gxkc0WRHQ6yXE5P5r0bkZ5vxhlX09p+DAvDP8oq42BvJaDihwXS80rkoW I10jVXEGUBnVgqnm4fzuoaXCF7H2TamZ9x7jDmPzb8MukIZhscLGjNdjH2EsyyqeLNx1RH uUFyl0HJFnTIeSXX2mL6w6YH6/3oKD9Darn7FoEO0fQcfnVB0hELz/EMzI9bLQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VY9mp5lgKz18P5; Mon, 6 May 2024 19:03:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 446J3sw0011564; Mon, 6 May 2024 19:03:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446J3sLa011561; Mon, 6 May 2024 19:03:54 GMT (envelope-from git) Date: Mon, 6 May 2024 19:03:54 GMT Message-Id: <202405061903.446J3sLa011561@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: e9b411d27333 - main - tests/fusefs: fix all tests that depend on kern.maxphys List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e9b411d273336647e61704213964b995952a44fd Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=e9b411d273336647e61704213964b995952a44fd commit e9b411d273336647e61704213964b995952a44fd Author: Gleb Smirnoff AuthorDate: 2024-05-06 19:03:20 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-06 19:03:20 +0000 tests/fusefs: fix all tests that depend on kern.maxphys The tests try to read kern.maxphys sysctl into int value, while unsigned long is required. Not sure when this was broken, seems like since cd8537910406e. Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D45053 --- tests/sys/fs/fusefs/bmap.cc | 12 ++++++------ tests/sys/fs/fusefs/read.cc | 2 +- tests/sys/fs/fusefs/utils.cc | 13 ++++++------- tests/sys/fs/fusefs/utils.hh | 2 +- tests/sys/fs/fusefs/write.cc | 5 +++-- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/tests/sys/fs/fusefs/bmap.cc b/tests/sys/fs/fusefs/bmap.cc index 4c9edac9360a..48c9c7d038ed 100644 --- a/tests/sys/fs/fusefs/bmap.cc +++ b/tests/sys/fs/fusefs/bmap.cc @@ -105,8 +105,8 @@ TEST_F(Bmap, bmap) arg.runb = -1; ASSERT_EQ(0, ioctl(fd, FIOBMAP2, &arg)) << strerror(errno); EXPECT_EQ(arg.bn, pbn); - EXPECT_EQ(arg.runp, m_maxphys / m_maxbcachebuf - 1); - EXPECT_EQ(arg.runb, m_maxphys / m_maxbcachebuf - 1); + EXPECT_EQ((unsigned long)arg.runp, m_maxphys / m_maxbcachebuf - 1); + EXPECT_EQ((unsigned long)arg.runb, m_maxphys / m_maxbcachebuf - 1); leak(fd); } @@ -142,7 +142,7 @@ TEST_F(Bmap, default_) arg.runb = -1; ASSERT_EQ(0, ioctl(fd, FIOBMAP2, &arg)) << strerror(errno); EXPECT_EQ(arg.bn, 0); - EXPECT_EQ(arg.runp, m_maxphys / m_maxbcachebuf - 1); + EXPECT_EQ((unsigned long )arg.runp, m_maxphys / m_maxbcachebuf - 1); EXPECT_EQ(arg.runb, 0); /* In the middle */ @@ -152,8 +152,8 @@ TEST_F(Bmap, default_) arg.runb = -1; ASSERT_EQ(0, ioctl(fd, FIOBMAP2, &arg)) << strerror(errno); EXPECT_EQ(arg.bn, lbn * m_maxbcachebuf / DEV_BSIZE); - EXPECT_EQ(arg.runp, m_maxphys / m_maxbcachebuf - 1); - EXPECT_EQ(arg.runb, m_maxphys / m_maxbcachebuf - 1); + EXPECT_EQ((unsigned long )arg.runp, m_maxphys / m_maxbcachebuf - 1); + EXPECT_EQ((unsigned long )arg.runb, m_maxphys / m_maxbcachebuf - 1); /* Last block */ lbn = filesize / m_maxbcachebuf - 1; @@ -163,7 +163,7 @@ TEST_F(Bmap, default_) ASSERT_EQ(0, ioctl(fd, FIOBMAP2, &arg)) << strerror(errno); EXPECT_EQ(arg.bn, lbn * m_maxbcachebuf / DEV_BSIZE); EXPECT_EQ(arg.runp, 0); - EXPECT_EQ(arg.runb, m_maxphys / m_maxbcachebuf - 1); + EXPECT_EQ((unsigned long )arg.runb, m_maxphys / m_maxbcachebuf - 1); leak(fd); } diff --git a/tests/sys/fs/fusefs/read.cc b/tests/sys/fs/fusefs/read.cc index 373f742d4fd3..9693428914e6 100644 --- a/tests/sys/fs/fusefs/read.cc +++ b/tests/sys/fs/fusefs/read.cc @@ -1339,7 +1339,7 @@ TEST_P(ReadAhead, readahead) { expect_open(ino, 0, 1); maxcontig = m_noclusterr ? m_maxbcachebuf : m_maxbcachebuf + m_maxreadahead; - clustersize = MIN(maxcontig, m_maxphys); + clustersize = MIN((unsigned long )maxcontig, m_maxphys); for (offs = 0; offs < bufsize; offs += clustersize) { len = std::min((size_t)clustersize, (size_t)(filesize - offs)); expect_read(ino, offs, len, len, contents + offs); diff --git a/tests/sys/fs/fusefs/utils.cc b/tests/sys/fs/fusefs/utils.cc index 55a552e28eeb..831ded0c0815 100644 --- a/tests/sys/fs/fusefs/utils.cc +++ b/tests/sys/fs/fusefs/utils.cc @@ -130,8 +130,7 @@ class FuseEnv: public Environment { void FuseTest::SetUp() { const char *maxbcachebuf_node = "vfs.maxbcachebuf"; const char *maxphys_node = "kern.maxphys"; - int val = 0; - size_t size = sizeof(val); + size_t size; /* * XXX check_environment should be called from FuseEnv::SetUp, but @@ -141,12 +140,12 @@ void FuseTest::SetUp() { if (IsSkipped()) return; - ASSERT_EQ(0, sysctlbyname(maxbcachebuf_node, &val, &size, NULL, 0)) - << strerror(errno); - m_maxbcachebuf = val; - ASSERT_EQ(0, sysctlbyname(maxphys_node, &val, &size, NULL, 0)) + size = sizeof(m_maxbcachebuf); + ASSERT_EQ(0, sysctlbyname(maxbcachebuf_node, &m_maxbcachebuf, &size, + NULL, 0)) << strerror(errno); + size = sizeof(m_maxphys); + ASSERT_EQ(0, sysctlbyname(maxphys_node, &m_maxphys, &size, NULL, 0)) << strerror(errno); - m_maxphys = val; /* * Set the default max_write to a distinct value from MAXPHYS to catch * bugs that confuse the two. diff --git a/tests/sys/fs/fusefs/utils.hh b/tests/sys/fs/fusefs/utils.hh index 383f01ea4bfe..506e8a985212 100644 --- a/tests/sys/fs/fusefs/utils.hh +++ b/tests/sys/fs/fusefs/utils.hh @@ -77,7 +77,7 @@ class FuseTest : public ::testing::Test { public: int m_maxbcachebuf; - int m_maxphys; + unsigned long m_maxphys; FuseTest(): m_maxreadahead(0), diff --git a/tests/sys/fs/fusefs/write.cc b/tests/sys/fs/fusefs/write.cc index f931f350a7c3..336ec79c8fec 100644 --- a/tests/sys/fs/fusefs/write.cc +++ b/tests/sys/fs/fusefs/write.cc @@ -184,7 +184,7 @@ virtual void SetUp() { if (m_maxphys < 2 * DFLTPHYS) GTEST_SKIP() << "MAXPHYS must be at least twice DFLTPHYS" << " for this test"; - if (m_maxphys < 2 * m_maxbcachebuf) + if (m_maxphys < 2 * (unsigned long )m_maxbcachebuf) GTEST_SKIP() << "MAXPHYS must be at least twice maxbcachebuf" << " for this test"; } @@ -860,7 +860,8 @@ TEST_F(WriteMaxWrite, write) ssize_t halfbufsize, bufsize; halfbufsize = m_mock->m_maxwrite; - if (halfbufsize >= m_maxbcachebuf || halfbufsize >= m_maxphys) + if (halfbufsize >= m_maxbcachebuf || + (unsigned long )halfbufsize >= m_maxphys) GTEST_SKIP() << "Must lower m_maxwrite for this test"; bufsize = halfbufsize * 2; contents = new int[bufsize / sizeof(int)]; From nobody Mon May 6 19:35:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYBTX1yQKz5J9Jl; Mon, 06 May 2024 19:35: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 4VYBTX10Bsz45j9; Mon, 6 May 2024 19:35:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715024144; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ib3rg2hQU8Fg7r9Z3PIbMUN9+xG26/jbMsUTBv+T7fg=; b=uJBgqUChLP3x2yRwVqew/WO+yiswgf6ncygmXtav77pN7tqkhwdTluCporek2OJ97sXVXo sCaNGV1oD9nW4+swK2FcdS1+xyWPo65UlM+NBYe5/dZRSm4wDB7Ix1fmhi//7hBkmrWq4G J7MI2PmpaV3aKTO3f1Sr738rXHoxeYSqxKwC2mKE4gNcj+5qQjZE0D+lh1q105OezlFu9A hMZ9LZY/7bO//FKPeriYs0I+nQg7jbe0V4W833sog4diRoqZlxqImpE5GBG0akZWRuAJJH YtwDsKOiPo4ijGP7779RTpCRnOcAVnu3k0HgP49OZvA8fER74FGi7ISGjX7Lew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715024144; a=rsa-sha256; cv=none; b=GefhQdTZO16A5nLNTL1gN2Kj20iG0bfWReOtNYKJSUL8UXT80VvjP4drNOxlswmPXrlQij Yw8wdv3OydUzcPkiDIGTodQC7npCKTHmCx58oSBPUqcryUFDdAw9SMUJeMI/he+cVqMkmJ cHT5wvwwpCttjQVQBQWuC6MQ3vxMYiDkRuDm5LSncrPwMY1tOj6IFQHx14gYyIykOdixqS w8o87JTn6kTLTCcwc89ryi7oG/9oc6XoIcsm1fUV08ed78q9LSB9zO+M7qBdUxiFbT+vRL LOQCOyZYa95HZAf/jljn2ivFG/1ckQjfgGtY01JteYOfN6ecAxe3YP0NcMeKfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715024144; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ib3rg2hQU8Fg7r9Z3PIbMUN9+xG26/jbMsUTBv+T7fg=; b=R7ZBJPnS1kU9wOC1mrdnQYniaOvYHaMZ86gbmukjR6eNnzI9AV21953YuyNzuyaIx7M7m/ uSwwJzf3/WAkbJYKKJCapv0Q+j+jeigc7VwCSNYJvadggRKshlD19kIo4Fv1GqSJO7psPq uO6H+rJivhNUa18LXLPAopYRuLgRfFq/pubMItigqL4J+Dytwh/rDJFqDSoyVn6BZ+ypsg jWuL7Qgh8EfsjmgvEurX49jWFBr/ldW3Zk3zQpP/cMwevwSZmHqSHFxqcYtVXrlOwXEjYG qY4i4aEHsV/GYf1BRT108xtczx9Ua8DM7ukVPyj1do5HpxT1K3N5EPjK6jskTg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYBTX0bXMz19Pb; Mon, 6 May 2024 19:35: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 446JZh3s063449; Mon, 6 May 2024 19:35:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446JZhDP063446; Mon, 6 May 2024 19:35:43 GMT (envelope-from git) Date: Mon, 6 May 2024 19:35:43 GMT Message-Id: <202405061935.446JZhDP063446@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: a3513995f549 - main - arm: Remove stray references to dev/sound/chip.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a3513995f549e2e649b89a1fecbfb351d9825bac Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=a3513995f549e2e649b89a1fecbfb351d9825bac commit a3513995f549e2e649b89a1fecbfb351d9825bac Author: Christos Margiolis AuthorDate: 2024-05-06 19:35:30 +0000 Commit: Christos Margiolis CommitDate: 2024-05-06 19:35:30 +0000 arm: Remove stray references to dev/sound/chip.h Fixes: 923e0040a59a ("sound: Move chip.h contents to pcm/sound.h") Reported by: Jenkins CI Sponsored by: The FreeBSD Foundation MFC after: 1 week --- sys/arm/allwinner/a10_codec.c | 1 - sys/arm/broadcom/bcm2835/bcm2835_audio.c | 1 - sys/arm/freescale/imx/imx6_ssi.c | 1 - sys/arm/freescale/vybrid/vf_sai.c | 1 - 4 files changed, 4 deletions(-) diff --git a/sys/arm/allwinner/a10_codec.c b/sys/arm/allwinner/a10_codec.c index 421d1c015691..9294c1e5290c 100644 --- a/sys/arm/allwinner/a10_codec.c +++ b/sys/arm/allwinner/a10_codec.c @@ -40,7 +40,6 @@ #include #include -#include #include #include diff --git a/sys/arm/broadcom/bcm2835/bcm2835_audio.c b/sys/arm/broadcom/bcm2835/bcm2835_audio.c index e0f525fa9520..75a0c81f29a1 100644 --- a/sys/arm/broadcom/bcm2835/bcm2835_audio.c +++ b/sys/arm/broadcom/bcm2835/bcm2835_audio.c @@ -28,7 +28,6 @@ #endif #include -#include #include "mixer_if.h" diff --git a/sys/arm/freescale/imx/imx6_ssi.c b/sys/arm/freescale/imx/imx6_ssi.c index 2fb55ca161d3..273957f64b21 100644 --- a/sys/arm/freescale/imx/imx6_ssi.c +++ b/sys/arm/freescale/imx/imx6_ssi.c @@ -42,7 +42,6 @@ #include #include -#include #include #include diff --git a/sys/arm/freescale/vybrid/vf_sai.c b/sys/arm/freescale/vybrid/vf_sai.c index 6a36ddc3c057..696ecfb980f4 100644 --- a/sys/arm/freescale/vybrid/vf_sai.c +++ b/sys/arm/freescale/vybrid/vf_sai.c @@ -43,7 +43,6 @@ #include #include -#include #include #include From nobody Mon May 6 19:49:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYBng6WxRz5JBYt; Mon, 06 May 2024 19:49: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 4VYBng4nLCz473H; Mon, 6 May 2024 19:49:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715024983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OfgOjj1wmyusmeEsZsEiHN1RLZbOyP5qPLoBeEZI9nQ=; b=rKCbf0cjF2Cr0MOwBNYnoP/Gh0P5243yMSnsg8X5ZyJi8u34uiE/YCgUktAyW3eFzb4rll j5kL1iPzwNix+Wjh8cWU1aVZo9vpVOCt+ZWlrmwq1CO6fLY3wSWpE9NTTs7mduMgF88mIg 9XpVImVn0yY+kh6p+F+2EDyvU5ikb5MiQt0eqKr3i/5lDJnaxHVWDs9MeoL+YTO177bfHf aUQZotiYywdr7OLwTKDO8Jvv4Dp1uJGubm1xWrkX9BBbMHNrmKgvqnpxygpWMM57kFW0o2 OoFOZiBWPBKn7WAJqg4SHc0hRNSGcswsi6q/gY98yfy60CaWgv/VyJ7Uje549A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715024983; a=rsa-sha256; cv=none; b=DHzWjr8wf8/guKAEYHttS3tDgZd8+kWKLVdM4v2JrFeAsGCP1MsmL1o90XXzzIBigqtaiz QqyWYCXa4qPUF7GophAjfoDQk7KL/Ln2a30xB3mwO/5mc3eq+nTCYMxQIqw+tnjWEPz1A+ 6nKxwiaBPUG0ZUGlgFXcpLK5JXGd6JT/KPbYd+yIoN8+EIjcszmVra/MIjfyAyVZy8tofI OMO7xJh7F4Byftr1zFWvwLHTMZqhk807Jhr8hZSRbNRZ6CbVMe8iG9qcElEuKUeHGIp9gb LFu6KP/n+OfpN+qBMYgR3NCy05uLkdYi+i4lLsUMvEoOgJp5B/r8G8gg5YnD3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715024983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OfgOjj1wmyusmeEsZsEiHN1RLZbOyP5qPLoBeEZI9nQ=; b=RX5ItRXLvjNU3ltXdqrzYTXQkKdmgok05/CQOAKNXbUrFbc7Nc0Ux2JlOlnvrCUlusLuQR /04YEeWff+C3C+LV+5MikayUqE3S7RD2GEoHBYk8WY4BM18nszk8K1bXGTiG2vRPeXsyzd SCE5ZZtOseIGc+vEPf0/pbfvWjV0nFOPX1dq7T9tXnl5J2TEUJtqBhMsrds84rNJGssre6 9ZyJacfPUn5ZC3NarzfGfmOEhOGeJtLVdZ5bE6EVu0pibw68wgotlLoiHHv/YVTWPvTBHb EKcjMciKigcKZqf6DoQiYV8ijBMjVKzbv4Qd8aEQVSF6PVGm3Mg9mKPQ8DI1EQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYBng4NVkz1914; Mon, 6 May 2024 19:49: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 446JnhMV080618; Mon, 6 May 2024 19:49:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446Jnht4080615; Mon, 6 May 2024 19:49:43 GMT (envelope-from git) Date: Mon, 6 May 2024 19:49:43 GMT Message-Id: <202405061949.446Jnht4080615@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 99b0270adc2a - main - sockets: hide socket hhook(9)s under SOCKET_HHOOK List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 99b0270adc2a99fbcb089ee5ee6e8d25dd32f407 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=99b0270adc2a99fbcb089ee5ee6e8d25dd32f407 commit 99b0270adc2a99fbcb089ee5ee6e8d25dd32f407 Author: Gleb Smirnoff AuthorDate: 2024-05-06 19:49:29 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-06 19:49:29 +0000 sockets: hide socket hhook(9)s under SOCKET_HHOOK There are no in-tree consumers of these hooks. Reviewed by: stevek Differential Revision: https://reviews.freebsd.org/D44928 --- sys/conf/NOTES | 2 ++ sys/conf/options | 1 + sys/kern/uipc_socket.c | 52 +++++++++++++++++++++++++++++++++++--------------- 3 files changed, 40 insertions(+), 15 deletions(-) diff --git a/sys/conf/NOTES b/sys/conf/NOTES index 5819eeb57b2d..fec65452ba0f 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -1029,6 +1029,7 @@ device wg # TCP_BLACKBOX enables enhanced TCP event logging. # # TCP_HHOOK enables the hhook(9) framework hooks for the TCP stack. +# SOCKET_HHOOK enables the hhook(9) framework hooks for socket operations. # # ROUTE_MPATH provides support for multipath routing. # @@ -1050,6 +1051,7 @@ options PF_DEFAULT_TO_DROP #drop everything by default options TCPPCAP options TCP_BLACKBOX options TCP_HHOOK +options SOCKET_HHOOK options ROUTE_MPATH # The MBUF_STRESS_TEST option enables options which create diff --git a/sys/conf/options b/sys/conf/options index fcab21ad7e78..40c24799aa0c 100644 --- a/sys/conf/options +++ b/sys/conf/options @@ -208,6 +208,7 @@ SCHED_STATS opt_sched.h SCHED_ULE opt_sched.h SLEEPQUEUE_PROFILING SLHCI_DEBUG opt_slhci.h +SOCKET_HHOOK opt_global.h STACK opt_stack.h SUIDDIR MSGMNB opt_sysvipc.h diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index f0b36fc5595e..f0d22b3887a4 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -173,7 +173,6 @@ static int filt_soread(struct knote *kn, long hint); static void filt_sowdetach(struct knote *kn); static int filt_sowrite(struct knote *kn, long hint); static int filt_soempty(struct knote *kn, long hint); -static int inline hhook_run_socket(struct socket *so, void *hctx, int32_t h_id); fo_kqfilter_t soo_kqfilter; static struct filterops soread_filtops = { @@ -201,8 +200,11 @@ MALLOC_DEFINE(M_PCB, "pcb", "protocol control block"); VNET_ASSERT(curvnet != NULL, \ ("%s:%d curvnet is NULL, so=%p", __func__, __LINE__, (so))); +#ifdef SOCKET_HHOOK VNET_DEFINE(struct hhook_head *, socket_hhh[HHOOK_SOCKET_LAST + 1]); #define V_socket_hhh VNET(socket_hhh) +static inline int hhook_run_socket(struct socket *, void *, int32_t); +#endif /* * Limit on the number of connections in the listen queue waiting @@ -276,6 +278,20 @@ socket_zone_change(void *tag) maxsockets = uma_zone_set_max(socket_zone, maxsockets); } +static void +socket_init(void *tag) +{ + + socket_zone = uma_zcreate("socket", sizeof(struct socket), NULL, NULL, + NULL, NULL, UMA_ALIGN_PTR, 0); + maxsockets = uma_zone_set_max(socket_zone, maxsockets); + uma_zone_set_warning(socket_zone, "kern.ipc.maxsockets limit reached"); + EVENTHANDLER_REGISTER(maxsockets_change, socket_zone_change, NULL, + EVENTHANDLER_PRI_FIRST); +} +SYSINIT(socket, SI_SUB_PROTO_DOMAININIT, SI_ORDER_ANY, socket_init, NULL); + +#ifdef SOCKET_HHOOK static void socket_hhook_register(int subtype) { @@ -294,19 +310,6 @@ socket_hhook_deregister(int subtype) printf("%s: WARNING: unable to deregister hook\n", __func__); } -static void -socket_init(void *tag) -{ - - socket_zone = uma_zcreate("socket", sizeof(struct socket), NULL, NULL, - NULL, NULL, UMA_ALIGN_PTR, 0); - maxsockets = uma_zone_set_max(socket_zone, maxsockets); - uma_zone_set_warning(socket_zone, "kern.ipc.maxsockets limit reached"); - EVENTHANDLER_REGISTER(maxsockets_change, socket_zone_change, NULL, - EVENTHANDLER_PRI_FIRST); -} -SYSINIT(socket, SI_SUB_PROTO_DOMAININIT, SI_ORDER_ANY, socket_init, NULL); - static void socket_vnet_init(const void *unused __unused) { @@ -329,6 +332,7 @@ socket_vnet_uninit(const void *unused __unused) } VNET_SYSUNINIT(socket_vnet_uninit, SI_SUB_PROTO_DOMAININIT, SI_ORDER_ANY, socket_vnet_uninit, NULL); +#endif /* SOCKET_HHOOK */ /* * Initialise maxsockets. This SYSINIT must be run after @@ -423,12 +427,14 @@ soalloc(struct vnet *vnet) __func__, __LINE__, so)); so->so_vnet = vnet; #endif +#ifdef SOCKET_HHOOK /* We shouldn't need the so_global_mtx */ if (hhook_run_socket(so, NULL, HHOOK_SOCKET_CREATE)) { /* Do we need more comprehensive error returns? */ uma_zfree(socket_zone, so); return (NULL); } +#endif mtx_lock(&so_global_mtx); so->so_gencnt = ++so_gencnt; ++numopensockets; @@ -464,7 +470,9 @@ sodealloc(struct socket *so) #ifdef MAC mac_socket_destroy(so); #endif +#ifdef SOCKET_HHOOK hhook_run_socket(so, NULL, HHOOK_SOCKET_CLOSE); +#endif khelp_destroy_osd(&so->osd); if (SOLISTENING(so)) { @@ -773,6 +781,7 @@ solisten_clone(struct socket *head) so->so_fibnum = head->so_fibnum; so->so_proto = head->so_proto; so->so_cred = crhold(head->so_cred); +#ifdef SOCKET_HHOOK if (V_socket_hhh[HHOOK_SOCKET_NEWCONN]->hhh_nhooks > 0) { if (hhook_run_socket(so, head, HHOOK_SOCKET_NEWCONN)) { sodealloc(so); @@ -780,6 +789,7 @@ solisten_clone(struct socket *head) return (NULL); } } +#endif #ifdef MAC mac_socket_newconn(head, so); #endif @@ -3019,11 +3029,12 @@ sorflush(struct socket *so) } +#ifdef SOCKET_HHOOK /* * Wrapper for Socket established helper hook. * Parameters: socket, context of the hook point, hook id. */ -static int inline +static inline int hhook_run_socket(struct socket *so, void *hctx, int32_t h_id) { struct socket_hhook_data hhook_data = { @@ -3040,6 +3051,7 @@ hhook_run_socket(struct socket *so, void *hctx, int32_t h_id) /* Ugly but needed, since hhooks return void for now */ return (hhook_data.status); } +#endif /* * Perhaps this routine, and sooptcopyout(), below, ought to come in an @@ -3268,10 +3280,12 @@ sosetopt(struct socket *so, struct sockopt *sopt) break; default: +#ifdef SOCKET_HHOOK if (V_socket_hhh[HHOOK_SOCKET_OPT]->hhh_nhooks > 0) error = hhook_run_socket(so, sopt, HHOOK_SOCKET_OPT); else +#endif error = ENOPROTOOPT; break; } @@ -3485,10 +3499,12 @@ integer: goto integer; default: +#ifdef SOCKET_HHOOK if (V_socket_hhh[HHOOK_SOCKET_OPT]->hhh_nhooks > 0) error = hhook_run_socket(so, sopt, HHOOK_SOCKET_OPT); else +#endif error = ENOPROTOOPT; break; } @@ -3785,8 +3801,12 @@ filt_soread(struct knote *kn, long hint) } else if (sbavail(&so->so_rcv) >= so->so_rcv.sb_lowat) return (1); +#ifdef SOCKET_HHOOK /* This hook returning non-zero indicates an event, not error */ return (hhook_run_socket(so, NULL, HHOOK_FILT_SOREAD)); +#else + return (0); +#endif } static void @@ -3815,7 +3835,9 @@ filt_sowrite(struct knote *kn, long hint) SOCK_SENDBUF_LOCK_ASSERT(so); kn->kn_data = sbspace(&so->so_snd); +#ifdef SOCKET_HHOOK hhook_run_socket(so, kn, HHOOK_FILT_SOWRITE); +#endif if (so->so_snd.sb_state & SBS_CANTSENDMORE) { kn->kn_flags |= EV_EOF; From nobody Mon May 6 20:41:16 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYCx937J7z5JHqf; Mon, 06 May 2024 20:41: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 4VYCx90tSRz4GHm; Mon, 6 May 2024 20:41:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715028077; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v6lTLEqhSLxqHrmGBl/0BjXuXVsYPDnyoxx7eiytvrU=; b=SSfUA47xlqmefUs+8wHeeKfHcCahmCbfxIEzpCv83A0hvID0BaWyNI1VvUNGyUnOfzGrQD po3YL671XR1SD2RZ1C0d9KcuXo9nrFCz8A+fSh/pBr/WLP8aUcI9U2YOcl1IvovDQH8Tj1 O/S8ZN22TD3NSGe1LCtnJAsShDxShkTHSlsGkAt/E4J1TGINjD7W/MT6qPugaaEpilg9Lg 4ovS3D/mVh9Q3+y+PLk+3Jyl5H9hcZKYLNdse575iVzrFKes3SJPp6anEZD6wYfQLm1imH 36saKQvUtR7BptK+dtUD2NstbylF2bNep52eBWw4k3fm1uGhx3gxeOuP8t4E7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715028077; a=rsa-sha256; cv=none; b=iRFDXR9Q/RKY7FUboGjJ0PdHKQLHsjBy1teqnx6EwZTBjqWWECqG316fopMYLWKAAQupl1 eZK7B+if1/t5/E9I0YJxWhrYnMTghTHddAvkX8Zr5IvWpS7wcI3pQcliPXzbEfATLyzL1N DohbQ52Mv8EaZZKk5XFynILh/y9pOYerEEHAM6D54hKEYgTxbJmd1vLzp1RYa3jnAUJOdv ScKsvdb/kZMYmy0MxckV16izDogZiWzGCAudHkIJLY9s2NrSCYD5bXXSdpG2TJFoRfLyNU wSEr8uzteDediKk/PEddMmDGSEY8iJRGWoa3pD9Ep8rSoqaVjVK4S0meaxGkpw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715028077; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v6lTLEqhSLxqHrmGBl/0BjXuXVsYPDnyoxx7eiytvrU=; b=K866d024v7OT3LS92vlwVTBDW6MqbB0C9US33JhSWebi8Y1gBIhUx7TJzyqz5BxrcR+qmj qekC1Ml6i7LrdOofIY9AqSsOXisWSItwEuBFwqQB61lHP+DlO4Y0bF75WTtfGNF16kyjlw Xq7NXyOhXXVxbbRx/HaZh1XaRZsl7mbEc9K2WatFiPt29JOJw8YNBzwLKtcD7z6uqUhwgo 8fmlSg9B1QbmNBajCMrdQ7Js1X00fnK7ZQds1uai79WB0k52TiM1IY3SNby2Xf4J/aYqe4 tj5Ta+y0qcuZ31wmLx1uDO74HcHqXkEFv/+htx1yS9ssB2sRKdHf9P3yCu5xAQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYCx90P6jz1BjZ; Mon, 6 May 2024 20:41: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 446KfGop076354; Mon, 6 May 2024 20:41:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446KfGti076351; Mon, 6 May 2024 20:41:16 GMT (envelope-from git) Date: Mon, 6 May 2024 20:41:16 GMT Message-Id: <202405062041.446KfGti076351@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Colin Percival Subject: git: 0b1c5628c74a - main - release: Rework vm_extra_pre_umount List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0b1c5628c74a37e2aa2aa3769c606d3e826302f8 Auto-Submitted: auto-generated The branch main has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=0b1c5628c74a37e2aa2aa3769c606d3e826302f8 commit 0b1c5628c74a37e2aa2aa3769c606d3e826302f8 Author: Colin Percival AuthorDate: 2024-05-06 20:26:52 +0000 Commit: Colin Percival CommitDate: 2024-05-06 20:40:47 +0000 release: Rework vm_extra_pre_umount The vm_extra_pre_umount function in vmimage.subr served two purposes: It removed /etc/resolv.conf and /qemu (if cross-building), and it provided a function for cloudware to override in order to make cloud specific changes to the filesystem before constructing a disk image. This resulted in a number of bugs: 1. When cross-building, the emulator binary was left as /qemu in the Azure, GCE, Openstack and Vagrant images. 2. The build host's resolv.conf was left as /etc/resolv.conf in the basic-ci and basic-cloudinit images. 3. When building GCE images, a Google-specific resolv.conf file was constructed, and then deleted before the disk image was created. Move the bits needed for running code inside a VM staging directory from vm_install_base into a new vm_emulation_setup routine, and move the corresponding cleanup bits from vm_extra_pre_umount to a new vm_emulation_cleanup routine. Remove the /qemu and /etc/resolv.conf cleanups from the cloudware configuration files (where they exist) since we will now be running vm_emulation_cleanup to remove those even when vm_extra_pre_umount has been overridden. Override vm_emulation_cleanup in gce.conf since in that one case (and *only* that one case) we don't want to clean up resolv.conf (since it was constructed for the VM image rather than copied from the host). releng/14.1 candidate. MFC after: 1 week Sponsored by: https://www.patreon.com/cperciva --- release/scripts/mk-vmimage.sh | 3 ++- release/tools/azure.conf | 2 -- release/tools/ec2.conf | 5 ----- release/tools/gce.conf | 10 +++++++++- release/tools/oci.conf | 5 ----- release/tools/openstack.conf | 2 -- release/tools/vagrant-virtualbox.conf | 1 - release/tools/vagrant-vmware.conf | 1 - release/tools/vmimage.subr | 23 +++++++++++------------ 9 files changed, 22 insertions(+), 30 deletions(-) diff --git a/release/scripts/mk-vmimage.sh b/release/scripts/mk-vmimage.sh index ca6a359affbd..dfd91f43140d 100755 --- a/release/scripts/mk-vmimage.sh +++ b/release/scripts/mk-vmimage.sh @@ -97,13 +97,14 @@ main() { vm_create_base vm_install_base + vm_emulation_setup vm_extra_install_base vm_extra_install_packages vm_extra_install_ports vm_extra_enable_services vm_extra_pre_umount vm_extra_pkg_rmcache - cleanup + vm_emulation_cleanup vm_copy_base vm_create_disk || return 0 vm_extra_create_disk diff --git a/release/tools/azure.conf b/release/tools/azure.conf index b6526f21e474..9da2b19de694 100644 --- a/release/tools/azure.conf +++ b/release/tools/azure.conf @@ -53,7 +53,5 @@ EOF touch ${DESTDIR}/firstboot - rm -f ${DESTDIR}/etc/resolv.conf - return 0 } diff --git a/release/tools/ec2.conf b/release/tools/ec2.conf index f8bfe0911759..989e8a05a318 100644 --- a/release/tools/ec2.conf +++ b/release/tools/ec2.conf @@ -102,10 +102,5 @@ EOF # The first time the AMI boots, run "first boot" scripts. touch ${DESTDIR}/firstboot - if ! [ -z "${QEMUSTATIC}" ]; then - rm -f ${DESTDIR}/${EMULATOR} - fi - rm -f ${DESTDIR}/etc/resolv.conf - return 0 } diff --git a/release/tools/gce.conf b/release/tools/gce.conf index aad4a74d2e39..5ad83bcded53 100644 --- a/release/tools/gce.conf +++ b/release/tools/gce.conf @@ -118,7 +118,15 @@ EOF touch ${DESTDIR}/firstboot - rm -f ${DESTDIR}/etc/resolv.conf + return 0 +} +# Do everything except deleting resolv.conf since we construct our own +# Googlized resolv.conf file in vm_extra_install_base. +vm_emulation_cleanup() { + if ! [ -z "${QEMUSTATIC}" ]; then + rm -f ${DESTDIR}/${EMULATOR} + fi + umount_loop ${DESTDIR}/dev return 0 } diff --git a/release/tools/oci.conf b/release/tools/oci.conf index c57a7683a500..a4fe54ad3031 100644 --- a/release/tools/oci.conf +++ b/release/tools/oci.conf @@ -90,10 +90,5 @@ EOF touch ${DESTDIR}/firstboot - if ! [ -z "${QEMUSTATIC}" ]; then - rm -f ${DESTDIR}/${EMULATOR} - fi - rm -f ${DESTDIR}/etc/resolv.conf - return 0 } diff --git a/release/tools/openstack.conf b/release/tools/openstack.conf index 4c905fbae4ba..05d2d13bbb39 100644 --- a/release/tools/openstack.conf +++ b/release/tools/openstack.conf @@ -35,8 +35,6 @@ vm_extra_pre_umount() { echo 'ALL ALL=(ALL) NOPASSWD:ALL' >> \ ${DESTDIR}/usr/local/etc/sudoers.d/cloud-init - rm -f ${DESTDIR}/etc/resolv.conf - # The console is not interactive, so we might as well boot quickly. echo 'autoboot_delay="-1"' >> ${DESTDIR}/boot/loader.conf echo 'beastie_disable="YES"' >> ${DESTDIR}/boot/loader.conf diff --git a/release/tools/vagrant-virtualbox.conf b/release/tools/vagrant-virtualbox.conf index 4dd7ca8953ad..9e0e430bbc88 100644 --- a/release/tools/vagrant-virtualbox.conf +++ b/release/tools/vagrant-virtualbox.conf @@ -14,5 +14,4 @@ vm_extra_pre_umount () { # Setup the Vagrant common items vagrant_common - rm -f ${DESTDIR}/etc/resolv.conf } diff --git a/release/tools/vagrant-vmware.conf b/release/tools/vagrant-vmware.conf index 52ff7f1aac1a..fff929829222 100644 --- a/release/tools/vagrant-vmware.conf +++ b/release/tools/vagrant-vmware.conf @@ -18,5 +18,4 @@ vm_extra_pre_umount () { # Setup the Vagrant common items vagrant_common - rm -f ${DESTDIR}/etc/resolv.conf } diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index 93658b9a03da..9a60be57acf3 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -80,8 +80,14 @@ vm_install_base() { echo "zfs_enable=\"YES\"" >> ${DESTDIR}/etc/rc.conf echo "zpool_reguid=\"zroot\"" >> ${DESTDIR}/etc/rc.conf echo "zpool_upgrade=\"zroot\"" >> ${DESTDIR}/etc/rc.conf + echo "kern.geom.label.disk_ident.enable=0" >> ${DESTDIR}/boot/loader.conf + echo "zfs_load=YES" >> ${DESTDIR}/boot/loader.conf fi + return 0 +} + +vm_emulation_setup() { if ! [ -z "${QEMUSTATIC}" ]; then export EMULATOR=/qemu cp ${QEMUSTATIC} ${DESTDIR}/${EMULATOR} @@ -91,15 +97,8 @@ vm_install_base() { mount -t devfs devfs ${DESTDIR}/dev chroot ${DESTDIR} ${EMULATOR} /usr/bin/newaliases chroot ${DESTDIR} ${EMULATOR} /bin/sh /etc/rc.d/ldconfig forcestart - umount_loop ${DESTDIR}/dev - cp /etc/resolv.conf ${DESTDIR}/etc/resolv.conf - if [ "${VMFS}" = zfs ]; then - echo "kern.geom.label.disk_ident.enable=0" >> ${DESTDIR}/boot/loader.conf - echo "zfs_load=YES" >> ${DESTDIR}/boot/loader.conf - fi - return 0 } @@ -133,15 +132,12 @@ vm_extra_install_packages() { if [ -z "${VM_EXTRA_PACKAGES}" ]; then return 0 fi - mkdir -p ${DESTDIR}/dev - mount -t devfs devfs ${DESTDIR}/dev chroot ${DESTDIR} ${EMULATOR} env ASSUME_ALWAYS_YES=yes \ /usr/sbin/pkg bootstrap -y for p in ${VM_EXTRA_PACKAGES}; do chroot ${DESTDIR} ${EMULATOR} env ASSUME_ALWAYS_YES=yes \ /usr/sbin/pkg install -y ${p} done - umount_loop ${DESTDIR}/dev return 0 } @@ -156,13 +152,16 @@ vm_extra_install_ports() { vm_extra_pre_umount() { # Prototype. When overridden, performs additional tasks within the # virtual machine environment prior to unmounting the filesystem. - # Note: When overriding this function, removing resolv.conf in the - # disk image must be included. + return 0 +} + +vm_emulation_cleanup() { if ! [ -z "${QEMUSTATIC}" ]; then rm -f ${DESTDIR}/${EMULATOR} fi rm -f ${DESTDIR}/etc/resolv.conf + umount_loop ${DESTDIR}/dev return 0 } From nobody Mon May 6 21:04:01 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYDRP6fPGz5JKd7; Mon, 06 May 2024 21:04: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 4VYDRP69czz4Hxm; Mon, 6 May 2024 21:04:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715029441; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qWqC5iJ5gS69Ku0NgqOD2urx1eHtsxVZ0+y9BLmFkAQ=; b=q+0xEphEq8S1l1rNy5Se2AcHVNORbH95rN7F3l7PeLPZ4Lc7jsmiJquQM8aMDgnlkBFOuh xoKN1OqUKFl2yoz5pM0tT4niCrDC8W+0xD1oY94yKnCjIABCwjLLZHCw6vu/nT2naBzARW Ip+b83VS4K5bCFNRfoqv5sEvh89TCsnVE8WEb7MjTtqW3LErusnZUx6q3z23UvgnujGi4/ sugjiwP2FihJB6zPJS1oo+rwR4G2061sChp277FcwumjSRg/z23GDn33QXGzH0zO6ptTsP 4QTW9naK5oHhtEspFzvGHphPSja/1DJUhs9pVXGVVnV50OhYSqDq6nHSHv5r4A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715029441; a=rsa-sha256; cv=none; b=NurEORsXs/FXaWGviPiVlGaINREO33aEfXEo6XfrHRfQURKrPJZPEhi4FUyNdtf+9Go0Jg Q/8qN55NQsFkn7G3ttBtFgUSJyIQoWYEpQuwnyNrevqKS3F015rQmZzqTnHIGOgeEJd/0e ATO8yfZoHmw8+XA1L1iC/VNGkBzvU9qllt70YcBcfvKVsyigjC0/ojZsG/tN1A+a+OR2HC OVg/Z8HyGOfGyUf1nhMa23ZKyiwuNpTaS7wi6hK3Jgf81/tbkd/tLA/tQYgloO6ddY7/2Z KfqNseuaQ9W9xFN2qfJXhyr7Hy4LzLiywIXAWrVSJS23jdS5ChlOgQuerSlsZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715029441; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qWqC5iJ5gS69Ku0NgqOD2urx1eHtsxVZ0+y9BLmFkAQ=; b=ok3ywOGvJckuHWZQAMxXam/RihtBtvVpOcwFWm8SO1SAZ+BHKwOhJ4xxx/JbNubNKhcPKt CQEfqedpnN5R3s8+pFA8shTZaTk9TACVJbbasWsZyEMiAfuMdaJXt2qW3PW8qp3av13UKp 0g9cNdHivz4y6xwMIP+PM74XjuQY+whoqS3hGg8C/a5y+X77T+Qs5Y+EAHSPvlAIRoa9EH U9yaMQSDJWH9e3icH8d2YJDmpq8Z5HCFDG+tRQ75kUivjzC+hE9aoSPBUVBFqgF3XZm69p WyYL1ed8z2c0puh0VuX4q4X/M8KnmMWHt/yiqffMd3783uDRc6YsP8VbuLsTFQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYDRP5n7Bz1CVY; Mon, 6 May 2024 21:04: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 446L41GR016475; Mon, 6 May 2024 21:04:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446L41Dh016472; Mon, 6 May 2024 21:04:01 GMT (envelope-from git) Date: Mon, 6 May 2024 21:04:01 GMT Message-Id: <202405062104.446L41Dh016472@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: e75a79f40b9d - main - nvmf: Remove packing pragmas from nvmf_proto.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e75a79f40b9ddab672635a9c8a824bcdb3d8a33b Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=e75a79f40b9ddab672635a9c8a824bcdb3d8a33b commit e75a79f40b9ddab672635a9c8a824bcdb3d8a33b Author: John Baldwin AuthorDate: 2024-05-06 20:30:23 +0000 Commit: John Baldwin CommitDate: 2024-05-06 21:03:44 +0000 nvmf: Remove packing pragmas from nvmf_proto.h The protocol structures do not need explicit packing and static assertions verify the size of all the structures as well as the offsets of several key fields. The pragma triggers warnings when building with GCC. Sponsored by: Chelsio Communications --- sys/dev/nvmf/nvmf_proto.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/sys/dev/nvmf/nvmf_proto.h b/sys/dev/nvmf/nvmf_proto.h index b0be236f77fa..66e68ff384b0 100644 --- a/sys/dev/nvmf/nvmf_proto.h +++ b/sys/dev/nvmf/nvmf_proto.h @@ -22,8 +22,6 @@ * NVMe over Fabrics specification definitions */ -#pragma pack(push, 1) - #define NVME_NQN_FIELD_SIZE 256 struct nvmf_capsule_cmd { @@ -764,6 +762,4 @@ _Static_assert(offsetof(struct nvme_tcp_r2t_hdr, ttag) == 10, "Incorrect offset" _Static_assert(offsetof(struct nvme_tcp_r2t_hdr, r2to) == 12, "Incorrect offset"); _Static_assert(offsetof(struct nvme_tcp_r2t_hdr, r2tl) == 16, "Incorrect offset"); -#pragma pack(pop) - #endif /* __NVMF_PROTO_H__ */ From nobody Mon May 6 21:04:02 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYDRR1JNXz5JKYq; Mon, 06 May 2024 21:04: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 4VYDRR03Y4z4JKZ; Mon, 6 May 2024 21:04:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715029443; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=toBOKk9dgZ1ugqH3gavWvEwlbIU1XKaOjECT+pFzHU0=; b=KCyGsl2++za/2jNTfrDD//BJsePwhYkVCJ2ssiyvlrbYtO9JyZJDXLQUvvhDnl5tvWvOKr uc7XqV/eRdccsHkPyP6/8/MgyKKfD9eKeIFbLbV7BuHD+/eqGEsDIko+2BcLbPzU8I/F7x NJBD0RQRUIO2qClH5IXoqvHfPQR9layTzzOLbyEMSCPjnDDGUjkjjgJqGtvmMNPoOYMmOJ +zcFepzdWvk1VVQwO0+kU6l9lcwWkT+oi6KPMovyQ+/52TfKBuvJhwUwVMuQEd0zsqBHfQ P0O7L3yE4DyKVYJIZnBNrhdfogEqANmQ1Nx6Xa/wRDSEjt5b7DERE2XDZJvqAw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715029443; a=rsa-sha256; cv=none; b=TR2l37T5H42+3jFj0ibRXsPdqv7oG4cvQ5ybyhOiWuowFxFmy8NAxQMmASJGzGjdIAlG9E OKUfWYr0dmHd4psxkw6/yPU+UOcQF2vHg3RqjYSiCw8RFCrO5afHoopYq4MDZZADmilwT/ glfG+PsgqRiUUJSLOL0Dsx7fTaWH4mJLrKgs35p+2aAzjOQeyvRB6Kz/j8TCLIU+Zk6pY9 qafvBES+SGGqk4/tGx5zKzN3Mu9d1XejfsaZrwoLcG9reruvFIQckT4SS1IUZCYLyO1iRg +x7xjzxpyS/86rJSnVhzpg1NJPzRP7Wa1PnpJlmvSD33idnEEzz8M/uoOZHKfg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715029443; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=toBOKk9dgZ1ugqH3gavWvEwlbIU1XKaOjECT+pFzHU0=; b=U7uapZrACdMxUIjwJL6gXzldMbtWn21pLsb1jGjgVRVVDdFdYvBXCtBd1+r6VNuC+AyQpy CGnTFg0/ALqoM2UoTn7uCkdFz2rCXlVYjvChCi76e9ptFZLFeKjDk9QsR5Xo3G2NlDYvYu BsqJr1ego0k04y9bEKxD/21vxV7IYZpvX/0HjLIY69Q4/usyyELZOBTvHweBlLXImsCaJE 0cK1Tfoj2+89x2RZlserV+xj+ehNgyi1JwYgE0Z8XHIEYwcZCmHA6PEhxypZHCz9XRY198 91jErq+uBQ7wAHYmffZwr4nk1z3VWsH4wKvZK9CNoudXyRxJ8uQsRLxk+CfgRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYDRQ6mQBz1CVZ; Mon, 6 May 2024 21:04: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 446L42RF016520; Mon, 6 May 2024 21:04:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446L42ql016517; Mon, 6 May 2024 21:04:02 GMT (envelope-from git) Date: Mon, 6 May 2024 21:04:02 GMT Message-Id: <202405062104.446L42ql016517@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: a7db82cfd940 - main - nvmf_tcp: Correct tests for PDU direction List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a7db82cfd940431037e748280825931a46ed2d12 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=a7db82cfd940431037e748280825931a46ed2d12 commit a7db82cfd940431037e748280825931a46ed2d12 Author: John Baldwin AuthorDate: 2024-05-06 20:33:54 +0000 Commit: John Baldwin CommitDate: 2024-05-06 21:03:48 +0000 nvmf_tcp: Correct tests for PDU direction Add parentheses to ensure the correct order of operations. Reported by: GCC --- lib/libnvmf/nvmf_tcp.c | 2 +- sys/dev/nvmf/nvmf_tcp.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libnvmf/nvmf_tcp.c b/lib/libnvmf/nvmf_tcp.c index 12da329f34b4..b9bf8153ab1b 100644 --- a/lib/libnvmf/nvmf_tcp.c +++ b/lib/libnvmf/nvmf_tcp.c @@ -803,7 +803,7 @@ nvmf_tcp_validate_ic_pdu(struct nvmf_association *na, struct nvmf_tcp_qpair *qp, /* Validate pdu_type. */ /* Controllers only receive PDUs with a PDU direction of 0. */ - if (na->na_controller != (ch->pdu_type & 0x01) == 0) { + if (na->na_controller != ((ch->pdu_type & 0x01) == 0)) { na_error(na, "NVMe/TCP: Invalid PDU type %u", ch->pdu_type); nvmf_tcp_report_error(na, qp, NVME_TCP_TERM_REQ_FES_INVALID_HEADER_FIELD, 0, ch, pdu_len, diff --git a/sys/dev/nvmf/nvmf_tcp.h b/sys/dev/nvmf/nvmf_tcp.h index 00b0917f75a4..78d6cf17a977 100644 --- a/sys/dev/nvmf/nvmf_tcp.h +++ b/sys/dev/nvmf/nvmf_tcp.h @@ -50,7 +50,7 @@ nvmf_tcp_validate_pdu_header(const struct nvme_tcp_common_pdu_hdr *ch, /* Validate pdu_type. */ /* Controllers only receive PDUs with a PDU direction of 0. */ - if (controller != (ch->pdu_type & 0x01) == 0) { + if (controller != ((ch->pdu_type & 0x01) == 0)) { printf("NVMe/TCP: Invalid PDU type %u\n", ch->pdu_type); *fes = NVME_TCP_TERM_REQ_FES_INVALID_HEADER_FIELD; *fei = offsetof(struct nvme_tcp_common_pdu_hdr, pdu_type); From nobody Mon May 6 21:52:37 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYFWT3YZFz5JQR6; Mon, 06 May 2024 21:52: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 4VYFWT2z8zz4N00; Mon, 6 May 2024 21:52:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715032357; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DYy6Qt+OMiwU6LqxIEw/srxYwMLEDnuseGdyQfglmgk=; b=nRy4eXUnz8edmGs3o1IDgkNgsvEleq23aMBtKBRXCIdEFdjbmYxmAnPEDDH6wWFOJy2WTB yj7Mj4j337fXmH4Ya9BGxauecoxnA16JLn+0sJxMAircDiUhiYcoZp8wXIWf9oGnHC96FY a1FlnLYvvM/AtNpH7Zbnlnn3s/72Rj4QW95rCSyKZhCUqHrLDr/CIaC874JdiWXnQjCg+y AKEBVn6O5VWVsKt3+bQvmOev+g/9czL4i+AU5311jm6bsQTZe4Vqm8koPb0IZ46FpBpUF0 TvOrRJROgNf8v4POMVHqxcVVOxpt6BqxL/HwPalUEYDWJi1QWcfPIHZp6e4cOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715032357; a=rsa-sha256; cv=none; b=oCqYfWJzLDIG6eIu1WIzjqG46MKXCuCjt83/9fpdsq5oLOLPEtHeifSQ7xAKlaU7uYzZNr upsyarJ//Z+i79nVUxZFRSNWRiECpTPnYkOeMerbm9Sk/BgS7rAwAfzGPRa3g5J57SVheh KjCgfTTno3DHTzQG9hel/IjTEiBbvbZeHCCZQt7+WZh+TP5WO/B2Ale9UCs9UuoBfVYHZY FnFx6bn3FUovkrwlTmO3LS4wsEYlK5Z+f3/1htEJr+r1fykEpFiBr+Vq2unKyUPEnsqwWT /rPwUeWsWbknU11d+sVF/vXpumKAPNuWyfoPnIFIY07waUt98mitAH7dlpe5IA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715032357; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DYy6Qt+OMiwU6LqxIEw/srxYwMLEDnuseGdyQfglmgk=; b=xFpEQ4kdYUKdu5BliGDPAIMMs4N5JsOFAvkOXWK8G7V1vYbLus5D06h9h81fNvFpimV7gI TVHMnS5VjNen/eZjULtZJJNLUsnJvromncAB2fYMhbQxiEGiVQKeEFalvt60jP8JVF48S4 p+a47AE3cxZI0K6c3zyWum4N4kYNgJMVtDX/TS/E7iGwX2N2QRrldJgvKSe+bFjRb3FpOp caI35PPJAM20U+ovlMDMMZdR1pI/niCrf508z/JE0Ta4aAg9inKTF4bneL8EWuFcQ2UtGK b67LsXNC5UAgwoupMz+5Q5e3nLMzDlEG9JhFBRsQX7jRmAHHgZdX0B1qxVui2A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYFWT2bBSzF6Z; Mon, 6 May 2024 21:52:37 +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 446LqbFM099841; Mon, 6 May 2024 21:52:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446LqbSQ099838; Mon, 6 May 2024 21:52:37 GMT (envelope-from git) Date: Mon, 6 May 2024 21:52:37 GMT Message-Id: <202405062152.446LqbSQ099838@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 2d29d2ecebf8 - main - clock_gettime.2: fix markup List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2d29d2ecebf8ea19221995b3ea2e3a7ac700bf81 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=2d29d2ecebf8ea19221995b3ea2e3a7ac700bf81 commit 2d29d2ecebf8ea19221995b3ea2e3a7ac700bf81 Author: Ed Maste AuthorDate: 2024-05-06 19:59:42 +0000 Commit: Ed Maste CommitDate: 2024-05-06 21:52:22 +0000 clock_gettime.2: fix markup The CLOCK_* constants are "defined variable or preprocessor constants" and so use .Dv. Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45106 --- lib/libsys/clock_gettime.2 | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/lib/libsys/clock_gettime.2 b/lib/libsys/clock_gettime.2 index a0f1274f0eff..82f6615e8b93 100644 --- a/lib/libsys/clock_gettime.2 +++ b/lib/libsys/clock_gettime.2 @@ -94,35 +94,35 @@ Returns the execution time of the calling thread. .El .Pp The clock IDs -.Fa CLOCK_REALTIME , -.Fa CLOCK_MONOTONIC , +.Dv CLOCK_REALTIME , +.Dv CLOCK_MONOTONIC , and -.Fa CLOCK_UPTIME +.Dv CLOCK_UPTIME perform a full time counter query. The clock IDs with the _FAST suffix, i.e., -.Fa CLOCK_REALTIME_FAST , -.Fa CLOCK_MONOTONIC_FAST , +.Dv CLOCK_REALTIME_FAST , +.Dv CLOCK_MONOTONIC_FAST , and -.Fa CLOCK_UPTIME_FAST , +.Dv CLOCK_UPTIME_FAST , do not perform a full time counter query, so their accuracy is one timer tick. Similarly, -.Fa CLOCK_REALTIME_PRECISE , -.Fa CLOCK_MONOTONIC_PRECISE , +.Dv CLOCK_REALTIME_PRECISE , +.Dv CLOCK_MONOTONIC_PRECISE , and -.Fa CLOCK_UPTIME_PRECISE +.Dv CLOCK_UPTIME_PRECISE are used to get the most exact value as possible, at the expense of execution time. The clock IDs -.Fa CLOCK_REALTIME_COARSE +.Dv CLOCK_REALTIME_COARSE and -.Fa CLOCK_MONOTONIC_COARSE +.Dv CLOCK_MONOTONIC_COARSE are aliases of corresponding IDs with _FAST suffix for compatibility with other systems. Finally, -.Fa CLOCK_BOOTTIME +.Dv CLOCK_BOOTTIME is an alias for -.Fa CLOCK_UPTIME +.Dv CLOCK_UPTIME for compatibility with other systems and is unrelated to the .Fa kern.boottime .Xr sysctl 8 . @@ -140,7 +140,7 @@ struct timespec { .Ed .Pp Only the super-user may set the time of day, using only -.Fa CLOCK_REALTIME . +.Dv CLOCK_REALTIME . If the system .Xr securelevel 7 is greater than 1 (see @@ -188,14 +188,14 @@ and system calls conform to .St -p1003.1b-93 . The clock IDs -.Fa CLOCK_REALTIME_FAST , -.Fa CLOCK_REALTIME_PRECISE , -.Fa CLOCK_MONOTONIC_FAST , -.Fa CLOCK_MONOTONIC_PRECISE , -.Fa CLOCK_UPTIME , -.Fa CLOCK_UPTIME_FAST , -.Fa CLOCK_UPTIME_PRECISE , -.Fa CLOCK_SECOND +.Dv CLOCK_REALTIME_FAST , +.Dv CLOCK_REALTIME_PRECISE , +.Dv CLOCK_MONOTONIC_FAST , +.Dv CLOCK_MONOTONIC_PRECISE , +.Dv CLOCK_UPTIME , +.Dv CLOCK_UPTIME_FAST , +.Dv CLOCK_UPTIME_PRECISE , +.Dv CLOCK_SECOND are .Fx extensions to the POSIX interface. From nobody Mon May 6 22:19:50 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYG6v0gDRz5JSy3; Mon, 06 May 2024 22:19: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 4VYG6v09QRz4PyZ; Mon, 6 May 2024 22:19:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715033991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nQ0j1iVD4XhKOmxyHZ83K5oWVVf7IrDY6eAPhyieeHw=; b=quNqQ3vlE2k94hdopRUrRUlgB84jh6NY3lVd47jDualhbDlrZY3rAwQ3si63s2SxQKAU6I /pwnF+F/rJzJpEE/I4pC5NC65/jDs1wtyXBIgnQli4ZL0FwdCsJdRMBwr7s8MuuCthRrjR 81KFdxspxiP5hkeDGD6S3YHjCHtjGVGyn1sZdiG40GKD03zeC9p5qRMq3qIKJSb5UiebJc jUbkSleVMFLFJoRMJWaY4DMYMUuudR5zPM+9mWu/yxQCO1dKwEg/igsHpTBggOnIgVmT7R 2Iu+64MEvl8Jsxfr9h7NqoACNKACW2GaAEdTxh5dC+hiMwAbxPB6G5YSItL0wQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715033991; a=rsa-sha256; cv=none; b=qL7NDRE0Mme3Z/tzNkOEIm4VC9z07LK2joFF6ph/fVy0Yzw8xBm9f4hCDnBOBWu5qOqPhp 94ywwQFNI6SfaJYDYQ6P2YXndbWxYtzO7DRKygmDPCb4/ft2NVAtoLdND0HUHFFCIQYm7R f/VxmOQCO2rULgjRKwha1HLmj2QXW67bO8R8WdJTzkh12dZ1QYEdHOFyx5zNFN/8gxAz9o 1Tx42KTp/9OfBw+gwFirhzNsxlDT5Jc7MHi32uZC/xierDB+oQb3P4ri+sNI2GwfHq7zRg 4PvaY//tWCVGtOvMFWgUnjq3HEPTyv/szYItUTvaL8a8VtSLNGqTIsKfawsWOQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715033991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nQ0j1iVD4XhKOmxyHZ83K5oWVVf7IrDY6eAPhyieeHw=; b=fiMZQ4qk7uZxY2VISf9VXqbjk2clkWdmVkYj7QbjngnqnjvIEuHYV7kl0LzMn/o5Zqc33a cA6pKi3OCbvtMi0WUM/m3ZWkjqRFCUqLyM2qQfvGfVqIr28msMj33CFfyCp1Fb3UfMbXvX JC7tttiMvwx29o22nPrAZ49wH0aPUqnPmUvZ92hpuSp3kP9Lgza8BIyvdkbwaKY8/SnBfB gGqTZyqZ1BcC8v1aZ3PIuXWsZc9plUNwvUP5W2HHKYEUKeJUCzCHA17lrjNBgYGu/sgqvx 7oHHqzJk9drBr9I545Kp7oJtq9DjeBLnVTF8po++ZWJIsUEyb1cMGDzOJm1Ujw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYG6t6m2gzFbj; Mon, 6 May 2024 22:19: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 446MJogB036057; Mon, 6 May 2024 22:19:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446MJoir036054; Mon, 6 May 2024 22:19:50 GMT (envelope-from git) Date: Mon, 6 May 2024 22:19:50 GMT Message-Id: <202405062219.446MJoir036054@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 1d425ef3414c - main - nvmf: Add explicit alignment for struct nvmf_fabric_cmd List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1d425ef3414cdb0362c982f1820e659f2deb81a3 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=1d425ef3414cdb0362c982f1820e659f2deb81a3 commit 1d425ef3414cdb0362c982f1820e659f2deb81a3 Author: John Baldwin AuthorDate: 2024-05-06 22:17:43 +0000 Commit: John Baldwin CommitDate: 2024-05-06 22:19:39 +0000 nvmf: Add explicit alignment for struct nvmf_fabric_cmd This avoids -Wcast-align warnings from clang when upcasting from struct nvmf_fabric_cmd to struct nvmf_fabric_prop_set_cmd. Reported by: bapt Sponsored by: Chelsio Communications --- sys/dev/nvmf/nvmf_proto.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/nvmf/nvmf_proto.h b/sys/dev/nvmf/nvmf_proto.h index 66e68ff384b0..f67c34acbf95 100644 --- a/sys/dev/nvmf/nvmf_proto.h +++ b/sys/dev/nvmf/nvmf_proto.h @@ -172,7 +172,7 @@ struct nvmf_fabric_cmd { uint16_t cid; uint8_t fctype; uint8_t reserved2[59]; -}; +} __aligned(8); struct nvmf_fabric_auth_recv_cmd { uint8_t opcode; From nobody Mon May 6 22:27:51 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYGJ74lYRz5JTkS; Mon, 06 May 2024 22:27: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 4VYGJ73ynqz4QRg; Mon, 6 May 2024 22:27:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=04/nUVtZIKcGq67iI7yIqVdAj+zQDCVTppn/tMXSKr8=; b=mhs1H6kFEAJo1twsyqNMOb6APET+8tqzXuUWiMxPaVVgga3Eiwc5kSI4GxDUnuYqnUI8Ka JydxYiWi2TjnjgtWg7pBHLLkooDwWdPQRCKec3xkpqQX6TmPxnL+PLsH/tLq61hfhmm3e9 1u0lOl4fKUi1ZnIHlVekguKhyMxCBqns7xG9tKntcLBgoLQVwT0dQzG1pxhjfw9J7fDfMO FtO9h2/RBbeTERtQMGNM4+JoLJG3aQ5UlTwBBiuXW0x6KG4ImvA6WOgTcXTyMRmCCkSH4/ AAjQg1uoa23yPlzH0SlmzuR1kpbBGqkyIKWzIzVoSaDqXLKJr6ss/Zy8DQDkxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715034471; a=rsa-sha256; cv=none; b=fBuGl1M2XFX9kEXq1mVXsFljaN3y0gve909YamJiRQ6CE3gGNzpGikAa2amBByvUBdmHvE NtOeHqzt5OTQMaDDIS8FeCCLfiylW1euw2L18Kw2gnrTPc93Utwmuk0P2liVgXlMTDF4Ab n3Tt9hP/aIO+lIUcs4AOccob/36MmeB1ykkRZsqvEQ6bfQmYUMpMRflW7x6XrNnTsCuHYG XbAX10wollYMuaRgN05aiB19+RpFvtszWGQ97wqp1/1eYx42LJOKAduOassr/z/RuTU55B +uZUR9HEhbf53/96+WaEt+6eEybrmhEmzJX8K1nHLX0V/RB2jH3fTFdiOMY1RA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=04/nUVtZIKcGq67iI7yIqVdAj+zQDCVTppn/tMXSKr8=; b=mK49yT2GVgiEUbXWN9Bu1rFkWf8C+S2sRtZ/lBF5mRT/YwZ76v6WTCPwkOuUl2/8zQVAvO SdkqTZsMXxJ9YXfS4v53A9x6VvXnTOUvuZ73lUcK3PmQpL4kU/HFYZJFoVBfxd7/q7F/sV IUzft1Ge6BgaTvGMq8UMOk+3Mj7YdXRZvHLxWsrtEimU+ZrRL0spWlCIGH2KZ8/FqhWo21 eYQN7K5RGDxWXtbEIiNRY4rU92JJMovzpr5k6RA5zv6FqtykdAs2W3JjTuTLhuKH5I4fBy 0WW1K1yLpe4ocu8fi2L1b+/5MuMh4MHKg8F99Ec9YKqF9ZzGRmNrlUsA1OXqhQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYGJ73RrlzGG1; Mon, 6 May 2024 22:27: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 446MRpgk052314; Mon, 6 May 2024 22:27:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446MRp8Z052311; Mon, 6 May 2024 22:27:51 GMT (envelope-from git) Date: Mon, 6 May 2024 22:27:51 GMT Message-Id: <202405062227.446MRp8Z052311@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 570685971c6a - main - lagg: propagate up/down to the children List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 570685971c6ad30c75103453a38fdb2dff432bef Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=570685971c6ad30c75103453a38fdb2dff432bef commit 570685971c6ad30c75103453a38fdb2dff432bef Author: Gleb Smirnoff AuthorDate: 2024-05-06 22:25:53 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-06 22:27:32 +0000 lagg: propagate up/down to the children Based on the old submission from asomers@. With modern state of locking in lagg(4), the patch got much simplier. Enable the test that was waiting for this change. PR: 226144 Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D44605 --- sys/net/if_lagg.c | 24 ++++++++++++++++++++++++ tests/sys/net/if_lagg_test.sh | 1 - 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 554d8c2c1bcb..1f169ee32696 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -137,6 +137,7 @@ static void lagg_port_ifdetach(void *arg __unused, struct ifnet *); static int lagg_port_checkstacking(struct lagg_softc *); #endif static void lagg_port2req(struct lagg_port *, struct lagg_reqport *); +static void lagg_if_updown(struct lagg_softc *, bool); static void lagg_init(void *); static void lagg_stop(struct lagg_softc *); static int lagg_ioctl(struct ifnet *, u_long, caddr_t); @@ -1265,6 +1266,25 @@ lagg_watchdog_infiniband(void *arg) callout_reset(&sc->sc_watchdog, hz, &lagg_watchdog_infiniband, arg); } +static void +lagg_if_updown(struct lagg_softc *sc, bool up) +{ + struct ifreq ifr = {}; + struct lagg_port *lp; + + LAGG_XLOCK_ASSERT(sc); + + CK_SLIST_FOREACH(lp, &sc->sc_ports, lp_entries) { + if (up) + if_up(lp->lp_ifp); + else + if_down(lp->lp_ifp); + + if (lp->lp_ioctl != NULL) + lp->lp_ioctl(lp->lp_ifp, SIOCSIFFLAGS, (caddr_t)&ifr); + } +} + static void lagg_init(void *xsc) { @@ -1291,6 +1311,8 @@ lagg_init(void *xsc) if_setlladdr(lp->lp_ifp, IF_LLADDR(ifp), ifp->if_addrlen); } + lagg_if_updown(sc, true); + lagg_proto_init(sc); if (ifp->if_type == IFT_INFINIBAND) { @@ -1320,6 +1342,8 @@ lagg_stop(struct lagg_softc *sc) callout_stop(&sc->sc_watchdog); mtx_unlock(&sc->sc_mtx); + lagg_if_updown(sc, false); + callout_drain(&sc->sc_watchdog); } diff --git a/tests/sys/net/if_lagg_test.sh b/tests/sys/net/if_lagg_test.sh index 6b99aaedfbbf..1e07d4db294d 100755 --- a/tests/sys/net/if_lagg_test.sh +++ b/tests/sys/net/if_lagg_test.sh @@ -358,7 +358,6 @@ updown_body() { local TAP0 TAP1 LAGG MAC - atf_expect_fail "PR 226144 Upping a lagg interrface should automatically up its children" # Configure the lagg interface to use an RFC5737 nonrouteable addresses ADDR="192.0.2.2" MASK="24" From nobody Mon May 6 22:27:52 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYGJ86q3wz5JTkT; Mon, 06 May 2024 22:27: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 4VYGJ84cPnz4Qjl; Mon, 6 May 2024 22:27:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P0ELmj+gd5Oi9kRRSiUCzAbUN4HLCpwGeBwLud51Cdc=; b=PLpl/2XZ/2y+FnWwkeWUsiu3HDl9PXyVdxyMrtp9aWMDBvscSik9H2WYU0sBRHG11x8a5A NubItH7YCofkVUlrmnAkpjDL9L3Bv2MzwaZPPedCLU9gVSAN3S9qJpUfWZrqCyOuDLkv6m mLTnO1r57YNCFWrYEnyrjXIRfb0zJxDWA9Bb8hIBkWYDk9ScNbT4CaBk0Vv6UjIfCb+viQ UIl22Xx3xFBD0yFyH2OCVnJLsotKXBrPw5I+13EXhoSUH/OzpHPiZ4KJjPPjTMBYMv6Tm7 bNyJMQjgNg50nFO9CKQ9DUgayN0QmNszFQw98f8/380XsGl2vXvg7A6v8FFxHQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715034472; a=rsa-sha256; cv=none; b=tVvPPV6Tj1uOmakpcCJNzqSeIvPzGmq/j9k2MH5OO9X3E8sOc3Xg/9wi9XUv27BJwnzGGn 2ImX/rmEJSvG5/l6/BkvQxOcHr4OPaODmmwoOiyR/FAZZE3JILbhsY3/By33CSfyNUs83w 2tvFfWkNedvDrnX5fuT4+EbTZtO8ZV6cwOADs3N3G3iI2vPPeUjQ5Vq1+XkFbjTw2cF0pO 8VBS+0h/OTAPtRZ79KM6snIVbz8FNjIjvhOU7lxbTw+E0zfDBMrWF7FMyGmp3rrawAGYZY HD5ybTkPfnTltm2e5ql1BL96sraN9UwcMve/C0Vlqhl62fJ13HJl2/wHyDmc8A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P0ELmj+gd5Oi9kRRSiUCzAbUN4HLCpwGeBwLud51Cdc=; b=RH8W9/cIDW4+GDsX8NSSyhttbzL4GcwaP4K0S5ZuSghJ0zALLbsW4wC0qvPsJnP/sZdulv gYX0wF2pzZjCit8GWCeu7k4ViUzmDDCgSBbEc8vP5CRx6GtxH9Utz3lEYy6HEaETgArnmF HzBsmfBDu37+NdzKofqvImLVkVprqU+nN7RpOfrmdZCxXz99H1XBI95lP22rkmbB5LVVsB ++7Z4QnymP4ZI+gpmK6hdoYkhyOpGxZx1XZyO6xsu3Uiowgmk4EMDQ+ZYDZaHUhsPI8XGs 4Tzl7M/IQZiQhih9G8LNcqRsvsQgZy/Dv8fSHIdd4IS8ddFCgZ3GcFns0DXK1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYGJ84CgtzFyG; Mon, 6 May 2024 22:27: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 446MRqig052371; Mon, 6 May 2024 22:27:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446MRqTu052368; Mon, 6 May 2024 22:27:52 GMT (envelope-from git) Date: Mon, 6 May 2024 22:27:52 GMT Message-Id: <202405062227.446MRqTu052368@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: fadbb6f85a2e - main - lagg: remove use of net epoch in the ioctl paths List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fadbb6f85a2ea6d804c12848e3fcfdb6f62fc039 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=fadbb6f85a2ea6d804c12848e3fcfdb6f62fc039 commit fadbb6f85a2ea6d804c12848e3fcfdb6f62fc039 Author: Gleb Smirnoff AuthorDate: 2024-05-06 22:25:53 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-06 22:27:32 +0000 lagg: remove use of net epoch in the ioctl paths Rely on LAGG_SLOCK() instead. The use of network epoch(9) here was added in 6573d7580b851 (later tidied by 87bf9b9cbeebc) as a large sweep that blindly substituted blocking kernel primitives with epoch(9). In these particular code paths use of epoch(9) is incorrect and doesn't provide any protection against a stale pointer. Recent fix 48698ead6ff0, which should actually have removed the epoch use, created a potential sleeping in epoch problem. --- sys/net/if_lagg.c | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 1f169ee32696..bb882ac819ad 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -1015,7 +1015,6 @@ lagg_port_destroy(struct lagg_port *lp, int rundelport) static int lagg_port_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { - struct epoch_tracker et; struct lagg_reqport *rp = (struct lagg_reqport *)data; struct lagg_softc *sc; struct lagg_port *lp = NULL; @@ -1040,17 +1039,13 @@ lagg_port_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) break; } - NET_EPOCH_ENTER(et); - if ((lp = ifp->if_lagg) == NULL || lp->lp_softc != sc) { - error = ENOENT; - NET_EPOCH_EXIT(et); - break; - } - LAGG_SLOCK(sc); - lagg_port2req(lp, rp); + if (__predict_true((lp = ifp->if_lagg) != NULL && + lp->lp_softc == sc)) + lagg_port2req(lp, rp); + else + error = ENOENT; /* XXXGL: can happen? */ LAGG_SUNLOCK(sc); - NET_EPOCH_EXIT(et); break; case SIOCSIFCAP: @@ -1350,7 +1345,6 @@ lagg_stop(struct lagg_softc *sc) static int lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { - struct epoch_tracker et; struct lagg_softc *sc = (struct lagg_softc *)ifp->if_softc; struct lagg_reqall *ra = (struct lagg_reqall *)data; struct lagg_reqopts *ro = (struct lagg_reqopts *)data; @@ -1600,21 +1594,16 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) break; } - NET_EPOCH_ENTER(et); - if ((lp = (struct lagg_port *)tpif->if_lagg) == NULL || - lp->lp_softc != sc) { - error = ENOENT; - NET_EPOCH_EXIT(et); - if_rele(tpif); - break; - } - LAGG_SLOCK(sc); - lagg_port2req(lp, rp); + if (__predict_true((lp = tpif->if_lagg) != NULL && + lp->lp_softc == sc)) + lagg_port2req(lp, rp); + else + error = ENOENT; /* XXXGL: can happen? */ LAGG_SUNLOCK(sc); - NET_EPOCH_EXIT(et); if_rele(tpif); break; + case SIOCSLAGGPORT: error = priv_check(td, PRIV_NET_LAGG); if (error) From nobody Mon May 6 22:27:53 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYGJ96Y31z5JTWQ; Mon, 06 May 2024 22:27: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 4VYGJ95j0pz4QWs; Mon, 6 May 2024 22:27:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034473; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hcSF7MmapRKctcveeW+R+sb11YE8Zi2volhii1B8QQ4=; b=McG1zb5G7/JTmE19e+ZdcKNG9NPwXkE9VgkiDKK12NfF0jvoq8xib8ggeFtvW0dSEiOvdV tkD0xuLVf6KNolY15+c18JjsQoyil2cKNW4ONxIFOjihUeDwnNE7JzBlrvGMcVBB/auzlI KIiB2UzJYXZuIbLzu6Pcnfw0deRGyDBca+zngi9/RaBdfcTPfYiQCOVQ2frHh7d/kmwD3K cpDWdVkDiI+XSSOHTr+HW4az2IW49J+BIPBVEc3DYcBl8kTuq3oIrmop59LOB1KHBVOt20 /GGC4QN7RIkfPn6Ir6FK8pI84zTlPBnsHANOTfnhqEI6TNjn4kx+9Ay6vC9qdA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715034473; a=rsa-sha256; cv=none; b=PFRa8Crsk4Puj7kIRShisM1UgMxPiOwGSJ2eXnKjjwu0YU9yZzLWVYsCqQw7Y1nYOvS7LB O4gtlZWhK8Kp2D2QQ6PjXLCc7mAEs8hwUvqiiyPDv+ushiTxC6numRdbg9B4Y76X6SmQs5 mqGmD+ZQaHTvVnqX2bcWK8KnPANtx/VtfgQfW7SQSzfrWAgSPdGriR4OjvfQVj1bJhWkz5 FlwG89KDKKaBzQsKLCu+QFoNjDVvkIvB0cu4av5RRY8l6Ey722P0EXsrAz/Q1iZDTOxKk9 QbARslCZ0uIo/wnS0GvMWGu4GXqj4OPK1mSuMmI/9oWQHxZ0mTSE+y7dSYD/5w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034473; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hcSF7MmapRKctcveeW+R+sb11YE8Zi2volhii1B8QQ4=; b=bwCiVJAFWORe0lMbKTe7REA2YXeIx92bilwmpybCWyPNDUB0HZ3DHzHrRBtq919jt60Sum NPegPWXGDBrmgLKlnrsdzS+CX6zMMc4frAVXxNre+spMLfj71nramctUfuxvK42+fjpRLH SPqgsb82H1gvsILY4/5aBaxTzlUX6l2IO8FDY1S5F8nlY0s4fEuWtKsWWElR3TPj7A/4TU o1FOwdV1sesVR3DPX8xRKMPggBttyA0aMB3NiwIKrtOnhrZUyXs4bqQsH0NCbgarRXa4SP bpqDFjwUiObrl6LbCfgPc5Dtu15QychmbPcyUtJq+O3oJrsVJtLnrbS2UFsPOg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYGJ95GVvzFyH; Mon, 6 May 2024 22:27:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 446MRrCx052426; Mon, 6 May 2024 22:27:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446MRr4j052423; Mon, 6 May 2024 22:27:53 GMT (envelope-from git) Date: Mon, 6 May 2024 22:27:53 GMT Message-Id: <202405062227.446MRr4j052423@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 0089d83b3a21 - main - lagg: enable tests that stress the configuration changes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0089d83b3a21a7f5f7140b6c8f55c900f9d27589 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=0089d83b3a21a7f5f7140b6c8f55c900f9d27589 commit 0089d83b3a21a7f5f7140b6c8f55c900f9d27589 Author: Gleb Smirnoff AuthorDate: 2024-05-06 22:25:53 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-06 22:27:32 +0000 lagg: enable tests that stress the configuration changes I wasn't able to reproduce a crash in several runs. Might be that 48698ead6ff0 or earlier changes have closed the races. In case crashes with just enabled tests are registered, I will either work on them or disable tests again. --- tests/sys/net/if_lagg_test.sh | 8 -------- 1 file changed, 8 deletions(-) diff --git a/tests/sys/net/if_lagg_test.sh b/tests/sys/net/if_lagg_test.sh index 1e07d4db294d..4bdb59c8aab9 100755 --- a/tests/sys/net/if_lagg_test.sh +++ b/tests/sys/net/if_lagg_test.sh @@ -83,10 +83,6 @@ status_stress_body() { local TAP0 TAP1 LAGG MAC - if [ "$(atf_config_get ci false)" = "true" ]; then - atf_skip "Skipping this test because it panics the machine fairly often" - fi - # Configure the lagg interface to use an RFC5737 nonrouteable addresses ADDR="192.0.2.2" MASK="24" @@ -142,8 +138,6 @@ create_destroy_stress_body() { local TAP0 TAP1 LAGG MAC - atf_skip "Skipping this test because it easily panics the machine" - TAP0=`get_tap` TAP1=`get_tap` TAP2=`get_tap` @@ -261,8 +255,6 @@ up_destroy_stress_body() { local TAP0 TAP1 LAGG MAC SRCDIR - atf_skip "Skipping this test because it panics the machine fairly often" - # Configure the lagg interface to use an RFC5737 nonrouteable addresses ADDR="192.0.2.2" MASK="24" From nobody Mon May 6 22:30:27 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYGM76xkVz5JTnp; Mon, 06 May 2024 22:30: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 4VYGM76RBgz4S4L; Mon, 6 May 2024 22:30:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7RwjYpNZ6sSW+JMTyDkdR6LMrLK9lc17qA9+yUhWH20=; b=skRn/GyCNavx8ft12vAkVLY1cIK2e6cb9SM1bKj5lZ+h7MtpupFoIR61JzhQV8Yb64rKJ7 8jiETW8/t/1VAN0yuuaQz7oDDtYOEyVcnewT/Af8mhWlFscKxPDbJALJd6mNyoVtGBi4WK S8oUxTso0kSsyxXrsKx/wn4qktvczP+VsTtrWzhX5nMaT8rhPPXeHDE8jGzJu2mAmFWh3K 6JlGXGFsa8ne0dIrjpflqYlKLDkp0d1lDEpU4/pEvi3nrJteqJKT4n2b6psOZwtNvKjcX/ p7mHjnK4OuG+pBKVLAJP3QFBE1bJrMKrWCt2/3YUvwIgfm2UAIsHEc4DCUwJDw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715034627; a=rsa-sha256; cv=none; b=sXsubZPqUsTrekYB4KCc2ybdxaS+Xx8MvG2wzcY7tSYdOiRc1SO5H8oulRiEhqJWaYFvIm gC+p2Oo4pPaRuC/VPuRMx3e13zwLyKvEmwoUrNi9dfomDS1ajsz37/lyvP3A7sMlDAgk2m FDibvHViv5XYn2fwp8nxRfAaPgBcdIzhjiEaTIHEPwnE/DhXhhJBbApbH7qVvBSkW58qMs RZgldIeXcf92dXiqVJqHRRX4V4uJzIP/U32OvzyRE1z5er/IPmyzq3tElgzhmFerLEv3bJ h44kLHUft0bzopYewyjKlMsA820jDidFudhwig+fquzCFjixZvW1cTVFvsLvJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715034627; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7RwjYpNZ6sSW+JMTyDkdR6LMrLK9lc17qA9+yUhWH20=; b=pFE+p7AcFyC/ccr0xaGQ6ZYdi0n1DGHKJ78Mcr6bxidggJC2Kg2gSDUK7oV79KXNZ5AQ62 bRyiuzUBc5T656Mvtveaw+TAEKcv+Gcp1hcD5XBN3s+U4SFILALtkqW8bdgxWWC4eD4GAW 9i/hJ07p9qv0vXdk+kcxB527KP86x2Qeq0cB0ELNbuwZOY4oB64rH4er5OYvsCqNTPqPtb nTFhnA2cCxYZaUwOo/FCfqLKwbXFkTubRixiR8jzgaCYgpcGUdQRitgAvQaL+X8RhQOwcp lJdzUP94LHSjZan9bfChXIhlpF3gdvYhonaiOldrvdCyIW/KTDxJVjP3odJMcA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYGM7620TzFf4; Mon, 6 May 2024 22:30: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 446MURAE061454; Mon, 6 May 2024 22:30:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 446MURp8061451; Mon, 6 May 2024 22:30:27 GMT (envelope-from git) Date: Mon, 6 May 2024 22:30:27 GMT Message-Id: <202405062230.446MURp8061451@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 08b452033834 - main - sg: Add sg(4) man page List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 08b4520338349bc065ec184b32a6e700cb8e34ec Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=08b4520338349bc065ec184b32a6e700cb8e34ec commit 08b4520338349bc065ec184b32a6e700cb8e34ec Author: Warner Losh AuthorDate: 2024-05-06 22:28:09 +0000 Commit: Warner Losh CommitDate: 2024-05-06 22:29:58 +0000 sg: Add sg(4) man page Add minimal sg(4) manual page. This implements a subset of the Linux IOCTL interface for either native FreeBSD programs, or for Linux binaries in the linuxulator. Noticed by: Lexi Winter Sponsored by: Netflix --- share/man/man4/Makefile | 1 + share/man/man4/sg.4 | 63 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 32ea3a1b6991..5503637611bd 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -494,6 +494,7 @@ MAN= aac.4 \ send.4 \ ses.4 \ ${_sfxge.4} \ + sg.4 \ sge.4 \ siba.4 \ siftr.4 \ diff --git a/share/man/man4/sg.4 b/share/man/man4/sg.4 new file mode 100644 index 000000000000..bf7cb93cfb09 --- /dev/null +++ b/share/man/man4/sg.4 @@ -0,0 +1,63 @@ +.\" +.\" Copyright (c) 2024 Netflix, Inc. +.\" +.\" SPDX-License-Expression: BSD-2-Clause +.\" +.Dd May 6, 2024 +.Dt SG 4 +.Os +.Sh NAME +.Nm sg +.Nd Linux ioclt-compatible SCSI passthru device +.Sh SYNOPSIS +.Cd device sg +.Cd device scbus +.Sh DESCRIPTION +The +.Nm +driver provides a Linux compatible scsi passthru device. +This driver attaches to all +.Xr cam 4 +peripheral devices. +It is similar to the +.Xr pass 4 +device, but uses the Linux interfaces, rather than the FreeBSD CAM interfaces. +.Sh IOCTL +The following subset of the Linux sg ioctl interfaces are implemented: +.Bl -tag -width 12 +.It Va SG_SET_TIMEOUT +.Fa u_int to +Set the timeout in milliseconds. +.It Va SG_GET_TIMEOUT +Get the timeout in milliseconds +.It Va SG_GET_RESERVED_SIZE +.Fa u_int +Returns the size of the I/O one can do this device. +.It Va SG_GET_SCSI_ID +.Fa struct sg_scsi_id +Returns the bus number, channel, scsi bus ID number, lun and other information +about the SCSI device. +.It Va SG_GET_SG_TABLESIZE +.Fa u_int +Returns the table size, though hard wired to 0. +.It Va SG_GET_VERSION_NUM +.Fa u_int +Return the version number that is implemented. +.It Va SG_IO +.Fa struct sg_io_hdr +.El +All other ioctl interfaces return +.Va ENODEV . +.Sh FILES +.Bl -tag -width ".Pa /dev/sg*" -compact +.It Pa /dev/sg* +Passthru devices. +.El +.Sh SEE ALSO +.Xr cam 4 , +.Xr pass 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 7.0 . From nobody Tue May 7 05:19:30 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYRR62mrrz5K1DD; Tue, 07 May 2024 05:19: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 4VYRR62708z45yZ; Tue, 7 May 2024 05:19:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715059170; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OIvUJe9JgYXo15SZyug57ey47FGDNSRNFZmxbFUoESc=; b=RV359s/LU0LtEkFOb24NATQnJ3smpQpZqPWgrSdc+anEWGXjq6jiXh9guAxncSNtR5Gr1G KfSNZElwlXpHltsN+U0ATG+mOPgJOcScVzO8/9gH/O3e0MSwtdwhj5CHtMpzdmd3zL/vYg dKN0DwxOOJETely/aYIr/5z+MLLQBm7BjcuYnCbEWsg37pvaJCFHi2JPEnkGcV+VpPxxwZ RsDZlqFsrxTtigNlkowsDyYI6NEmqQuHlG3uk5HyfLnbEolZDjAbibhSEz4mvgq5sJhwV6 N71fG8d1iVTk24FtO/FWXKtNML38zfMun8yKN5FsiRnGrzACTvfOnGL4yyHFIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715059170; a=rsa-sha256; cv=none; b=TbyeFrhCaKSjEGEQg7K8mkbl4FoO2jr/GZMq67W+5LiYO94FC/ZvbeCO0x/jRu0e3LSiRj HVgZsC6VwHi9E1FLVjV5q5SWa1pJd9FpFpBiZaAkDyP3EMP2bee6LMoI+g+I/04crsX6BU fPR822uE7GNYFQ7v1PsAKARpoGKDPbjJu+DX4Yvw83ptvNg5oeS11xW9lEiAnnkoW9+Lcj yFdzJKQ4zmGR41vMril4yaiNMI3T45WaZTPt9f/47Jy0CRejO5yVgZMBJQVPIb3f3BqRUx FSicexQJSK7e01ZMFnxW3Ee73Qtr//9SabWTPZ8vK4OH67wwpEujuOI5PAYvnw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715059170; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OIvUJe9JgYXo15SZyug57ey47FGDNSRNFZmxbFUoESc=; b=rmpyf7g6/6Hf+HCDrKwEoQRVZNgsQnwqhPJlqwD7Z0u4Sx5bhyVuTYjxtbj06yoL8gDU0e HHecCn+rNLQjqsdNeRceSHRTMMkcD9HiTBiEfbhgMhkvGnU0Z6KMWq5aKNotIsEKsOryGx BXaoM28xlkXKd0vmaif3zSZ+lmj1qxBOzFdI1Tr/JoVgMKUxMSvnAIOzWnoVTlFGD1nfGn pFLKkK9VF0+XGCQfl94ffQVT2iv06P66rAT/x7QH1BCZ7wO8j9pmQMlFr8+jlS7LhNLUYE 74bdBCx+q/b3Tvomegnkd0fpjrKeKO3bLNyo7FiTqo2wD7j09avgTQa2D//UGg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYRR61c6SzSPX; Tue, 7 May 2024 05:19: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 4475JUBU048423; Tue, 7 May 2024 05:19:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4475JUMm048420; Tue, 7 May 2024 05:19:30 GMT (envelope-from git) Date: Tue, 7 May 2024 05:19:30 GMT Message-Id: <202405070519.4475JUMm048420@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 74be64851263 - main - Disconnect GBDE from the build. (Per earlier announcements of retirement.) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 74be648512632b0a6cd6a2ab7daf71cb0fbdfb69 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=74be648512632b0a6cd6a2ab7daf71cb0fbdfb69 commit 74be648512632b0a6cd6a2ab7daf71cb0fbdfb69 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 05:19:03 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 05:19:03 +0000 Disconnect GBDE from the build. (Per earlier announcements of retirement.) --- sbin/Makefile | 1 - sys/modules/geom/Makefile | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/sbin/Makefile b/sbin/Makefile index 200dc9da11c8..303e29e9e124 100644 --- a/sbin/Makefile +++ b/sbin/Makefile @@ -22,7 +22,6 @@ SUBDIR=adjkerntz \ fsck_msdosfs \ fsdb \ fsirand \ - gbde \ geom \ ggate \ growfs \ diff --git a/sys/modules/geom/Makefile b/sys/modules/geom/Makefile index 48f225d0a33e..24be5b1b82d7 100644 --- a/sys/modules/geom/Makefile +++ b/sys/modules/geom/Makefile @@ -2,8 +2,7 @@ SYSDIR?=${SRCTOP}/sys .include "${SYSDIR}/conf/kern.opts.mk" -SUBDIR= geom_bde \ - geom_cache \ +SUBDIR= geom_cache \ geom_concat \ geom_eli \ geom_flashmap \ From nobody Tue May 7 06:51:14 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYTSy6KMTz5K9b8; Tue, 07 May 2024 06:51: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 4VYTSy5pyBz4Gfg; Tue, 7 May 2024 06:51:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715064674; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BI5LI3pSqyXFanuU2BieEwG777Fv7NdvLe4QZL13Nmk=; b=NNKxYtItr6Huf651exCg+cWmAGoRP7reo6diguCmdmzab6bImXDC6xUGPoZZT9b4ikoT1x cw3WVHYZhcl8x16sQbuWX4CzE2oVUolqp6ZDBfRFcgpPjjCwrkpPepxX8w/JCbNhcvG5P/ KPbTmQM6rMtQQRrFvughIgfBmyvJlQrN0pbXW/HnTAweWEsNLXlKjvK1BLRcgdk+P+ZcHU fPyVptdecFE0sgi59/TWHLjQ3GSodfhZaY6e+AsiggHYeff00rO2fGSnrCB3m9XgLTyvNW /npWqWNBIDRJkCu2ZHgIt9OplfX65bkjcBJT0YrzcgCJxNm9z1zWIP5o+S2ZPg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715064674; a=rsa-sha256; cv=none; b=LGnelKxK+05gthbTGzwp05w+35bQ/57DSPeTcvTrmV7HHp4zHPtsQo6pIX8D+q5lETz3vk brYl5xa3mzTS+pWbRamg06IlL20HaFNf5U7cuSlx4pxQo/gfpfmD3Zy3Jdn9vyMiLApvk1 +wwYYhZbt2VDELTtkTW8Jogr38yr0Pmyf7d7A5aMsys27eD9dkvhvhQ1WvqNvWC6OcFzmV SmE1vraUe7Z8AJnQIacyPy6PhZWsqbFlDOWbtD9uVVypcSxMPsJtwg7FUK1EGPrr7fmC6j /R6LWEOS1fxPS8KWeW1QhnEiN3Z1wK8sv/k+4AWo7KZ6JYptRnCKJDamJlCbjw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715064674; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BI5LI3pSqyXFanuU2BieEwG777Fv7NdvLe4QZL13Nmk=; b=AbXl+JBu84p/unSvPq2LtWV2EKBw3oJvCuuu9B890DRUqvs2c/NSQbH6Jn3lRimpbR8cjd O69xeNKUSJfPrlt5ohd9sJq8Vv8N3LY3HzY8HCAg/2GG6CBFrdR7w6LslgK1M72BKScBQQ 4C3Stf+OB0xlz79UIFg1DK0BHddgFH++xIeyd7Fiu+9vMK3DM7jrHVf+/rajCMlwCJqfQy pzKk1lh3+JdAxMexNqb2SygYfmgsIyTlSUQvDGV7W9n8KiVTzajyrjKvwt2G6ClLa1KAyk OTGzUdAJcfxCGfgkvkUDhPTjgLnVVIDRTHSLElvXd+n55wDV9UdqOzcMX0D6Zw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYTSy5NDczX87; Tue, 7 May 2024 06:51: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 4476pE8G009741; Tue, 7 May 2024 06:51:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4476pEPx009738; Tue, 7 May 2024 06:51:14 GMT (envelope-from git) Date: Tue, 7 May 2024 06:51:14 GMT Message-Id: <202405070651.4476pEPx009738@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 6ac1f02be34a - main - Add GBDE to ObsoleteFiles.inc List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6ac1f02be34aeabc65409b8ad9c014ec78bca87f Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=6ac1f02be34aeabc65409b8ad9c014ec78bca87f commit 6ac1f02be34aeabc65409b8ad9c014ec78bca87f Author: Poul-Henning Kamp AuthorDate: 2024-05-07 06:50:52 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 06:50:52 +0000 Add GBDE to ObsoleteFiles.inc --- ObsoleteFiles.inc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 02477bbebd0b..c017ecaaf092 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,12 @@ # xargs -n1 | sort | uniq -d; # done +# 20240507: remove gbde +OLD_FILES+=boot/kernel/geom_bde.ko +OLD_FILES+=sbin/gbde +OLD_FILES+=usr/share/man/man4/gbde.4.gz +OLD_FILES+=usr/share/man/man8/gbde.8.gz + # 20240422: remove improperly installed libcxxrt.so.1 MOVED_LIBS+=usr/lib/libcxxrt.so.1 From nobody Tue May 7 07:40:39 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVYz2xskz5KG4X; Tue, 07 May 2024 07:40: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 4VYVYz2bxFz4MT0; Tue, 7 May 2024 07:40:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067639; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dlJ3SxRTknPQcK1L3LdPj1Q+gB0gL6Tu1bm+7RKw87c=; b=Avko6ukAbzNtoHgGjJxCKBRgWKlAkskKzSkjwoSAtSPwdLDyz8MIUTgTpHSn39pYJ+aHiS PCd8NEoAEYGuPA23zlQLqL9HcZTrUQDQk0Fxb9K/wFZZlTOiqucvU3j7QUq1MdyPlmob57 Nr6ORCY1dc5oSjWL7QpuG/oGHh8kocEQDvjsJ2/Voe8zTeTPXHvtxwInwIrxZmZ+j5ph+7 vgKnQZvU6il6UHLA9xuWmiWGlKN/7p5slg9Q4gp6s4pNEh8J5Oqs/qtvKMkjbA6xDFUKmw cjlVQZZxs5iV+1WFe2OPZ2SC+lC5BjY196kASBslieUjeI3KdSmPltOkXNcDmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067639; a=rsa-sha256; cv=none; b=Ig4CYNUvG40hxrigbcT3Mn4PqWnfdWWoRE4PcuCdhmuhpVKUnMwhV2ll8Qb0mxhNbrGHd8 gUxOrrcH/sqlnYQkev3ACfRlQKe/Vm1NFWRLFrhdgSW4hlBZzZxwy3bzeJEurvbMEdRLpY G2hGrJLkFOAykZpB3VxKwvfO6C083e3AzymnBLe7nt09PaITvhRDzSSQlB082nC8+qb/tQ gMFgNRgdHmOvyIqKNnYy73SUzetGuhdFMKfa6U+XSXHbW1bJ4aMGkTxzcU9HLVL061M0qp wziMimHZ2XaGnQ7uulvVyKbABcDgiV18lBol+9OlQMj1P2oZDla23xNtLZix6g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067639; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dlJ3SxRTknPQcK1L3LdPj1Q+gB0gL6Tu1bm+7RKw87c=; b=UCgdB2hAcsbnutlGWnA6ZyMxb3ducWP3RA/DvjK4+V+d4O43qqZ9ZqEmlTtbfUyiVpIFjI bi5h21FCUeNer7Lh9eGWEOS1CwWfnYLw/D6OCkPNvbvFiIBRomJ7495uVfXVEbP63rdlGE CnrTTqslWDALEYpbZvGERp4vxOssaG00femByGvXRayCiACL6thpwclWP6J8Gtcg8sJ9Wk NmzzowQ8CAODgtSdGhI1Auy+HZLAHDF5q4y+OqrQ28zIkq0McCzOuqRQT5Z7GiWfeyf7LO 4eeMr8mVzDMwvVqgqvOULXsA4wu7XgJ/WlArbmQfu1Jt1u6FXFSoM5T6GwKH5Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVYz2CyfzYMb; Tue, 7 May 2024 07:40: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 4477edRq094678; Tue, 7 May 2024 07:40:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477eddE094676; Tue, 7 May 2024 07:40:39 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:39 GMT Message-Id: <202405070740.4477eddE094676@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: eef9887871fd - main - Remove gbde.4 man page List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: eef9887871fdf7669564ead73d95bdcfa6cbe228 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=eef9887871fdf7669564ead73d95bdcfa6cbe228 commit eef9887871fdf7669564ead73d95bdcfa6cbe228 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:21:28 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:21:28 +0000 Remove gbde.4 man page --- share/man/man4/Makefile | 1 - share/man/man4/gbde.4 | 302 ------------------------------------------------ 2 files changed, 303 deletions(-) diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 5503637611bd..595da069f73c 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -163,7 +163,6 @@ MAN= aac.4 \ fwip.4 \ fwohci.4 \ fxp.4 \ - gbde.4 \ gdb.4 \ gem.4 \ genet.4 \ diff --git a/share/man/man4/gbde.4 b/share/man/man4/gbde.4 deleted file mode 100644 index 79acfbe81444..000000000000 --- a/share/man/man4/gbde.4 +++ /dev/null @@ -1,302 +0,0 @@ -.\" -.\" Copyright (c) 2002 Poul-Henning Kamp -.\" Copyright (c) 2002 Networks Associates Technology, Inc. -.\" All rights reserved. -.\" -.\" This software was developed for the FreeBSD Project by Poul-Henning Kamp -.\" and NAI Labs, the Security Research Division of Network Associates, Inc. -.\" under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the -.\" DARPA CHATS research program. -.\" -.\" 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. -.\" -.Dd October 19, 2002 -.Dt GBDE 4 -.Os -.Sh NAME -.Nm gbde -.Nd Geom Based Disk Encryption -.Sh SYNOPSIS -.Cd "options GEOM_BDE" -.Sh DESCRIPTION -.Bf -symbolic -NOTICE: -Please be aware that this code has not yet received much review -and analysis by qualified cryptographers and therefore should be considered -a slightly suspect experimental facility. -.Pp -We cannot at this point guarantee that the on-disk format will not change -in response to reviews or bug-fixes, so potential users are advised to -be prepared that -.Xr dump 8 Ns / Ns Xr restore 8 -based migrations may be called for in the future. -.Ef -.Pp -The objective of this facility is to provide a high degree of -denial of access to the contents of a -.Dq cold -storage device. -.Pp -Be aware that if the computer is compromised while up and running -.Em and -the storage device is actively attached and opened with a valid -pass-phrase, this facility offers no protection or denial of access -to the contents of the storage device. -.Pp -If, on the other hand, the device is -.Dq cold , -it should present a formidable -challenge for an attacker to gain access to the contents in the absence of -a valid pass-phrase. -.Pp -Four cryptographic barriers must be passed to gain access to the data, -and only a valid pass-phrase will yield this access. -.Pp -When the pass-phrase is entered, it is hashed with SHA2 into a 512 bit -.Dq key-material . -This is a way of producing cryptographic usable keys from a typically -.No all- Ns Tn ASCII -pass-phrase of an unpredictable user-selected length. -.Ss First barrier: the location of the \&"lock-sector". -During initialization, up to four independent but mutually aware -.Dq lock -sectors are written to the device in randomly chosen -locations. -These lock-sectors contain the 2048 random bit master-key and a number -of parameters of the layout geometry (more on this later). -Since the entire device will contain isotropic data, there is no -short-cut to rapidly determine which sequence of bytes contain a lock-sector. -.Pp -To locate a lock-sector, a small piece of data called the -.Dq metadata -and the key-material must be available. -The key-material decrypts the -metadata, which contains the byte offset on the device where the -corresponding lock-sector is located. -If the metadata is lost or unavailable but the key-material is at -hand, it would be feasible to do a brute force scan where each byte offset -of the device is checked to see if it contains the lock-sector data. -.Ss Second barrier: decryption of the master-key using key-material. -The lock-sector contains an encrypted copy of an architecture neutral -byte-sequence which encodes the fields of the lock-structure. -The order in which these fields are encoded is determined from the key-material. -The encoded byte stream is encrypted with 256bit AES in CBC mode. -.Ss Third barrier: decryption of the sector key. -For each sector, an MD5 hash over a -.Dq salt -from the lock-sector and the sector number is used to -.Dq cherry-pick -a subset of the master key, -which hashed together with the sector offset through MD5 produces the -.Dq kkey , -the key which encrypts the sector key. -.Ss Fourth barrier: decryption of the sector data. -The actual payload of the sector is encrypted with 128 bit AES in CBC mode -using a single-use random bits key. -.Ss Examining the reverse path -Assuming an attacker knows an amount of plaintext and has managed to -locate the corresponding encrypted sectors on the device, gaining access -to the plaintext context of other sectors is a daunting task: -.Pp -First he will have to derive from the encrypted sector and the known plain -text the sector key(s) used. -At the time of writing, it has been speculated that it could maybe be -possible to break open AES in only 2^80 operations; even so, that is still -a very impossible task. -.Pp -Armed with one or more sector keys, our patient attacker will then go -through essentially the same exercise, using the sector key and the -encrypted sector key to find the key used to encrypt the sector key. -.Pp -Armed with one or more of these -.Dq kkeys , -our attacker has to -run them backwards through MD5. -Even though he knows that the input to MD5 was 24 bytes and has the value -of 8 of these bytes from the sector number, he is still faced with 2^128 -equally likely possibilities. -.Pp -Having successfully done that, our attacker has successfully discovered -up to 16 bytes of the master-key, but is still unaware which 16 bytes, -and in which other sectors any of these known bytes contribute to the kkey. -.Pp -To unravel the last bit, the attacker has to guess the 16 byte random-bits -salt stored in the lock-sector to recover the indexes into the masterkey. -.Pp -Any attacker with access to the necessary machine power to even attempt -this attack will be better off attempting to brute-force the pass-phrase. -.Ss Positive denial facilities -Considering the infeasibility of the above attack, -gaining access to the pass-phrase will be of paramount importance for an -attacker, -and a number of scenarios can be imagined where undue pressure will be -applied to an individual to divulge the pass-phrase. -.Pp -A -.Dq Blackening -feature provides a way for the user, given a moment of -opportunity, to destroy the master-key in such a way that the pass-phrase -will be acknowledged as good but access to the data will still be -denied. -.Ss A practical analogy -For persons who think cryptography is only slightly more interesting than -watching silicon sublimate the author humbly offers this analogy to the -keying scheme for a protected device: -.Pp -Imagine an installation with a vault with walls of several hundred meters -thick solid steel. -This vault can only be feasibly accessed using the -single key, which has a complexity comparable to a number with 600 digits. -.Pp -This key exists in four copies, each of which is stored in one of -four small safes, each of which can be opened -with unique key which has a complexity comparable to an 80 digit -number. -.Pp -In addition to the masterkey, each of the four safes also contains -the exact locations of all four key-safes which are located in -randomly chosen places on the outside surface of the vault where they -are practically impossible to detect when they are closed. -.Pp -Finally, each safe contains four switches which are wired to a bar -of dynamite inside each of the four safes. -.Pp -In addition to this, a keyholder after opening his key-safe is -also able to install a copy of the master-key and re-key any of -key-safes (including his own). -.Pp -In normal use, the user will open the safe for which he has the key, -take out the master-key and access the vault. -When done, he will lock up the master-key in the safe again. -.Pp -If a keyholder-X for some reason distrusts keyholder-Y, she -has the option of opening her own safe, flipping one of the switches -and detonating the bar of dynamite in safe-Y. -This will obliterate the master-key in that safe and thereby deny -keyholder-Y access to the vault. -.Pp -Should the facility come under attack, any of the keyholders can detonate -all four bars of dynamite and thereby make sure that access to the -vault is denied to everybody, keyholders and attackers alike. -Should the facility fall to the enemy, and a keyholder be forced to apply -his personal key, he can do so in confidence that the contents of his safe -will not yield access to the vault, and the enemy will hopefully realize -that applying further pressure on the personnel will not give access to -the vault. -.Pp -The final point to make here is that it is perfectly possible to -make a detached copy of any one of these keys, including the master -key, and deposit or hide it as one sees fit. -.Ss Steganography support -When the device is initialized, it is possible to restrict the encrypted -data to a single contiguous area of the device. -If configured with care, this area could masquerade as some sort of -valid data or as random trash left behind by the systems operation. -.Pp -This can be used to offer a plausible deniability of existence, where -it will be impossible to prove that this specific area of the device -is in fact used to store encrypted data and not just random junk. -.Pp -The main obstacle in this is that the output from any encryption algorithm -worth its salt is so totally random looking that it stands out like a sore -thumb amongst practically any other sort of data which contains at least -some kind of structure or identifying byte sequences. -.Pp -Certain file formats like ELF contain multiple distinct sections, and it -would be possible to locate things just right in such a way that a device -contains a partition with a file system with a large executable, -.Pq Dq "a backup copy of my kernel" -where a non-loaded ELF section is laid out -consecutively on the device and thereby could be used to contain a -.Nm -encrypted device. -.Pp -Apart from the ability to instruct -.Nm -which those sectors are, no support is provided for creating such a setup. -.Ss Deployment suggestions -For personal use, it may be wise to make a backup copy of the masterkey -or use one of the four keys as a backup. -Fitting protection of this key is up to yourself, your local circumstances and -your imagination. -.Pp -For company or institutional use, it is strongly advised to make a copy -of the master-key and put it under whatever protection you have at your -means. -If you fail to do this, a disgruntled employee can deny you access to -the data -.Dq "by accident" . -(The employee can still intentionally deny access by applying another -encryption scheme to the data, but that problem has no technical solution.) -.Ss Cryptographic strength -This section lists the specific components which contribute to the cryptographic -strength of -.Nm . -.Pp -The payload is encrypted with AES in CBC mode using a 128 bit random -single-use key -.Pq Dq "the skey" . -AES is well documented. -.Pp -No IV is used in the encryption of the sectors, the assumption being -that since the key is random bits and single-use, an IV adds nothing to the -security of AES. -.Pp -The random key is produced with -.Xr arc4rand 9 -which is believed to do a respectable job at producing unpredictable bytes. -.Pp -The skey is stored on the device in a location which can be derived from -the location of the encrypted payload data. -The stored copy is encrypted with AES in CBC mode using a 128 bit key -.Pq Dq "the kkey" -derived -from a subset of the master key chosen by the output of an MD5 hash -over a 16 byte random bit static salt and the sector offset. -Up to 6.25% of the masterkey (16 bytes out of 2048 bits) will be selected -and hashed through MD5 with the sector offset to generate the kkey. -.Pp -Up to four copies of the master-key and associated geometry information -is stored on the device in static randomly chosen sectors. -The exact location inside the sector is randomly chosen. -The order in which the fields are encoded depends on the key-material. -The encoded byte-stream is encrypted with AES in CBC mode using 256 bit -key-material. -.Pp -The key-material is derived from the user-entered pass-phrase using -512 bit SHA2. -.Pp -No chain is stronger than its weakest link, which usually is poor pass-phrases. -.Sh SEE ALSO -.Xr gbde 8 -.Sh HISTORY -This software was developed for the -.Fx -Project by -.An Poul-Henning Kamp -and NAI Labs, the Security Research Division of Network Associates, Inc.\& -under DARPA/SPAWAR contract N66001-01-C-8035 -.Pq Dq CBOSS , -as part of the -DARPA CHATS research program. -.Sh AUTHORS -.An Poul-Henning Kamp Aq Mt phk@FreeBSD.org From nobody Tue May 7 07:40:40 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ05QNBz5KGPD; Tue, 07 May 2024 07:40: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 4VYVZ03chgz4Mhg; Tue, 7 May 2024 07:40:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067640; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fLRtNoy/yJ9rBg0pm1Q3xAX6YM6S9LfI/vDgNfbuwUQ=; b=u3QrmLXjKcLOtuO5mKPFK0EA2HIaRtEdYIlbyO30rmQ1KE/TKWv4ogRdmx6e5gnVK0TgMm 6SgqDNzrSEVn+bJknxGv/mmDpq3H85BEHVNhd1ZSBdS09KnMFEI6NquVit6wQ4QXZpklxI Z/lwGxOwmQBhx6vqEPtbbQu2+1QdZyZ1iqj7++zv/IbRZW1Uh0G1Vhu/0zPZu6C9jkheez MyVpVDGAkAm3gf0np1O1b5xcm5/r6ws6YwgTZNtu+lNiumjsP4jtTz+QGCqKb7Sq8eUkKo twhMzFsLbq+OpEGgz3wtw5Mve6Few178jMy0QHMtuSlJsysBn43N2Otm2d7tWg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067640; a=rsa-sha256; cv=none; b=x0zVnWSj7WfGM+vcpaYYjICQsHbi+e5Xpi5KnhJ03GKvPd2kxAjv/D/a3Ou3oaSZ7IHgTz ZF6woWfkEH//KGTaY9djUydgRgKD69nn6cbT540F+6rZIgPRXTrP1EZKsNJJa/gnE5/uSO urmi3nQjTeM7ROal+V7umY7WQ24TTLa7isacZwWzWWyvyzRPWDmqcltxrxsbP6+Sy5YUla 5+9S14GNtxRX2sFdYUbNfD2kh3lRxU5VMS44EE6zusaqC+64TI52w6t2K0wVzJCCngyUgi 4UHRJAU5fDYr7gDA2pil+QjFVyJXY8DCWhEagDvXeK9BUe7wvKj7TZN6BzsRig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067640; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fLRtNoy/yJ9rBg0pm1Q3xAX6YM6S9LfI/vDgNfbuwUQ=; b=Vgnbw/8vIfz0/uIgU55pAgBNXcg6+hZ6OCLIeQXPeSoCaDWGvjVAEOokFT4NNrQ8ckZ783 Xn01QP3I4IpMaOiUOpnX8ggn4bWPaK5qrwb8boEOFIk5OnvMHxJo2IW2w+rFU2NdApR4Ke MfHXKaRwTtf8T/IBeyGOi8K0+AQSBu+s6W2/SxuS4DjeYtS0veQN24EU/mb6CVW6NCDuS/ ulJr4DQfntuQNTpU4muPa5rjgLlhO9z7RJiO/Z/EwiAMGR397vORHio9RONglnnkZzgDNf cv8pT85/oebMxBTuJYiFRFmKWMgxlPyGF/PgpOFLZo3ZoNxolPhRAfu4SxjHtA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ03CvczXWC; Tue, 7 May 2024 07:40: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 4477ee8G094722; Tue, 7 May 2024 07:40:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477eeQ0094719; Tue, 7 May 2024 07:40:40 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:40 GMT Message-Id: <202405070740.4477eeQ0094719@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 14b475c47905 - main - Remove gbde support from swapon(8) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 14b475c47905357c4cf64b3b72d822b2feb23c36 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=14b475c47905357c4cf64b3b72d822b2feb23c36 commit 14b475c47905357c4cf64b3b72d822b2feb23c36 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:21:46 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:21:46 +0000 Remove gbde support from swapon(8) --- include/paths.h | 1 - sbin/swapon/swapon.c | 60 -------------------------------------------------- share/man/man5/fstab.5 | 3 +-- 3 files changed, 1 insertion(+), 63 deletions(-) diff --git a/include/paths.h b/include/paths.h index 9f9071af915c..86900664230b 100644 --- a/include/paths.h +++ b/include/paths.h @@ -61,7 +61,6 @@ #define _PATH_FIRMWARE "/usr/share/firmware" #define _PATH_FTPUSERS "/etc/ftpusers" #define _PATH_FWMEM "/dev/fwmem" -#define _PATH_GBDE "/sbin/gbde" #define _PATH_GELI "/sbin/geli" #define _PATH_HALT "/sbin/halt" #ifdef COMPAT_libcompat diff --git a/sbin/swapon/swapon.c b/sbin/swapon/swapon.c index 26a7dc22654a..a09f2598e2ac 100644 --- a/sbin/swapon/swapon.c +++ b/sbin/swapon/swapon.c @@ -56,7 +56,6 @@ static void usage(void) __dead2; static const char *swap_on_off(const char *, int, char *); -static const char *swap_on_off_gbde(const char *, int); static const char *swap_on_off_geli(const char *, char *, int); static const char *swap_on_off_md(const char *, char *, int); static const char *swap_on_off_sfile(const char *, int); @@ -238,12 +237,6 @@ swap_on_off(const char *name, int doingall, char *mntops) basebuf = strdup(name); base = basename(basebuf); - /* Swap on encrypted device by GEOM_BDE. */ - if (fnmatch("*.bde", base, 0) == 0) { - free(basebuf); - return (swap_on_off_gbde(name, doingall)); - } - /* Swap on encrypted device by GEOM_ELI. */ if (fnmatch("*.eli", base, 0) == 0) { free(basebuf); @@ -269,59 +262,6 @@ swap_basename(const char *name) return (dname); } -static const char * -swap_on_off_gbde(const char *name, int doingall) -{ - const char *ret; - char pass[64 * 2 + 1]; - unsigned char bpass[64]; - char *dname; - int i, error; - - dname = swap_basename(name); - if (dname == NULL) - return (NULL); - - if (which_prog == SWAPON) { - arc4random_buf(bpass, sizeof(bpass)); - for (i = 0; i < (int)sizeof(bpass); i++) - sprintf(&pass[2 * i], "%02x", bpass[i]); - pass[sizeof(pass) - 1] = '\0'; - - error = run_cmd(NULL, "%s init %s -P %s", _PATH_GBDE, - dname, pass); - if (error) { - /* bde device found. Ignore it. */ - free(dname); - if (qflag == 0) - warnx("%s: Device already in use", name); - return (NULL); - } - error = run_cmd(NULL, "%s attach %s -p %s", _PATH_GBDE, - dname, pass); - free(dname); - if (error) { - warnx("gbde (attach) error: %s", name); - return (NULL); - } - } - - ret = swap_on_off_sfile(name, doingall); - - if (which_prog == SWAPOFF) { - error = run_cmd(NULL, "%s detach %s", _PATH_GBDE, dname); - free(dname); - if (error) { - /* bde device not found. Ignore it. */ - if (qflag == 0) - warnx("%s: Device not found", name); - return (NULL); - } - } - - return (ret); -} - /* Build geli(8) arguments from mntops */ static char * swap_on_geli_args(const char *mntops) diff --git a/share/man/man5/fstab.5 b/share/man/man5/fstab.5 index 6a357e497ca7..9cdcf818cf32 100644 --- a/share/man/man5/fstab.5 +++ b/share/man/man5/fstab.5 @@ -423,10 +423,9 @@ resides in # Swap space on a block device. /dev/da0p1 none swap sw 0 0 # -# Swap space using a block device with GBDE/GELI encryption. +# Swap space using a block device with GELI encryption. # aalgo, ealgo, keylen, sectorsize options are available # for .eli devices. -/dev/da1p1.bde none swap sw 0 0 /dev/da1p2.eli none swap sw 0 0 # # tmpfs. From nobody Tue May 7 07:40:41 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ15Zhnz5KG74; Tue, 07 May 2024 07:40: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 4VYVZ14Jhvz4Mfl; Tue, 7 May 2024 07:40:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067641; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aANQyhGY+I0c1tgu5SlrzB/MVebFoYuwgDbPeX31Z1s=; b=MvFuOhPkquWjigwxGhApJ1QCWwy6Ynl3A+sXTkVDqHgE8hT/w7s+4mIuH5rjVi+wSBaQud DsLfNtG5axXbqr0rOB946W/AQ4BTJMfg3HoHcK/WvCEOaxw3C8AKfELkGTp/iG/kQhNVSb TJalqhZE73pJ2uP+VGx2vabYWxXZthXn5WikDy41LxZk4NhpBVoW7L19ASUDLlR5Rq88/i UvGzUQdB0GQnucNpU+EZ1ubkWbmLykBbpn7g/oej2L+U84vXg3VtdBdbIKoaiA9OGjubJq uJo9viH8wYqlHpV7/12BNKkvKFujSUpj/pxWlEdDJW0Uwiosk6abBEC9yQTmBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067641; a=rsa-sha256; cv=none; b=nEcRUGRZt6ZyvNChCWhoJwtvIgLJzNrOo+3Rcb+8KClC716uR6bWOFIjQ8lw3dsIzPEbOg QheKixjeA/LudvK6flfawKGvU0XVbsqK+YanUHIdoBsVVQ+bdSyO7FtOuKFDndxYjTH/CR AIaqQ8wz1//azD6e37XxKXm0jCZ/LV3qxUKNnXPSxsX2Oqo22o0apxUvjKmDDTq4++a4Ij SW1mdQli2o5+13rDUqLmv0TYQoxP+/VnrkW2AZQwBEvxrAE93d04XxtFzQVGw+MR31jV6U atPmixHOwk3WvitX1sNSC7W0JGJAQo7iEtL5S2c18wT9y8z+uumvxJz1K0Q3Bw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067641; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aANQyhGY+I0c1tgu5SlrzB/MVebFoYuwgDbPeX31Z1s=; b=WnwSc9Q6yE+t6L+WV09VZeaQxMF0hYOGolKkJzADh8VvrQD4iPas9Bf/rDYHXltjr0W4TI Ib+TJkpKPaSDJ5zrRIaUtn7ZNXNo7P0mNIzM7Pa16G34dKyjFsSrIzpRb3oO6XMtUynonZ N3KmjqXFEOneeePTOD9+qEioqMByyhIJMlMCmSzTsQb2yQHnFRBIN7MOoGcI4UuM+jw5Jo SyQ41oq9eoPs3qWuscFpilO393qRR0s3wGe7hkLESBe2mDOD/pxvRA9hmiON0dvAEBaZdR eouXsvgJX08/KtIPL+WvDN7UIWNaz+AXVam+BZffC5MQmF3pkcfmPSMrIpyq6g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ13wTWzXrq; Tue, 7 May 2024 07:40: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 4477ef4S094768; Tue, 7 May 2024 07:40:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477efNa094765; Tue, 7 May 2024 07:40:41 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:41 GMT Message-Id: <202405070740.4477efNa094765@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 0c7237d7e234 - main - Remove GBDE rc support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0c7237d7e23482eb5fe117eba9ce86c2b08fb5d1 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=0c7237d7e23482eb5fe117eba9ce86c2b08fb5d1 commit 0c7237d7e23482eb5fe117eba9ce86c2b08fb5d1 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:23:03 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:23:03 +0000 Remove GBDE rc support --- libexec/rc/rc.conf | 6 --- libexec/rc/rc.d/gbde | 119 --------------------------------------------------- 2 files changed, 125 deletions(-) diff --git a/libexec/rc/rc.conf b/libexec/rc/rc.conf index c91f13bd9812..2bd8af67c602 100644 --- a/libexec/rc/rc.conf +++ b/libexec/rc/rc.conf @@ -86,12 +86,6 @@ zfsd_enable="NO" # Set to YES to automatically start the ZFS fault gptboot_enable="YES" # GPT boot success/failure reporting. -# Experimental - test before enabling -gbde_autoattach_all="NO" # YES automatically mounts gbde devices from fstab -gbde_devices="NO" # Devices to automatically attach (list, or AUTO) -gbde_attach_attempts="3" # Number of times to attempt attaching gbde devices -gbde_lockdir="/etc" # Where to look for gbde lockfiles - # GELI disk encryption configuration. geli_devices="" # List of devices to automatically attach in addition to # GELI devices listed in /etc/fstab. diff --git a/libexec/rc/rc.d/gbde b/libexec/rc/rc.d/gbde deleted file mode 100755 index 295972a5697b..000000000000 --- a/libexec/rc/rc.d/gbde +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/sh -# -# This file, originally written by Garrett A. Wollman, is in the public -# domain. -# -# - -# PROVIDE: disks -# KEYWORD: nojail - -. /etc/rc.subr - -name="gbde" -desc="GEOM Based Disk Encryption" -start_precmd="find_gbde_devices start" -stop_precmd="find_gbde_devices stop" -start_cmd="gbde_start" -stop_cmd="gbde_stop" - -find_gbde_devices() -{ - case "${gbde_devices-auto}" in - [Aa][Uu][Tt][Oo]) - gbde_devices="" - ;; - *) - return 0 - ;; - esac - - case "$1" in - start) - fstab="/etc/fstab" - ;; - stop) - fstab=$(mktemp /tmp/mtab.XXXXXX) - mount -p >${fstab} - ;; - esac - - # - # We can't use "mount -p | while ..." because when a shell loop - # is the target of a pipe it executes in a subshell, and so can't - # modify variables in the script. - # - while read device mountpt type options dump pass; do - case "$device" in - *.bde) - # Ignore swap devices - case "$type" in - swap) - continue - ;; - esac - - case "$options" in - *noauto*) - if checkyesno gbde_autoattach_all; then - gbde_devices="${gbde_devices} ${device}" - fi - ;; - *) - gbde_devices="${gbde_devices} ${device}" - ;; - esac - ;; - esac - done <${fstab} - - case "$1" in - stop) - rm -f ${fstab} - ;; - esac - - return 0 -} - -gbde_start() -{ - for device in $gbde_devices; do - parent=${device%.bde} - parent=${parent#/dev/} - parent_=`ltr ${parent} '/' '_'` - eval "lock=\${gbde_lock_${parent_}-\"${gbde_lockdir}/${parent_}.lock\"}" - if [ -e "/dev/${parent}" -a ! -e "/dev/${parent}.bde" ]; then - echo "Configuring Disk Encryption for ${parent}." - - count=1 - while [ ${count} -le ${gbde_attach_attempts} ]; do - if [ -e "${lock}" ]; then - gbde attach ${parent} -l ${lock} - else - gbde attach ${parent} - fi - if [ -e "/dev/${parent}.bde" ]; then - break - fi - echo "Attach failed; attempt ${count} of ${gbde_attach_attempts}." - count=$((${count} + 1)) - done - fi - done -} - -gbde_stop() -{ - for device in $gbde_devices; do - parent=${device%.bde} - parent=${parent#/dev/} - if [ -e "/dev/${parent}.bde" ]; then - umount "/dev/${parent}.bde" 2>/dev/null - gbde detach "${parent}" - fi - done -} - -load_rc_config $name -run_rc_command "$1" From nobody Tue May 7 07:40:42 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ31MF9z5KGCg; Tue, 07 May 2024 07:40: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 4VYVZ25Jk7z4MR7; Tue, 7 May 2024 07:40:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067642; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R5JTPx31StyfbnZckqqk6YC7Ds//sm00PaYtvhX7Es0=; b=MU6nAugglZkSrO9sGq9Ucfj1WEb0xykmK+7ISmqtxxBa3nBXI787hbTwQxme+sBYcYimsV p1uINfkVVjIPDTYyd6K8Ai3YQzTPpbApEuA50VWGWbmJKSHWMfdz7DyWUCo/vRzC0E/W68 JrvYoTLLltR89/8IeIpScV4f2UVBmDHNrhpxu83tJ5u3gTkOodvVD12XxKWGnP39UzZKZw K950fwtoIOHLv3zYsDgrVNuHfWn/EUgiWOR0I/DuiblMlwwCkcr3baAbIDkKPBQvsigiAk MVqjRp851N16YaRcf6n39MrGfVD3uBjLYyw1q9ImzwAEztpyuxrKGY6Dgd4C5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067642; a=rsa-sha256; cv=none; b=GXDgjsaOsiBJszk0Efi2gznrTo1kRmpzaU6luKXoKQaj7q5DB1QojGIWQ1RSHz/YvIA7Cs t1SZDxxIKKm7B7yYpZFytanm8n2hwbC5M+s6KDCx82hWPuHSBpDUx1BiiKXNPka0EMeKCi OmcAhxnCMYZ2Hz++e4vwA/Th1UR8Reqrhtf0KitcZQwrL8ix7H6BbpMMV7tQCtUBC81I0X FVt3EHV2A7qBCV+3/btQK8FGKJEcs6VZVZlwk7yyQyRpauu3NfxIYDO9X+8uDRzUpkZomz vZ+mx6L6aMjxAIxxHJDogqx7VZK3lEnowR1BXMFBzBJrtXmbT1m169D++Zelzw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067642; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R5JTPx31StyfbnZckqqk6YC7Ds//sm00PaYtvhX7Es0=; b=Yqbbt27K/iD1YL+ojN4eLk89noC+ZlBC7WF2vp8P0ptBnJaH3y4mE9O0XBbd2UQZWdli6O iqeZs9CpvJKr78eL32g0Ky+8ZX4SxWZcqfbku8mCI8wTh1prGKu1fARaEYuwsKwHGBuPfh Vh+8veVo7KURrq0Wq3NVP3Q+hCjhGz0s+3CZ4fTUY8xhNryFAlvgBte1M8KG14M55fA4cq nECHUU7wzNIZBN2MiI9Oe+XG8ZG5qMwkSobBuv5veoCJTuWepfIShFG5Ey54gyjaJA5UCg oMPJtRd/5RXMLEPdc6DquOVQnj7Gco/NiiQs1e+QiEvTKXa0tHDw5MO9V7FIDA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ24wJYzYKy; Tue, 7 May 2024 07:40: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 4477eglI094809; Tue, 7 May 2024 07:40:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477egnO094806; Tue, 7 May 2024 07:40:42 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:42 GMT Message-Id: <202405070740.4477egnO094806@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: d50f41366bfb - main - Remove gbde from rescue List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d50f41366bfbb150d17b55d41b18534c4f04f190 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=d50f41366bfbb150d17b55d41b18534c4f04f190 commit d50f41366bfbb150d17b55d41b18534c4f04f190 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:23:38 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:23:38 +0000 Remove gbde from rescue --- rescue/rescue/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rescue/rescue/Makefile b/rescue/rescue/Makefile index 2c31323c2507..c3604c6e22ad 100644 --- a/rescue/rescue/Makefile +++ b/rescue/rescue/Makefile @@ -92,7 +92,7 @@ CRUNCH_SRCDIRS+= sbin CRUNCH_PROGS_sbin= \ camcontrol clri devfs dmesg dump \ dumpfs dumpon fsck fsck_ffs fsck_msdosfs fsdb \ - fsirand gbde geom ifconfig init \ + fsirand geom ifconfig init \ kldconfig kldload kldstat kldunload ldconfig \ md5 mdconfig mdmfs mknod mount mount_cd9660 \ mount_msdosfs mount_nfs mount_nullfs \ From nobody Tue May 7 07:40:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ42G76z5KG77; Tue, 07 May 2024 07:40: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 4VYVZ36Jjcz4MgH; Tue, 7 May 2024 07:40:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067644; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3aAXjbcRhgS/drXZyajT9Jrleqd9CBucEZp8YxcSyP0=; b=NSx6nUg4QE+QRRgsRZr4uVtYhLwvRBObu/IARPZ1XnTJnTLSKmJ7Ags2Utx1+TBr2drlSu 89YsiwEmssqpievhCGgpwRrZN+8EGS7RnHvE0RktMjzk+z2tMhnwcnlx6c84BCNq1Ale6v U1jmwpGfFJteY6tGn2yepQ90a4/1t+VKs8yhw9xma/9gAdIZLYt+qIiS9rFAvaGhRk9RPO mObE3NOpuxb85zPzpGGGqt+d6slKwvo7PCKbxIPlPr4O926FIJtcIQkIBMFFNyRxM/h7qg 9TduOWwA8X6ficTG76XkfMgqRp7Wc3PdGIWTcHPMNKgeuoIHsuDghq2QzCkzuw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067644; a=rsa-sha256; cv=none; b=CMaavtVsJnWcRiODC7AeHShGOgismjUq99fJchw48iUvHImhzO1d8iq3Lbhtg8PHcXNXHD j+p0VdsOxnw8fzN8hCqVcUPjVG9w7Rvd1zU+egrHQn72E1IFhNclYEXf2IIE1xPPnssN/S AHH8tfqwizgawacUuPhHZ1HE5B4Sax7hMXnGdwKil41x4f0YjYCMdHi7etC0FEjDHoJsIa p7nyhaQEGaWtiX1LEoi6pcy7NcRDvzYKTqTJegA4lve6OqksHGQZ1W74HJi9jLP57YC/gq TgxeyKNrvd3TKpTwN5k1GwBcICLMpH3mGh13KG1Dw5LdhCf5GPC6V0VkpMzI4g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067644; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3aAXjbcRhgS/drXZyajT9Jrleqd9CBucEZp8YxcSyP0=; b=eYhAsetW6kjgW/Xg5F89zsFscW9pDo0gq15pE42RRKomppt+XiSIz8ynJtJ+UnK7f3MErh QAnzwJVL3nRvGYT40TGVwEgNFQOUJilJnWR1193mNo+zHWy0alj3v3qAGxdpOFLZMfQcWE 06F2SUts6xFp8RDpdfs+BRhlLgyLUw5LZR82Occkmez5O+uz+uKsDDhRVfVD6+rv5/BpmL jWzWdvP72iTEFKWC2YDZFucIOhE34sJPaFgHlA35fBRvdmyf4dLRT2J7CyZAXyf/S5+gqu Xv89td2y39VOcRs6nroAZtJh7EYxcXM1wR7U5ykxqJB7aaZiP5Om25nrOmvi8Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ35vJCzY5c; Tue, 7 May 2024 07:40: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 4477ehDj094855; Tue, 7 May 2024 07:40:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477ehlk094852; Tue, 7 May 2024 07:40:43 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:43 GMT Message-Id: <202405070740.4477ehlk094852@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: bbc36ba969ac - main - Remove documentation of GBDE rc support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bbc36ba969acf09785b8f3818c6877eb60c08674 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=bbc36ba969acf09785b8f3818c6877eb60c08674 commit bbc36ba969acf09785b8f3818c6877eb60c08674 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:25:51 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:25:51 +0000 Remove documentation of GBDE rc support --- libexec/rc/rc.d/Makefile | 1 - share/man/man5/rc.conf.5 | 37 ------------------------------------- 2 files changed, 38 deletions(-) diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index da72474d8b82..331f0edf44bc 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -24,7 +24,6 @@ CONFS= DAEMON \ dmesg \ dumpon \ fsck \ - gbde \ geli \ geli2 \ gptboot \ diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5 index a45c60cca410..68d8dade2c6d 100644 --- a/share/man/man5/rc.conf.5 +++ b/share/man/man5/rc.conf.5 @@ -2181,43 +2181,6 @@ which had the attribute set using .Xr gpart 8 utility. -.It Va gbde_autoattach_all -.Pq Vt bool -If set to -.Dq Li YES , -.Pa /etc/rc.d/gbde -will attempt to automatically initialize the .bde devices specified in -.Pa /etc/fstab . -.It Va gbde_devices -.Pq Vt str -List the devices that the script should try to attach, -or -.Dq Li AUTO . -.It Va gbde_lockdir -.Pq Vt str -The directory where the -.Xr gbde 4 -lockfiles are located. -The default lockfile directory is -.Pa /etc . -.Pp -The lockfile for each individual -.Xr gbde 4 -device can be overridden by setting the variable -.Va gbde_lock_ Ns Aq Ar device , -where -.Ar device -is the encrypted device without the -.Dq Pa /dev/ -and -.Dq Pa .bde -parts. -.It Va gbde_attach_attempts -.Pq Vt int -Number of times to attempt attaching to a -.Xr gbde 4 -device, i.e., how many times the user is asked for the pass-phrase. -Default is 3. .It Va geli_devices .Pq Vt str List of devices to automatically attach on boot. From nobody Tue May 7 07:40:44 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ53R2Hz5KGB9; Tue, 07 May 2024 07:40: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 4VYVZ5166Pz4Mtl; Tue, 7 May 2024 07:40:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067645; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=D+s9jDbjhLdSN/c0EFYwlZD3mrY9kfNAh1aeFPkoWjk=; b=sqyDSogwZl8e7WK8GdkDiFu6TOyv4Ek/sFBLkYgYB7JU/lmzSkSaDFK2BHENB6OdCpSF1T 2sDGgt2yipnGZoqVzmSyTOfk8Bpvtnt3m+0KDutK7pNB8c019Lrc2l4LnFdujFiSzyAX9A KZsNtNKWrDDE7kB86WoCudu6o3lFSig50mfATtdFnE4gVPOpdmxLUVUKXXP0W2S2jgsCDh OryCbnyEgCKcx68SVnA58F6BB/C8x3pzMuNzK037m6vcSv7GcMEXoDkWlphkIGlc939Ekd 6pV3divqqogJg+LbVE6ZGDwSintUcrpWp3EwpazybzhKrCkNCb+yb+mZ1KXpSg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067645; a=rsa-sha256; cv=none; b=e+eZFkVeCmXZ9DdkpWRbKaNp9O/SwYcs7NgTWlWQZmIw+htPhqY3PQGzmk42eQF6pP5g94 VG3KlHXmkn/3l8pU7lwwssIvd8CzbOLewNg5h9Z/DpBDcedVS7N0uD/GYUDuXwz0T0tfMh efszc0F/vKY/Jw8JMH9W1hfs3G4Iv/Zvzl3RhhGUOOrCcb2cSx6bNZIH+8F87sSxmvJZj1 571sSTa7aLS4/WlbsLnGIEMPJk+lOF8lz4ccReBQbOj7BXyPNSd+AVFnZtYckkPDWKntEk +9bL0qiAwEv6j1V9CiUaqg0CuwV80goMXZGKXJ2L3a5/NKRvjits+CEB7KLXAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067645; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=D+s9jDbjhLdSN/c0EFYwlZD3mrY9kfNAh1aeFPkoWjk=; b=a/RYLpUCGDy+iYIdy4As4R5LaFaYSHC63FTrnJGsxeUNom4qBVksKdM/wZHb9uimLqQIFN W8uTLl3d1hgvVAnvazzI4QWmV+hRmY06cYxSkCxoYJDEUx8Ulkn4nperl5t/jYzhXWV0xj mzo5Sp8dtauHJeepYI2xO9i8CK00tqW2k8x4mEv7xKyRtbX7R/b5vvHYor4NJgWKmawNUB 6kgSQ4smtuQ2Szv8XbE42LYI1BNssh+SaZ1W60i6Kl8cmWJKroznGk7/TpFyqyAI7LNxyp GtPxfjn5cgzraYNTQM6p0KgoC26PeRErZjCwFEeiDnLnPFRTwxnQqcYPtap8Fw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ46vswzXrr; Tue, 7 May 2024 07:40: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 4477eiaL094894; Tue, 7 May 2024 07:40:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477eiHs094891; Tue, 7 May 2024 07:40:44 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:44 GMT Message-Id: <202405070740.4477eiHs094891@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 984764d79646 - main - Remove GBDE stress test List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 984764d79646b495034cd3737071b52d0b48a92a Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=984764d79646b495034cd3737071b52d0b48a92a commit 984764d79646b495034cd3737071b52d0b48a92a Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:26:39 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:26:39 +0000 Remove GBDE stress test --- tools/test/stress2/misc/gbde.sh | 55 ----------------------------------------- 1 file changed, 55 deletions(-) diff --git a/tools/test/stress2/misc/gbde.sh b/tools/test/stress2/misc/gbde.sh deleted file mode 100755 index f47d8e9e15bf..000000000000 --- a/tools/test/stress2/misc/gbde.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh - -# -# Copyright (c) 2012 Peter Holm -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# 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. -# - -# "panic: bio_driver1 used by the consumer (geom ffs.md5.bde)" seen -# http://people.freebsd.org/~pho/stress/log/gbde.txt - -[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 - -. ../default.cfg - -mdconfig -l | grep -q $mdstart && mdconfig -d -u $mdstart -mdconfig -a -t swap -s 1g -u $mdstart - -gbde init /dev/md$mdstart -P pass-phrase || exit -gbde attach md$mdstart -p pass-phrase || exit - -newfs $newfs_flags /dev/md$mdstart.bde > /dev/null -mount /dev/md$mdstart.bde $mntpoint -chmod 777 $mntpoint - -export runRUNTIME=20m -export RUNDIR=$mntpoint/stressX - -su $testuser -c 'cd ..; ./run.sh marcus.cfg' - -while mount | grep $mntpoint | grep -q bde; do - umount $mntpoint || sleep 1 -done -gbde detach md$mdstart -mdconfig -d -u $mdstart From nobody Tue May 7 07:40:45 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ63H76z5KG4k; Tue, 07 May 2024 07:40: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 4VYVZ61NTXz4Mrf; Tue, 7 May 2024 07:40:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067646; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oBqWSaNl+V+HF/s2fzZ5VvyKj9Pl6A0HZANDf0gJiys=; b=IlMflrB4eAFmnxjI1cmTGTkGnaNuCgdqPM1mzuXD6Snd4tEQMrIFH4isFHOKFZOTcDMEYS Hun/fHos7rkitE2xt3ghkRBYd1S9lXILFMRM26kHdome5gaNi3qERqCBUHEfPpjNMpiC9+ H0hP1xw1ZNn9D2Gnr6K3wdJnDpFeEIln7gZ0muaKFxsCX3Ps7UMO4XQBWrL6KWF+iP7rcp REzcD2lnfpSzS+6XFqh89RT91utAc80qz95FhVMRSsdS+s049KH2NK+M6q8gQD4faPLZ/o MEeL6CbJ6nYIbpT5UJjkIRyYwVvkTQL2mA/yz3Qo48Q4WKCtSZwXjbiisWGzww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067646; a=rsa-sha256; cv=none; b=mIiZqahl5ivoTIrB3EOGSEgD7VeZNGpRf17NarxAdT8aoQ2nKslt05MxVvx+42lQ3GV2Ed tlDk8HhAW3f7804yI84+RJpMtMQdF2Dfs4v6BMgcc3T2VLaa3TdsaCCZpUGomlk/E7MzB0 sefbqkOYjqazUArF63AMx8Id6au7QNDEiay63wka2F1zJ5L0C62TLvtijMQ7TC3pHopDEy BdRUNZeo7LT3n6EKTrQ/g+m8oN5LhcONc4SMJA1rDsg23C5Y+Hp1V5VSH/8PcnLCn53SO1 qkq1gS85y1wYx+bfMjuBAxd54gZGaAFaulzXIFSTOmLRpDp1h0MTey9IV9gSxA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067646; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oBqWSaNl+V+HF/s2fzZ5VvyKj9Pl6A0HZANDf0gJiys=; b=uZTG6ZVAqqcSQdNpytv/7TdSdlUruxNIyXtIEgIRvfwmeaMpLTdD+dpAsf2p99s7rBW3Tk Va06uKslE5nQnLLYqLxbqwZCyNY1lBYFpkV78a41WBHCEL7BSC6qqDn40FoQU+0bhlHP3t gPZNjR+fDXH+EfrFpqTtnZfqdV9TIXbrRhwo100XYA3TZo5pOIsnmHmj8ymkbOnErBfbqv cjAaJm95hlzoweJ6XASlMkCyMS9MOPbzv/DhOCDQRt1wVFzo+1jWeuMm2YwSolcPjE/720 xaDy+LoZdN3v52CoF/nNdCni4tyV9vCkEoRXw9Z6YXZ0jEYKpqnZVSOzx58/pA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ6104CzYMf; Tue, 7 May 2024 07:40: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 4477ektY094935; Tue, 7 May 2024 07:40:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477ejuI094932; Tue, 7 May 2024 07:40:45 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:45 GMT Message-Id: <202405070740.4477ejuI094932@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 8d2d1d651678 - main - Remove GBDE source files List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8d2d1d651678178aa7f24f0530347f860423fd9e Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=8d2d1d651678178aa7f24f0530347f860423fd9e commit 8d2d1d651678178aa7f24f0530347f860423fd9e Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:31:09 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:31:09 +0000 Remove GBDE source files --- sbin/gbde/Makefile | 31 - sbin/gbde/Makefile.depend | 18 - sbin/gbde/gbde.8 | 271 ---- sbin/gbde/gbde.c | 895 ------------ sbin/gbde/image.uu | 3304 -------------------------------------------- sbin/gbde/template.txt | 31 - sbin/gbde/test.sh | 66 - sys/geom/bde/g_bde.c | 296 ---- sys/geom/bde/g_bde.h | 215 --- sys/geom/bde/g_bde_crypt.c | 358 ----- sys/geom/bde/g_bde_lock.c | 478 ------- sys/geom/bde/g_bde_work.c | 778 ----------- 12 files changed, 6741 deletions(-) diff --git a/sbin/gbde/Makefile b/sbin/gbde/Makefile deleted file mode 100644 index 8c84781fc4ed..000000000000 --- a/sbin/gbde/Makefile +++ /dev/null @@ -1,31 +0,0 @@ - -PACKAGE=geom -PROG= gbde -SRCS= gbde.c template.c -SRCS+= rijndael-alg-fst.c -SRCS+= rijndael-api-fst.c -SRCS+= g_bde_lock.c - -# rijndael-fst.c does evil casting things which can results in warnings, -# the test-vectors check out however, so it works right. -NO_WCAST_ALIGN= -NO_WMISSING_VARIABLE_DECLARATIONS= - -CFLAGS+= -I${SRCTOP}/sys -.PATH: ${SRCTOP}/sys/geom/bde \ - ${SRCTOP}/sys/crypto/rijndael \ - ${SRCTOP}/sys/crypto/sha2 - -CLEANFILES+= template.c - -MAN= gbde.8 -LIBADD= md util geom - -template.c: template.txt - file2c 'const char template[] = {' ',0};' \ - < ${.CURDIR}/template.txt > template.c - -test: ${PROG} - sh ${.CURDIR}/test.sh ${.CURDIR} - -.include diff --git a/sbin/gbde/Makefile.depend b/sbin/gbde/Makefile.depend deleted file mode 100644 index 2edf986e595a..000000000000 --- a/sbin/gbde/Makefile.depend +++ /dev/null @@ -1,18 +0,0 @@ -# Autogenerated - do NOT edit! - -DIRDEPS = \ - include \ - include/xlocale \ - lib/${CSU_DIR} \ - lib/libc \ - lib/libcompiler_rt \ - lib/libgeom \ - lib/libmd \ - lib/libutil \ - - -.include - -.if ${DEP_RELDIR} == ${_DEP_RELDIR} -# local dependencies - needed for -jN in clean tree -.endif diff --git a/sbin/gbde/gbde.8 b/sbin/gbde/gbde.8 deleted file mode 100644 index 1f3d41017307..000000000000 --- a/sbin/gbde/gbde.8 +++ /dev/null @@ -1,271 +0,0 @@ -.\" -.\" Copyright (c) 2002 Poul-Henning Kamp -.\" Copyright (c) 2002 Networks Associates Technology, Inc. -.\" All rights reserved. -.\" -.\" This software was developed for the FreeBSD Project by Poul-Henning Kamp -.\" and NAI Labs, the Security Research Division of Network Associates, Inc. -.\" under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the -.\" DARPA CHATS research program. -.\" -.\" 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. -.\" -.Dd October 3, 2016 -.Dt GBDE 8 -.Os -.Sh NAME -.Nm gbde -.Nd operation and management utility for Geom Based Disk Encryption -.Sh SYNOPSIS -.Nm -.Cm attach -.Ar destination -.Op Fl k Ar keyfile -.Op Fl l Ar lockfile -.Op Fl p Ar pass-phrase -.Nm -.Cm detach -.Ar destination -.Nm -.Cm init -.Ar destination -.Op Fl i -.Op Fl f Ar filename -.Op Fl K Ar new-keyfile -.Op Fl L Ar new-lockfile -.Op Fl P Ar new-pass-phrase -.Nm -.Cm setkey -.Ar destination -.Op Fl n Ar key -.Op Fl k Ar keyfile -.Op Fl l Ar lockfile -.Op Fl p Ar pass-phrase -.Op Fl K Ar new-keyfile -.Op Fl L Ar new-lockfile -.Op Fl P Ar new-pass-phrase -.Nm -.Cm nuke -.Ar destination -.Op Fl n Ar key -.Op Fl k Ar keyfile -.Op Fl l Ar lockfile -.Op Fl p Ar pass-phrase -.Nm -.Cm destroy -.Ar destination -.Op Fl k Ar keyfile -.Op Fl l Ar lockfile -.Op Fl p Ar pass-phrase -.Sh DESCRIPTION -.Bf -symbolic -NOTICE: -Please be aware that this code has not yet received much review -and analysis by qualified cryptographers and therefore should be considered -a slightly suspect experimental facility. -.Pp -We cannot at this point guarantee that the on-disk format will not change -in response to reviews or bug-fixes, so potential users are advised to -be prepared that -.Xr dump 8 Ns / Ns -.Xr restore 8 -based migrations may be called for in the future. -.Ef -.Pp -The -.Nm -utility is the only official operation and management interface for the -.Xr gbde 4 -.Tn GEOM -based disk encryption kernel facility. -The interaction between the -.Nm -utility and the kernel part is not a published interface. -.Pp -The operational aspect consists of two subcommands: -one to open and attach -a device to the in-kernel cryptographic -.Nm -module -.Pq Cm attach , -and one to close and detach a device -.Pq Cm detach . -.Pp -The management part allows initialization of the master key and lock sectors -on a device -.Pq Cm init , -initialization and replacement of pass-phrases -.Pq Cm setkey , -and key invalidation -.Pq Cm nuke -and blackening -.Pq Cm destroy -functions. -.Pp -The -.Fl l Ar lockfile -argument is used to supply the lock selector data. -If no -.Fl l -option is specified, the first sector is used for this purpose. -.Pp -The -.Fl L Ar new-lockfile -argument -specifies the lock selector file for the key -initialized with the -.Cm init -subcommand -or modified with the -.Cm setkey -subcommand. -.Pp -The -.Fl n Ar key -argument can be used to specify to which of the four keys -the operation applies. -A value of 1 to 4 selects the specified key, a value of 0 (the default) -means -.Dq "this key" -(i.e., the key used to gain access to the device) -and a value of \-1 means -.Dq "all keys" . -.Pp -The -.Fl f Ar filename -specifies an optional parameter file for use under initialization. -.Pp -Alternatively, the -.Fl i -option toggles an interactive mode where a template file with descriptions -of the parameters can be interactively edited. -.Pp -The -.Fl p Ar pass-phrase -argument -specifies the pass-phrase used for opening the device. -If not specified, the controlling terminal will be used to prompt the user -for the pass-phrase. -Be aware that using this option may expose the pass-phrase to other -users who happen to run -.Xr ps 1 -or similar while the command is running. -.Pp -The -.Fl P Ar new-pass-phrase -argument -can be used to specify the new pass-phrase to the -.Cm init -and -.Cm setkey -subcommands. -If not specified, the user is prompted for the new pass-phrase on the -controlling terminal. -Be aware that using this option may expose the pass-phrase to other -users who happen to run -.Xr ps 1 -or similar while the command is running. -.Pp -The -.Fl k Ar keyfile -argument specifies a key file to be used in combination with the -pass-phrase (whether the pass-phrase is specified on the command line -or entered from the terminal) for opening the device. -The device will only be opened if the contents of the key file and the -pass-phrase are both correct. -.Pp -The -.Fl K Ar new-keyfile -argument can be used to specify a new key file to the -.Cm init -and -.Cm setkey -subcommands. -If not specified, no key file will be used (even if one was previously -used). -.Sh EXAMPLES -To initialize a device, using default parameters: -.Pp -.Dl "gbde init /dev/ada0s1f -L /etc/ada0s1f.lock" -.Pp -To attach an encrypted device: -.Pp -.Dl "gbde attach ada0s1f -l /etc/ada0s1f.lock" -.Pp -The encrypted device has the suffix -.Pa .bde -so a typical -command to create and mount a file system would be: -.Pp -.Dl "newfs /dev/ada0s1f.bde" -.Dl "mount /dev/ada0s1f.bde /secret" -.Pp -To detach an encrypted device: -.Pp -.Dl "gbde detach ada0s1f" -.Pp -Please notice that detaching an encrypted device corresponds to -physically removing it, do not forget to unmount the file system first. -.Pp -To initialize the second key using a detached lockfile and a trivial -pass-phrase: -.Pp -.Dl "gbde setkey ada0s1f -n 2 -P foo -L key2.lockfile" -.Pp -To invalidate your own masterkey: -.Pp -.Dl "gbde nuke ada0s1f" -.Pp -This will overwrite your masterkey sector with zeros, and results in -a diagnostic if you try to use the key again. -You can also destroy the other three copies of the masterkey with the --n argument. -.Pp -You can also invalidate your masterkey without leaving a tell-tale sector -full of zeros: -.Pp -.Dl "gbde destroy ada0s1f" -.Pp -This will overwrite the information fields in your masterkey sector, -encrypt it and write it back. -You get a (different) diagnostic if you try to use it. -.Sh SEE ALSO -.Xr gbde 4 , -.Xr geom 4 -.Sh HISTORY -This software was developed for the -.Fx -Project by -.An Poul-Henning Kamp -and NAI Labs, the Security Research Division of Network Associates, Inc.\& -under DARPA/SPAWAR contract N66001-01-C-8035 -.Pq Dq CBOSS , -as part of the -DARPA CHATS research program. -.Nm -first appeared in -.Fx 5.0 . -.Sh AUTHORS -.An Poul-Henning Kamp Aq Mt phk@FreeBSD.org -.Sh BUGS -The cryptographic algorithms and the overall design have not been -attacked mercilessly for over 10 years by a gang of cryptoanalysts. diff --git a/sbin/gbde/gbde.c b/sbin/gbde/gbde.c deleted file mode 100644 index e173bb78ad90..000000000000 --- a/sbin/gbde/gbde.c +++ /dev/null @@ -1,895 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2002 Poul-Henning Kamp - * Copyright (c) 2002 Networks Associates Technology, Inc. - * All rights reserved. - * - * This software was developed for the FreeBSD Project by Poul-Henning Kamp - * and NAI Labs, the Security Research Division of Network Associates, Inc. - * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the - * DARPA CHATS research program. - * - * 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. - * - * XXX: Future stuff - * - * Replace the template file options (-i & -f) with command-line variables - * "-v property=foo" - * - * Introduce -e, extra entropy source (XOR with /dev/random) - * - * Introduce -E, alternate entropy source (instead of /dev/random) - * - * Introduce -i take IV from keyboard or - * - * Introduce -I take IV from file/cmd - * - * Introduce -m/-M store encrypted+encoded masterkey in file - * - * Introduce -k/-K get pass-phrase part from file/cmd - * - * Introduce -d add more dest-devices to worklist. - * - * Add key-option: selfdestruct bit. - * - * New/changed verbs: - * "onetime" attach with onetime nonstored locksector - * "key"/"unkey" to blast memory copy of key without orphaning - * "nuke" blow away everything attached, crash/halt/power-off if possible. - * "blast" destroy all copies of the masterkey - * "destroy" destroy one copy of the masterkey - * "backup"/"restore" of masterkey sectors. - * - * Make all verbs work on both attached/detached devices. - * - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define GBDEMOD "geom_bde" -#define KASSERT(foo, bar) do { if(!(foo)) { warn bar ; exit (1); } } while (0) - -#include -#include - -extern const char template[]; - - -#if 0 -static void -g_hexdump(void *ptr, int length) -{ - int i, j, k; - unsigned char *cp; - - cp = ptr; - for (i = 0; i < length; i+= 16) { - printf("%04x ", i); - for (j = 0; j < 16; j++) { - k = i + j; - if (k < length) - printf(" %02x", cp[k]); - else - printf(" "); - } - printf(" |"); - for (j = 0; j < 16; j++) { - k = i + j; - if (k >= length) - printf(" "); - else if (cp[k] >= ' ' && cp[k] <= '~') - printf("%c", cp[k]); - else - printf("."); - } - printf("|\n"); - } -} -#endif - -static void __dead2 -usage(void) -{ - - (void)fprintf(stderr, -"usage: gbde attach destination [-k keyfile] [-l lockfile] [-p pass-phrase]\n" -" gbde detach destination\n" -" gbde init destination [-i] [-f filename] [-K new-keyfile]\n" -" [-L new-lockfile] [-P new-pass-phrase]\n" -" gbde setkey destination [-n key]\n" -" [-k keyfile] [-l lockfile] [-p pass-phrase]\n" -" [-K new-keyfile] [-L new-lockfile] [-P new-pass-phrase]\n" -" gbde nuke destination [-n key]\n" -" [-k keyfile] [-l lockfile] [-p pass-phrase]\n" -" gbde destroy destination [-k keyfile] [-l lockfile] [-p pass-phrase]\n"); - exit(1); -} - -void * -g_read_data(struct g_consumer *cp, off_t offset, off_t length, int *error) -{ - void *p; - int fd, i; - off_t o2; - - p = malloc(length); - if (p == NULL) - err(1, "malloc"); - fd = *(int *)cp; - o2 = lseek(fd, offset, SEEK_SET); - if (o2 != offset) - err(1, "lseek"); - i = read(fd, p, length); - if (i != length) - err(1, "read"); - if (error != NULL) - error = 0; - return (p); -} - -static void -random_bits(void *p, u_int len) -{ - arc4random_buf(p, len); -} - -/* XXX: not nice */ -static u_char sha2[SHA512_DIGEST_LENGTH]; - -static void -reset_passphrase(struct g_bde_softc *sc) -{ - - memcpy(sc->sha2, sha2, SHA512_DIGEST_LENGTH); -} - -static void -setup_passphrase(struct g_bde_softc *sc, int sure, const char *input, - const char *keyfile) -{ - char buf1[BUFSIZ + SHA512_DIGEST_LENGTH]; - char buf2[BUFSIZ + SHA512_DIGEST_LENGTH]; - char *p; - int kfd, klen, bpos = 0; - - if (keyfile != NULL) { - /* Read up to BUFSIZ bytes from keyfile */ - kfd = open(keyfile, O_RDONLY, 0); - if (kfd < 0) - err(1, "%s", keyfile); - klen = read(kfd, buf1, BUFSIZ); - if (klen == -1) - err(1, "%s", keyfile); - close(kfd); - - /* Prepend the passphrase with the hash of the key read */ - g_bde_hash_pass(sc, buf1, klen); - memcpy(buf1, sc->sha2, SHA512_DIGEST_LENGTH); - memcpy(buf2, sc->sha2, SHA512_DIGEST_LENGTH); - bpos = SHA512_DIGEST_LENGTH; - } - - if (input != NULL) { - if (strlen(input) >= BUFSIZ) - errx(1, "Passphrase too long"); - strcpy(buf1 + bpos, input); - - g_bde_hash_pass(sc, buf1, strlen(buf1 + bpos) + bpos); - memcpy(sha2, sc->sha2, SHA512_DIGEST_LENGTH); - return; - } - for (;;) { - p = readpassphrase( - sure ? "Enter new passphrase:" : "Enter passphrase: ", - buf1 + bpos, sizeof buf1 - bpos, - RPP_ECHO_OFF | RPP_REQUIRE_TTY); - if (p == NULL) - err(1, "readpassphrase"); - - if (sure) { - p = readpassphrase("Reenter new passphrase: ", - buf2 + bpos, sizeof buf2 - bpos, - RPP_ECHO_OFF | RPP_REQUIRE_TTY); - if (p == NULL) - err(1, "readpassphrase"); - - if (strcmp(buf1 + bpos, buf2 + bpos)) { - printf("They didn't match.\n"); - continue; - } - } - if (strlen(buf1 + bpos) < 3) { - printf("Too short passphrase.\n"); - continue; - } - break; - } - g_bde_hash_pass(sc, buf1, strlen(buf1 + bpos) + bpos); - memcpy(sha2, sc->sha2, SHA512_DIGEST_LENGTH); -} - -static void -encrypt_sector(void *d, int len, int klen, void *key) -{ - keyInstance ki; - cipherInstance ci; - int error; - - error = rijndael_cipherInit(&ci, MODE_CBC, NULL); - if (error <= 0) - errx(1, "rijndael_cipherInit=%d", error); - error = rijndael_makeKey(&ki, DIR_ENCRYPT, klen, key); - if (error <= 0) - errx(1, "rijndael_makeKeY=%d", error); - error = rijndael_blockEncrypt(&ci, &ki, d, len * 8, d); - if (error <= 0) - errx(1, "rijndael_blockEncrypt=%d", error); -} - -static void -cmd_attach(const struct g_bde_softc *sc, const char *dest, const char *lfile) -{ - int ffd; - u_char buf[16]; - struct gctl_req *r; - const char *errstr; - - r = gctl_get_handle(); - gctl_ro_param(r, "verb", -1, "create geom"); - gctl_ro_param(r, "class", -1, "BDE"); - gctl_ro_param(r, "provider", -1, dest); - gctl_ro_param(r, "pass", SHA512_DIGEST_LENGTH, sc->sha2); - if (lfile != NULL) { - ffd = open(lfile, O_RDONLY, 0); - if (ffd < 0) - err(1, "%s", lfile); - read(ffd, buf, 16); - gctl_ro_param(r, "key", 16, buf); - close(ffd); - } - errstr = gctl_issue(r); - if (errstr != NULL) - errx(1, "Attach to %s failed: %s", dest, errstr); - - exit (0); -} - -static void -cmd_detach(const char *dest) -{ - struct gctl_req *r; - const char *errstr; - char buf[BUFSIZ]; - - r = gctl_get_handle(); - gctl_ro_param(r, "verb", -1, "destroy geom"); - gctl_ro_param(r, "class", -1, "BDE"); - sprintf(buf, "%s.bde", dest); - gctl_ro_param(r, "geom", -1, buf); - /* gctl_dump(r, stdout); */ - errstr = gctl_issue(r); - if (errstr != NULL) - errx(1, "Detach of %s failed: %s", dest, errstr); - exit (0); -} - -static void -cmd_open(struct g_bde_softc *sc, int dfd , const char *l_opt, u_int *nkey) -{ - int error; - int ffd; - u_char keyloc[16]; - u_int sectorsize; - off_t mediasize; - struct stat st; - - error = ioctl(dfd, DIOCGSECTORSIZE, §orsize); - if (error) - sectorsize = 512; - error = ioctl(dfd, DIOCGMEDIASIZE, &mediasize); - if (error) { - error = fstat(dfd, &st); - if (error == 0 && S_ISREG(st.st_mode)) - mediasize = st.st_size; - else - error = ENOENT; - } - if (error) - mediasize = (off_t)-1; - if (l_opt != NULL) { - ffd = open(l_opt, O_RDONLY, 0); - if (ffd < 0) - err(1, "%s", l_opt); - read(ffd, keyloc, sizeof keyloc); - close(ffd); - } else { - memset(keyloc, 0, sizeof keyloc); - } - - error = g_bde_decrypt_lock(sc, sc->sha2, keyloc, mediasize, - sectorsize, nkey); - if (error == ENOENT) - errx(1, "Lock was destroyed."); - if (error == ESRCH) - errx(1, "Lock was nuked."); - if (error == ENOTDIR) - errx(1, "Lock not found"); - if (error != 0) - errx(1, "Error %d decrypting lock", error); - if (nkey) - printf("Opened with key %u\n", 1 + *nkey); - return; -} - -static void -cmd_nuke(struct g_bde_key *gl, int dfd , int key) -{ - int i; - u_char *sbuf; - off_t offset, offset2; - - sbuf = malloc(gl->sectorsize); - memset(sbuf, 0, gl->sectorsize); - offset = (gl->lsector[key] & ~(gl->sectorsize - 1)); - offset2 = lseek(dfd, offset, SEEK_SET); - if (offset2 != offset) - err(1, "lseek"); - i = write(dfd, sbuf, gl->sectorsize); - free(sbuf); - if (i != (int)gl->sectorsize) - err(1, "write"); - printf("Nuked key %d\n", 1 + key); -} - -static void -cmd_write(struct g_bde_key *gl, struct g_bde_softc *sc, int dfd , int key, const char *l_opt) -{ - int i, ffd; - uint64_t off[2]; - u_char keyloc[16]; - u_char *sbuf, *q; - off_t offset, offset2; - - sbuf = malloc(gl->sectorsize); - /* - * Find the byte-offset in the lock sector where we will put the lock - * data structure. We can put it any random place as long as the - * structure fits. - */ - for(;;) { - random_bits(off, sizeof off); - off[0] &= (gl->sectorsize - 1); - if (off[0] + G_BDE_LOCKSIZE > gl->sectorsize) - continue; - break; - } - - /* Add the sector offset in bytes */ - off[0] += (gl->lsector[key] & ~(gl->sectorsize - 1)); - gl->lsector[key] = off[0]; - - i = g_bde_keyloc_encrypt(sc->sha2, off[0], off[1], keyloc); - if (i) - errx(1, "g_bde_keyloc_encrypt()"); - if (l_opt != NULL) { - ffd = open(l_opt, O_WRONLY | O_CREAT | O_TRUNC, 0600); - if (ffd < 0) - err(1, "%s", l_opt); - write(ffd, keyloc, sizeof keyloc); - close(ffd); - } else if (gl->flags & GBDE_F_SECT0) { - offset2 = lseek(dfd, 0, SEEK_SET); - if (offset2 != 0) - err(1, "lseek"); - i = read(dfd, sbuf, gl->sectorsize); - if (i != (int)gl->sectorsize) - err(1, "read"); - memcpy(sbuf + key * 16, keyloc, sizeof keyloc); - offset2 = lseek(dfd, 0, SEEK_SET); - if (offset2 != 0) - err(1, "lseek"); - i = write(dfd, sbuf, gl->sectorsize); - if (i != (int)gl->sectorsize) - err(1, "write"); - } else { - errx(1, "No -L option and no space in sector 0 for lockfile"); - } - - /* Allocate a sectorbuffer and fill it with random junk */ - if (sbuf == NULL) - err(1, "malloc"); - random_bits(sbuf, gl->sectorsize); - - /* Fill random bits in the spare field */ - random_bits(gl->spare, sizeof(gl->spare)); - - /* Encode the structure where we want it */ - q = sbuf + (off[0] % gl->sectorsize); - i = g_bde_encode_lock(sc->sha2, gl, q); - if (i < 0) - errx(1, "programming error encoding lock"); - - encrypt_sector(q, G_BDE_LOCKSIZE, 256, sc->sha2 + 16); - offset = gl->lsector[key] & ~(gl->sectorsize - 1); - offset2 = lseek(dfd, offset, SEEK_SET); - if (offset2 != offset) - err(1, "lseek"); - i = write(dfd, sbuf, gl->sectorsize); - if (i != (int)gl->sectorsize) - err(1, "write"); - free(sbuf); -#if 0 - printf("Wrote key %d at %jd\n", key, (intmax_t)offset); - printf("s0 = %jd\n", (intmax_t)gl->sector0); - printf("sN = %jd\n", (intmax_t)gl->sectorN); - printf("l[0] = %jd\n", (intmax_t)gl->lsector[0]); - printf("l[1] = %jd\n", (intmax_t)gl->lsector[1]); - printf("l[2] = %jd\n", (intmax_t)gl->lsector[2]); - printf("l[3] = %jd\n", (intmax_t)gl->lsector[3]); - printf("k = %jd\n", (intmax_t)gl->keyoffset); - printf("ss = %jd\n", (intmax_t)gl->sectorsize); -#endif -} - -static void -cmd_destroy(struct g_bde_key *gl, int nkey) -{ - int i; - - bzero(&gl->sector0, sizeof gl->sector0); - bzero(&gl->sectorN, sizeof gl->sectorN); - bzero(&gl->keyoffset, sizeof gl->keyoffset); - gl->flags &= GBDE_F_SECT0; - bzero(gl->mkey, sizeof gl->mkey); - for (i = 0; i < G_BDE_MAXKEYS; i++) - if (i != nkey) - gl->lsector[i] = ~0; -} - -static int -sorthelp(const void *a, const void *b) -{ - const uint64_t *oa, *ob; - - oa = a; - ob = b; - if (*oa > *ob) - return 1; - if (*oa < *ob) - return -1; - return 0; -} - -static void -cmd_init(struct g_bde_key *gl, int dfd, const char *f_opt, int i_opt, const char *l_opt) -{ - int i; - u_char *buf; - unsigned sector_size; - uint64_t first_sector; - uint64_t last_sector; - uint64_t total_sectors; - off_t off, off2; - unsigned nkeys; - const char *p; - char *q, cbuf[BUFSIZ]; - unsigned u, u2; - uint64_t o; - properties params; - - bzero(gl, sizeof *gl); - if (f_opt != NULL) { - i = open(f_opt, O_RDONLY); - if (i < 0) - err(1, "%s", f_opt); - params = properties_read(i); - close (i); - } else if (i_opt) { - /* XXX: Polish */ - asprintf(&q, "%stemp.XXXXXXXXXX", _PATH_TMP); - if (q == NULL) - err(1, "asprintf"); - i = mkstemp(q); - if (i < 0) - err(1, "%s", q); - write(i, template, strlen(template)); - close (i); - p = getenv("EDITOR"); - if (p == NULL) - p = "vi"; - if (snprintf(cbuf, sizeof(cbuf), "%s %s\n", p, q) >= - (ssize_t)sizeof(cbuf)) { - unlink(q); - errx(1, "EDITOR is too long"); - } - system(cbuf); - i = open(q, O_RDONLY); - if (i < 0) - err(1, "%s", f_opt); - params = properties_read(i); - close (i); - unlink(q); - free(q); - } else { - /* XXX: Hack */ - i = open(_PATH_DEVNULL, O_RDONLY); - if (i < 0) - err(1, "%s", _PATH_DEVNULL); - params = properties_read(i); - close (i); - } - - /* */ - p = property_find(params, "sector_size"); - i = ioctl(dfd, DIOCGSECTORSIZE, &u); - if (p != NULL) { - sector_size = strtoul(p, &q, 0); - if (!*p || *q) - errx(1, "sector_size not a proper number"); - } else if (i == 0) { - sector_size = u; - } else { - errx(1, "Missing sector_size property"); - } - if (sector_size & (sector_size - 1)) - errx(1, "sector_size not a power of 2"); - if (sector_size < 512) - errx(1, "sector_size is smaller than 512"); - buf = malloc(sector_size); - if (buf == NULL) - err(1, "Failed to malloc sector buffer"); - gl->sectorsize = sector_size; - - i = ioctl(dfd, DIOCGMEDIASIZE, &off); - if (i == 0) { - first_sector = 0; - total_sectors = off / sector_size; - last_sector = total_sectors - 1; - } else { - first_sector = 0; - last_sector = 0; - total_sectors = 0; - } - - /* */ - p = property_find(params, "first_sector"); - if (p != NULL) { - first_sector = strtoul(p, &q, 0); - if (!*p || *q) - errx(1, "first_sector not a proper number"); - } - - /* */ - p = property_find(params, "last_sector"); - if (p != NULL) { - last_sector = strtoul(p, &q, 0); - if (!*p || *q) - errx(1, "last_sector not a proper number"); - if (last_sector <= first_sector) - errx(1, "last_sector not larger than first_sector"); - total_sectors = last_sector + 1; - } - - /* */ - p = property_find(params, "total_sectors"); - if (p != NULL) { *** 5852 LINES SKIPPED *** From nobody Tue May 7 07:40:47 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ72z9fz5KGG0; Tue, 07 May 2024 07:40: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 4VYVZ728gjz4MvD; Tue, 7 May 2024 07:40:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=usRGqUHWMFSdKJNNGuhlgFUaTTqrAjszXD8Xl6AWeiI=; b=he67fJhd+sm1WUTMIMJvL6RtWA+d9VoWI56UoKMxD31WcKOqnKGHmisDH/njhWtK8sxNOX JiJSK6XY537GuIQCMagGNK+XJRINGreRAi5y2NfHjdIsL9MP4gDZ60RPZZLTAb0VRZ0mGM KvQ5qAU9Zsms8jWPsFCoQ1Og3HewGaFPfrjPPiZb3kZwvDkTOfuXkEOL/kzhq4oT9xU+B7 +5EohuGkan/u9yZ5GyTXaKLOHo0Klv/WpTT/Po3DnZumPKXkbjoPDZXPSeWbkNX+3ZO+sr z24i0QWaqmQqfjPPg6VaxeFbX2OpAlXMWCrVTo5Y+ER3whp0VrxcZr9Vx/oAAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067647; a=rsa-sha256; cv=none; b=Y/hDFQsClslM4jCxrfb3Zi6m9XP4YlzyOYze0jDzNHJeHAgv3ePf9h65oUgteGFlsOFazE druo33KYgdzTl2DuNyg2SA4uEBQ5QqNZR9kiuyc2MVLpIbj6dfMvJmSyuiNaGR67Fpiijf 97jk0PavtEtRhs/B7aYkQqSQCg4PWxqHGvs6dxSljEvL+4yx2m6g50Gi4aNG/zJ/m8yMY4 B4h17DwyQuv+xCu8WHmgUHZHERPc2t3JYHiQ0lyjlbHBnj+etdarOqZb9RDMu1Zrb9QzjL A9ZQ3dh5aFvrWo0FJCUrZLBIwMhFPdAjauhko4uAJaxCYuF95Yon6MK5wz4pEw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=usRGqUHWMFSdKJNNGuhlgFUaTTqrAjszXD8Xl6AWeiI=; b=d3Kd9LPgU/mDpc2hOaZ00msGbnXhq/UhXwQo4rF+seYXmsWnLFfM7yXaJaOWHCoyOb2eCg No055/4/owqXmvlkCqcdD4SWXRwx+mlKd7DdW8/RLLFc+hjYKDwVvBXbOEtpxaTi2lrgAe 0fbwuJuSaZgQzSm5Bkqhv5EI6Hh3UdtfGXk5fJnOd5r9hDBDooMka1qH1+0hGLKqsR0PEn +2pEiaNyyyYJzV2U1maIjUnuhTx4Wy/pS+mpObc57rwwtudvQUkijsO5W4D1ITIqrHusWY d6Ab1RQfmJhPlrGt6e9p6IyDqnWLpB7zEKQEF6cwoVnpv8Nh53LqNucZW0F61g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ71mdbzYBV; Tue, 7 May 2024 07:40: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 4477elIN094986; Tue, 7 May 2024 07:40:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477ella094983; Tue, 7 May 2024 07:40:47 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:47 GMT Message-Id: <202405070740.4477ella094983@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 77bd06e43007 - main - Add gbde rc.d script to ObsoleteFiles.inc List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 77bd06e43007522546c046cd9b3ab6cba64b3f93 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=77bd06e43007522546c046cd9b3ab6cba64b3f93 commit 77bd06e43007522546c046cd9b3ab6cba64b3f93 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:31:19 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:31:19 +0000 Add gbde rc.d script to ObsoleteFiles.inc --- ObsoleteFiles.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index c017ecaaf092..627f70ea3b0a 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -53,6 +53,7 @@ # 20240507: remove gbde OLD_FILES+=boot/kernel/geom_bde.ko +OLD_FILES+=etc/rc.d/gbde OLD_FILES+=sbin/gbde OLD_FILES+=usr/share/man/man4/gbde.4.gz OLD_FILES+=usr/share/man/man8/gbde.8.gz From nobody Tue May 7 07:40:48 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZ84W26z5KGM1; Tue, 07 May 2024 07:40: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 4VYVZ83XSMz4MVD; Tue, 7 May 2024 07:40:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067648; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V82B8Fa9kTb0NlH/L3da5BXdMWhAr3zDOj0CZYijPl8=; b=h0TXZmXXaBczwYReIBNWWgKnIqNwXkqWuPwtEctXgew9IzBvhLC9okV5uVuMn35kDZz8SD Th5odxIr+/kILBnyYXCE7PmYzFL9g683XT52Oq7XEV96cqyWKH9EXMHiel/U9UsB2Q0Zts jgeqRf9gtBKL4U8YXVgFyzgRtKYJn4737AlHXGn3ASo4r075O8533rR9Wu/QXRR3WZS7rq pjK5MsNFsVFGcWMOkQUY3zJP9B3rkBZWyGe/BVclq0n5o4Wu3Gh1RrdIhn5qeek1LYYi2e kZFH7Fr+j8vFgVuNqvNRRBO+mcm40phP1H78rAj378UmTRhZLZnHVe1HnRUAYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067648; a=rsa-sha256; cv=none; b=QPZkN5T6DRMCMXAFlUd/hDDZ3L8P5K4VcG0Q53jWP96HpLy0X+Bi+mG2jn+wlh0/upH4+V pPSwrI3ddMaCxSWJI8N1zsfWV5KwSPbi4FTcL9xwk4+ptVlOimOBhFklQabOLnt9bq2L1/ kvHG2bg1STEQLsrgymx8ypLkZmFFQ+Jw1xYpNSTCOylM/C38Fd+DIcSeOPUhMDWCr4QVhS pBm51DWpbHR/VwiMnH7LYw69fso93Ylw8uTQxwQKjSfTdPXX/ptjFmV/TAyAncB65y0wvT X8Yr+mcIpR8Io3kvRnbO0c9lYVk8v8pqB0ZSdY3Ln6yDNlq9QfpbBa5R7MbdEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067648; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V82B8Fa9kTb0NlH/L3da5BXdMWhAr3zDOj0CZYijPl8=; b=Ie3RG/Ai3nhl7MDDJiJXsTAprS+1dp5nQywOwcNiUI3T9kVcqPcRlvW50ltbw+pmWtSKpU VpDrOk0Jr1dOH83UaMk6U1sBVJUe+BBLCw78Ov9meh9DobzTVm+Erz6eir3cWWQUtztEzI ktasJ1pRCL1Wv65xNvRQ3y4jwLsJST8YMOrlw9GcMozoRsZHkqNbWuidePtMR+cEmBt0DT 7ayl5CXoosoGDrBGH/R3anaBzjA2R/ekzzzrslt/NnIN9Bw4PR7yoc+6jGcHJrlrlDUQNA x2hkRHQsYOFpFHlwRqkcssc5qJfgkofSTzisdVilYawtF0C9EIBou9ubB33Khw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ835BjzY5g; Tue, 7 May 2024 07:40: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 4477emuB095034; Tue, 7 May 2024 07:40:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477em6b095032; Tue, 7 May 2024 07:40:48 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:48 GMT Message-Id: <202405070740.4477em6b095032@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 6580f5c38dd5 - main - Remove gbde from the "userland" pseudo-target List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6580f5c38dd5b01aeeaed16b370f1a12423437f0 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=6580f5c38dd5b01aeeaed16b370f1a12423437f0 commit 6580f5c38dd5b01aeeaed16b370f1a12423437f0 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:35:14 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:35:14 +0000 Remove gbde from the "userland" pseudo-target --- targets/pseudo/userland/Makefile.depend | 1 - 1 file changed, 1 deletion(-) diff --git a/targets/pseudo/userland/Makefile.depend b/targets/pseudo/userland/Makefile.depend index b44d6f92414a..f6733e3228b4 100644 --- a/targets/pseudo/userland/Makefile.depend +++ b/targets/pseudo/userland/Makefile.depend @@ -68,7 +68,6 @@ DIRDEPS+= \ sbin/fsck_msdosfs \ sbin/fsdb \ sbin/fsirand \ - sbin/gbde \ sbin/geom/core \ sbin/ggate/ggatec \ sbin/ggate/ggated \ From nobody Tue May 7 07:40:50 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZC0Q8Kz5KG7H; Tue, 07 May 2024 07:40: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 4VYVZB52Gtz4MsS; Tue, 7 May 2024 07:40:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067650; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uzFuhZbImXHOeYGiMpvFQeFPTj2ujqdmLAaRdk/yjlA=; b=K52G+jxSonVhIlIp1Ewyr62ipxRO06EwGSRhpLGmT1eUrKjosh1tGVy5eb41GTS4DZ6ek4 ryVYkfRiC93OTQhoOWaFquOrTelggKgI+L8nNrFNXUTbQWgobJbH4jkO8bYw//q1oac8Lt c5dY13rRe/JAR9AWXy0lZt3z9i1W7W9yPxtenUsmT4exxKxH3TRWipZeU9LxboLNQT7j8J g9VJ5FyRCSoXC4d7w+O249pHaovKkMnK9O6ZThfRNynxbIkYULqF/16p69tTDIUlF9LiUo /jMWn1XR9PxQXwR2BBcq26eoCaUNnWfMOkZtu4ES4mS+fmT8UnRqqYqx6WT7Ow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067650; a=rsa-sha256; cv=none; b=IsEGyymkEQ8C7Pq3RSm2+JnDiwI8vNDP5oBJzNd9HVbGSSRUEWp8+US080R01b6/qr0QNZ cvHC4fkBr9ZMJ4YlEI0zBa5X0QeCB5T/QvF3WTFJJ0fL4SQm23HZOsgMwR7K1qjaQSQ5L6 Rkc1WOU79hZWMMHPccaHejk36jrm4ECRcVDBhn92vFVQD5eMx9GDNoULxvBzdp7gZz0SsY OnHo0GsMVx5Fj9ujfkoxjNq9+li+17xc+X0v8oPDXIeb8tOem4DyeL2hoWMgabekPUDwZX mkr0EGkerq8SZW/4eEqwN3BFg7O2lZAm5v18nShqD12QwLY7/FqgrFNnWloPFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067650; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uzFuhZbImXHOeYGiMpvFQeFPTj2ujqdmLAaRdk/yjlA=; b=K1rwAHmz90UHxKmexD3zhJN0mQGjxkMpwGjWh38FNvM6npxNTI/K5zSbupBzbRT05e4a/N lHlFtMMfg681MrLBL7afcGiYusuhrkiQRIgsZ2H9tIDNRNwpxeQXEa6TW8q3RWn3KuydLK TXyqK4w8OF9k3DmKGeFtyA0IFQ8fFjLy8Lo6mx76lUlpTgBX7croZgkhzYw3topOmbpvGO KiIhfd53v5S7OmNPWepm3Lsz3Q5I2PNlNRMmvHoBhmuZzgHR6+oE52MkrGppA+nnT8mfRL J+oiU5mQx0ZzHD/y8IE2HopWYhWlyAI/2vMEN3pNZeASUQ1+g2Ed0ZGFrUWb8Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZB4fh9zXrv; Tue, 7 May 2024 07:40: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 4477eoMZ095123; Tue, 7 May 2024 07:40:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477eoHi095120; Tue, 7 May 2024 07:40:50 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:50 GMT Message-Id: <202405070740.4477eoHi095120@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 69956de36f8c - main - Remove final cross-reference to GBDE List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 69956de36f8c3c1b6615cf8e4a7e7e6738162951 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=69956de36f8c3c1b6615cf8e4a7e7e6738162951 commit 69956de36f8c3c1b6615cf8e4a7e7e6738162951 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:40:20 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:40:20 +0000 Remove final cross-reference to GBDE --- sys/geom/notes | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/geom/notes b/sys/geom/notes index 016614f7dce6..d3924768359d 100644 --- a/sys/geom/notes +++ b/sys/geom/notes @@ -95,9 +95,9 @@ set an upper bound in this field. Geom_disk will inherit the upper bound set by the device driver. stripesize is the width of any natural request boundaries for the -device. This would be the width of a stripe on a raid-5 unit or -one zone in GBDE. The idea with this field is to hint to clustering -type code to not trivially overrun these boundaries. +device. This would be the optimal width of a stripe on a raid unit. +The idea with this field is to hint to clustering type code to not +trivially overrun these boundaries. stripeoffset is the amount of the first stripe which lies before the devices beginning. From nobody Tue May 7 07:40:49 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYVZB0DQxz5KGG7; Tue, 07 May 2024 07:40: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 4VYVZ949hqz4Mmw; Tue, 7 May 2024 07:40:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067649; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DgfJXHBhkjYBwvHkOI8EwfvS2rfPgV9xvAUrCIRHd0I=; b=HKboFMEIyg/X6RU7FN09hj+tjk+XCLMs/OdI3b2jMtOxKbgyabPOzsln5ZQCHiXRDBPP06 lII34Kibixj49QCY8EinrNuP8Az5f3LQoHwTBu4yAyDBjEXNhIO1pvXLM2fci7hoAWm4X6 hOq8PQzjHa4UfsYkSn9cO4i2ZNh6aNIrTQVA8YoIpBYEaiaLEM0D50qoCiT2cXkvdgci5H CBegKbb6DeO2eOXikVXF3S8frIOt6yfQx68iW3RS5Tp9RPZdftUM9PGdLXxuCdb274agtH j0pWQJv2y4f+itCXZtDVbCxTW/NnyIqdxcGo0eg9y+r9Y67xeuvTHCtef6H+sw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715067649; a=rsa-sha256; cv=none; b=UAtplErCXbIPx+YJpcIlbHPaXFc7MsbKf9+EymgZ3E6TXIdlri4QlVYOp2JVPwVWLFDxzS sg+3gYNWDgyv3W1sFEglcJSgQRH7ZbT/NMUd2IGnhyeP2qrYUzizrQolUu6sVS1GNuNDoo mtaI+UxDaOMucPjhzYUnKeG/E9p2eRXWPtDSeUvWZutgeOUWhqijcG0hLQh8dDBaHNo+RX 2n6NaL1bdnZCkVEcxRviHuIXSVft3f9q3De4vFhHwPDDHFBbMUbTlwKXtIY2UCRKCnNJ+i HeWVmu648VjebxZsWNgdgFV/dn3VCfoc/IdNHaSeMv4kmBN8ccsfoZxeFfb/CQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715067649; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DgfJXHBhkjYBwvHkOI8EwfvS2rfPgV9xvAUrCIRHd0I=; b=IcFz83jsOTOM9eN+wdGsgsWWIuxh2TEIIrrr9f0/lvlDjHKkWSgJVY8QLzTHj+j5QbGgOb awbmxgQZwdi1261pQ+jtc7+jaYiubztx6jIo/YxvgseJeXO4+q7RcopbLdEPYNYuJamUKs +N45i2CisXK3VJGkm5tvVCuf+65kcV4jq2P6kkNmEKF+i6SMrCQQDthUxkr7aS0+wzy74m GJ2ln74KlmSfF7h3THf4ifQC/kbzTkksTWmF/hghS6GxHdwxjHSI0pd3Pvj4RyEmZz/S8F fgyWABlMiG/gUrkzz7+kbv38+P1PKHraYbd73+tEUOqbsUcSs+c3FZAW6FeKEA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYVZ93gZHzXrt; Tue, 7 May 2024 07:40: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 4477enx9095081; Tue, 7 May 2024 07:40:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4477enBw095078; Tue, 7 May 2024 07:40:49 GMT (envelope-from git) Date: Tue, 7 May 2024 07:40:49 GMT Message-Id: <202405070740.4477enBw095078@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 66bee50af774 - main - Remove cross-references to GBDE List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66bee50af774673bfaeb4c66a5a82e0ac99e70a4 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=66bee50af774673bfaeb4c66a5a82e0ac99e70a4 commit 66bee50af774673bfaeb4c66a5a82e0ac99e70a4 Author: Poul-Henning Kamp AuthorDate: 2024-05-07 07:35:33 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 07:35:33 +0000 Remove cross-references to GBDE --- lib/geom/eli/geli.8 | 2 -- lib/geom/shsec/gshsec.8 | 1 - libexec/rc/rc.d/geli | 1 - sbin/ggate/ggatel/ggatel.8 | 18 ------------------ share/man/man4/disk.4 | 2 -- sys/sys/bufobj.h | 2 +- sys/sys/disk.h | 2 +- 7 files changed, 2 insertions(+), 26 deletions(-) diff --git a/lib/geom/eli/geli.8 b/lib/geom/eli/geli.8 index 098ba4d0485e..d34e15dc4ad8 100644 --- a/lib/geom/eli/geli.8 +++ b/lib/geom/eli/geli.8 @@ -1242,10 +1242,8 @@ after the first time a provider is attached and before it is initialized in this way. .Sh SEE ALSO .Xr crypto 4 , -.Xr gbde 4 , .Xr geom 4 , .Xr loader.conf 5 , -.Xr gbde 8 , .Xr geom 8 , .Xr crypto 9 .Sh HISTORY diff --git a/lib/geom/shsec/gshsec.8 b/lib/geom/shsec/gshsec.8 index 9430fde13c52..d4477de3a71e 100644 --- a/lib/geom/shsec/gshsec.8 +++ b/lib/geom/shsec/gshsec.8 @@ -116,7 +116,6 @@ detected and connected, making the secret available via the device. .Sh SEE ALSO .Xr geom 4 , -.Xr gbde 8 , .Xr geom 8 , .Xr newfs 8 .Sh HISTORY diff --git a/libexec/rc/rc.d/geli b/libexec/rc/rc.d/geli index 312d76a361ad..16d24efd1e39 100755 --- a/libexec/rc/rc.d/geli +++ b/libexec/rc/rc.d/geli @@ -44,7 +44,6 @@ geli_start() if [ -z "${geli_tries}" ]; then if [ -n "${geli_attach_attempts}" ]; then - # Compatibility with rc.d/gbde. geli_tries=${geli_attach_attempts} else geli_tries=`${SYSCTL_N} kern.geom.eli.tries` diff --git a/sbin/ggate/ggatel/ggatel.8 b/sbin/ggate/ggatel/ggatel.8 index 1ac41ed9eaa7..816a5b9a6e0e 100644 --- a/sbin/ggate/ggatel/ggatel.8 +++ b/sbin/ggate/ggatel/ggatel.8 @@ -125,27 +125,9 @@ To get details about the failure, should be called with the .Fl v option. -.Sh EXAMPLES -.Dq GEOMify -the -.Dq Li fd0 -device and use -.Xr gbde 8 -to encrypt data on a floppy disk. -.Bd -literal -offset indent -ggatel create -u 5 /dev/fd0 -gbde init /dev/ggate5 -gbde attach ggate5 -newfs /dev/ggate5.bde -mount /dev/ggate5.bde /secret -cp /private/foo /secret/ -umount /secret -gbde detach ggate5 -ggatel destroy -u 5 .Ed .Sh SEE ALSO .Xr geom 4 , -.Xr gbde 8 , .Xr ggatec 8 , .Xr ggated 8 , .Xr mount 8 , diff --git a/share/man/man4/disk.4 b/share/man/man4/disk.4 index 6451ff0e7370..a6316d3fd268 100644 --- a/share/man/man4/disk.4 +++ b/share/man/man4/disk.4 @@ -111,8 +111,6 @@ the case for multipathing for example, GEOM classes that consume a single provider and provide single provider, like .Xr geli 8 , -and -.Xr gbde 8 , the identifier should be formed by attaching that provider's class name to the ident of the underlying provider, .It diff --git a/sys/sys/bufobj.h b/sys/sys/bufobj.h index d70327e31a37..a6a9c5c2bf01 100644 --- a/sys/sys/bufobj.h +++ b/sys/sys/bufobj.h @@ -33,7 +33,7 @@ * cache. * * This used to be vnodes, but we need non-vnode code to be able - * to use the buffer cache as well, specifically geom classes like gbde, + * to use the buffer cache as well, specifically geom classes like * raid3 and raid5. * * All vnodes will contain a bufobj initially, but down the road we may diff --git a/sys/sys/disk.h b/sys/sys/disk.h index 73ae5ce5756e..b8e29cef1de5 100644 --- a/sys/sys/disk.h +++ b/sys/sys/disk.h @@ -78,7 +78,7 @@ void disk_err(struct bio *bp, const char *what, int blkdone, int nl); * only if they point at exactly the same physical storage, this is * the case for multipathing for example, * - GEOM classes that consumes single providers and provide single - * providers, like geli, gbde, should just attach class name to the + * providers, like geli, should just attach class name to the * ident of the underlying provider, * - ident is an ASCII string (is printable), * - ident is optional and applications can't relay on its presence. From nobody Tue May 7 09:25:56 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYXvT1gB9z5KRFr; Tue, 07 May 2024 09:25: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 4VYXvT14qPz4gHx; Tue, 7 May 2024 09:25:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715073957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OMWzmidoacHWer+MOpp+qBZ2ejdti3pNhcZpo/QM6+0=; b=G5WBTZD1YlcREWqrL6aOp56623wrwuKOsIf9k654BUDhbUyAH/gxGQUZoLZuwFDZMq1NV+ DedFbR0j3Kaa8EomA30qd2VeYIDH6J2iCVnlcDd1J1AeCJ7QZWEIBCDEeXw4XlHMg/S8b3 k5c7S/5Cz7hbeIVL7H8Tz0DGnF/zBGzEuaJpSu//UIbpGTKl1i8iCuF3kuoMdo8p19nyOC K+EkZdlw+nA48HxNW7v8w/eY3toiKootVGJ+BidQpPQm+q7RYioSnwJiHsyDsjK2NTsk4T yzHnckGmJ6nvYF13KNmOc0GNPfM/MnDeQHApfA0UwD4QQy6Jq74SPgYSY1Yqkw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715073957; a=rsa-sha256; cv=none; b=yApYvepeeBxZc4kpEcrl+x4xincdCx9Xu0B62DoHnKkZzlNSo0WVzTtuXWaxblKWJMMITx YhpSTN4Aj/7UYX2lk2NCbffuWX7ezqTWfV6KxY/waQI8QhhO+0iFO2LA5KSBHrEk9SBZjY 5o1RMdzjmKY1/bdmwb2DHXuNBbr3AnBVCs0g4v4K9jtpA4DaimY7wjfPRhzjhpGbMwPNfm fJqAsT/LWmQY2oWf2dH9BhupabT5yYAwKBfLBMbbFByRH0u6PDF7KNDRYR0afT/G6DJnyt h3F4R1Fq1k8T4FOOBDaBsyZKEfz+S4jwIqEjpO+AXfZAMJJXR7WFmUsuAWZ8LA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715073957; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OMWzmidoacHWer+MOpp+qBZ2ejdti3pNhcZpo/QM6+0=; b=oVjPjjAV0oXJBu7Q+/OVMbtpp8E9Z/ASEA5Kj42Mg4yXcz3dSD9FD/5OLoPXeCG8jONZDI j/lNDpcjQCostS1FCsPJdFlFQXtXxvVUH79GBsqNze+RcH6fVMEamYg0Gyr5/a4g181uVC 1oZwr5ijA/ze9n7+LmcFECY2cPRY+K0YyIx7wiOxriWZi0b0Qm0NlnpmeNIV+AYbfMwOs2 3psZ67gwA/maeLmuGitNkMwldL+70yhKt9XpkVUWQHGRDa4/4P+0Z77/79Szt+MkAu1vE5 yjG933sv0s3JoAu3ficEv99NbAmJC6CjLPgVHqu7Sfv/2bPTtfI8jd6Lhb1bXA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYXvT0RWBzbwf; Tue, 7 May 2024 09:25: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 4479PuhV072549; Tue, 7 May 2024 09:25:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4479Pu7d072546; Tue, 7 May 2024 09:25:56 GMT (envelope-from git) Date: Tue, 7 May 2024 09:25:56 GMT Message-Id: <202405070925.4479Pu7d072546@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: d3831ca8e371 - main - Remove lingering geom_bde references. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d3831ca8e371637536cfb91bb0234d6cbf97da6e Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=d3831ca8e371637536cfb91bb0234d6cbf97da6e commit d3831ca8e371637536cfb91bb0234d6cbf97da6e Author: Poul-Henning Kamp AuthorDate: 2024-05-07 09:25:23 +0000 Commit: Poul-Henning Kamp CommitDate: 2024-05-07 09:25:23 +0000 Remove lingering geom_bde references. --- sys/conf/files | 12 ++++-------- sys/modules/geom/geom_bde/Makefile | 10 ---------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/sys/conf/files b/sys/conf/files index 4d7f28ceaaf1..4858b5868994 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -703,15 +703,15 @@ crypto/openssl/ossl_sha1.c optional ossl crypto/openssl/ossl_sha256.c optional ossl crypto/openssl/ossl_sha512.c optional ossl crypto/rc4/rc4.c optional netgraph_mppc_encryption -crypto/rijndael/rijndael-alg-fst.c optional crypto | ekcd | geom_bde | \ +crypto/rijndael/rijndael-alg-fst.c optional crypto | ekcd | \ !random_loadable | wlan_ccmp -crypto/rijndael/rijndael-api-fst.c optional ekcd | geom_bde | !random_loadable +crypto/rijndael/rijndael-api-fst.c optional ekcd | !random_loadable crypto/rijndael/rijndael-api.c optional crypto | wlan_ccmp crypto/sha1.c optional carp | crypto | ether | \ netgraph_mppc_encryption | sctp -crypto/sha2/sha256c.c optional crypto | ekcd | geom_bde | \ +crypto/sha2/sha256c.c optional crypto | ekcd | \ !random_loadable | sctp | zfs -crypto/sha2/sha512c.c optional crypto | geom_bde | zfs +crypto/sha2/sha512c.c optional crypto | zfs crypto/skein/skein.c optional crypto | zfs crypto/skein/skein_block.c optional crypto | zfs crypto/siphash/siphash.c optional inet | inet6 | wg @@ -3630,10 +3630,6 @@ gdb/gdb_cons.c optional gdb gdb/gdb_main.c optional gdb gdb/gdb_packet.c optional gdb gdb/netgdb.c optional ddb debugnet gdb netgdb inet -geom/bde/g_bde.c optional geom_bde -geom/bde/g_bde_crypt.c optional geom_bde -geom/bde/g_bde_lock.c optional geom_bde -geom/bde/g_bde_work.c optional geom_bde geom/cache/g_cache.c optional geom_cache geom/concat/g_concat.c optional geom_concat geom/eli/g_eli.c optional geom_eli diff --git a/sys/modules/geom/geom_bde/Makefile b/sys/modules/geom/geom_bde/Makefile deleted file mode 100644 index 808775a79743..000000000000 --- a/sys/modules/geom/geom_bde/Makefile +++ /dev/null @@ -1,10 +0,0 @@ - -.PATH: ${SRCTOP}/sys/geom/bde -.PATH: ${SRCTOP}/sys/crypto/rijndael -.PATH: ${SRCTOP}/sys/crypto/sha2 - -KMOD= geom_bde -SRCS= g_bde.c g_bde_crypt.c g_bde_lock.c g_bde_work.c -SRCS+= rijndael-alg-fst.c rijndael-api-fst.c sha256c.c sha512c.c - -.include From nobody Tue May 7 13:10:06 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYdt66bW9z5Kndf; Tue, 07 May 2024 13:10:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VYdt666MCz44rf; Tue, 7 May 2024 13:10:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715087406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gOqty6BScfnqBKDiinBzWsgQyWrnNOSuh9KNLy2krfc=; b=L3V15C+3RiFD93FoJ/dY5Bi5a1MwWzEUopZ5VVZWwS+vw9dzlLnaewF0PlIBUxqGrW+MOe CO8kzbWQWNdax5Rniwauf8ZWmqR2e1xQ/iN/zxVHw0cTIjdVXXgllmy5YfECkAlMbZr7ci duvE9v3XN0xHZaAacVLA7fbY2pd4ZBr+AIUPrkwEMnnuc09CmKx3ugdaRcJpSXGcvvQTmp fNkah3XeSGZEszaGKPnhxdP2/myw6jdLum9ll9+EYuPjJ9PlJGucUZS8OmFlSmgWH91UC1 hbWi0zMyNiteCR4oTjd8Ptq0AXzADHF54H++L5BJNHF8lznHbtqiADIdi3w2rQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715087406; a=rsa-sha256; cv=none; b=xVuyWxZMKjJyZON14ulyo5IdBOhHwLx19637hguf5jh/AMd8j2FUsvizcgcUDDyUEKESJM P1VXJNsG9iDbGDES8f6gvCyYtuFA9DvFMbP3biCt4m/+eC4KYmk9oz4+EBsQFymop+tHe7 HUtki7VHU7/eIzn9bKXOpZvbVSlf42UbbTCyH4NyDV9DackWJlFpgkn6Et/ZJaCTFw+HRs x+ttOzg2JsCZ2szLSEVAcngRvInemX5LmPZBWEk5jcwdxToRSwcTiQz8UnLPsu6uXyksxb jCsqd3XdlV5GVCVIeHHzMTixhh9mTRRMGS/8UAIzrGJfNjUVZ8Bhtk0vTh4aUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715087406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gOqty6BScfnqBKDiinBzWsgQyWrnNOSuh9KNLy2krfc=; b=fbQTBUePIy3CucIxgh9JqBXmdH9PT+qZq3tuQXq5P0gI2hyhSt0ssRxcxkbAPbSoNF4GQU m4Ks6CDBc0OT29aEs097h8VmXUF8e7qs2fp1P6M7vzWCrBYtbnSUH0YA9zI3z7U66Hn1LN fH/NxkqDvrPoJDO1Fr+5XbBRMNB3kqoNiFaYyvlwW9jilDKEleDa+d77BhliLWY7486sM/ hwMmOJ1KZMwFp3x8/f5OPyQN5/zkvRjXfvYvvZIHfEgT1Na3WVRqpABkd8SNdoEmJhdsj9 C4suqu9B43SDCnMw/04ofByaM9c0JGFseH+Cbp20h5lON7Dj8fDOs0iwq8l47g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYdt65XH2zjd4; Tue, 7 May 2024 13:10:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 447DA6HP047922; Tue, 7 May 2024 13:10:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447DA6qH047918; Tue, 7 May 2024 13:10:06 GMT (envelope-from git) Date: Tue, 7 May 2024 13:10:06 GMT Message-Id: <202405071310.447DA6qH047918@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: d84fd89ecd40 - main - dlopen(3): mention fdlopen for capsicum(4) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d84fd89ecd404ffbf629381d2dde14fd79b39402 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=d84fd89ecd404ffbf629381d2dde14fd79b39402 commit d84fd89ecd404ffbf629381d2dde14fd79b39402 Author: Ed Maste AuthorDate: 2024-05-07 01:45:50 +0000 Commit: Ed Maste CommitDate: 2024-05-07 13:09:59 +0000 dlopen(3): mention fdlopen for capsicum(4) Capsicum-sandboxed applications generally cannot use dlopen, as absolute and cwd-relative paths cannot be accessed. Mention that fdlopen is useful for sandboxed applications. PR: 277169 Reviewed by: markj, oshogbo Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45108 --- lib/libc/gen/dlopen.3 | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/libc/gen/dlopen.3 b/lib/libc/gen/dlopen.3 index 9871029a84b5..340545114114 100644 --- a/lib/libc/gen/dlopen.3 +++ b/lib/libc/gen/dlopen.3 @@ -29,7 +29,7 @@ .\" .\" Copyright (c) 1991 Sun Microsystems, Inc. .\" -.Dd May 14, 2020 +.Dd May 7, 2024 .Dt DLOPEN 3 .Os .Sh NAME @@ -199,6 +199,10 @@ The function can be used by the code that needs to perform additional checks on the loaded objects, to prevent races with symlinking or renames. +Applications sandboxed using +.Xr capsicum 4 +can also make beneficial use of +.Fn fdlopen . .Pp The .Fn dlsym From nobody Tue May 7 14:54:25 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYhBT3BQpz5J0Tq; Tue, 07 May 2024 14:54: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 4VYhBT2KTfz4GpK; Tue, 7 May 2024 14:54:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715093665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ppDyV7rzdWQFI1fZ0r7Hcplsc5QmQ+EHBqJ1/wSoXdc=; b=xLwCi6tpDliUjGnuJM8zFp0elkNz8g2GAmLu2AlZSz5iSt2s8/vcmI/bszoOLK5L35p2Mf zxjTDc/xfHW2ZXEVgBEs9QBggaATUK3i0ua1YO01HBnNnpbnpxjPkMfsJA0jHDcMtrihYv EHCW+XsoaXiH/Usvf6+sq51myLpVLDVprvqkbURRQKy2iZysnQ2jUZa+dfqfzUHzt/Ueq/ VMAOngqFSZTUbqDlsp0CNYaWuk3F9awHH0Qt7vF6PTw77nCROidJNmo3yMrItR7xpmnYzl HtIGYqEjIqkp12wRql4N9KQe61zBspzuIqSgSuuX3ccXEsJzXjsyr/EBY9kKEg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715093665; a=rsa-sha256; cv=none; b=fe6Vl8CEZ1DDLpe9xz7tyW4LqXFuBRnbGD4i2EE71l8XmZM4O/z+aehJ94hKhgNx0js1b0 ucLmZUgAVRguqtn0X/UG1+f/9j+C18DDL5TNI9D56LTKmDm8MvYqz+2Vs4lpCGvdOLCyBc zwxYePnzl7sxADTuRXwuNoSodLrveQxhpBwslSb8Oapm2B34OrzNUycJh3K6Oz5bL0xmWT 46ZeRvEDJwaO/qb818j6PGexgepkreKkh2H9esh3aE0hZYU3vjfVhwDyn9+zTld7kp7QDQ KAYnqB/W7DH+mpRnEg2zhkxksyHbex05X85UTAoEQgZxy3P+gvf+CkuC5RqGkw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715093665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ppDyV7rzdWQFI1fZ0r7Hcplsc5QmQ+EHBqJ1/wSoXdc=; b=kQoCXylCB5aZICtOYpxEfFnZE/7cepolRJEhGaGQijRC8NkDfqPTcK64crc3u9XZ7QyZyD bayHVLH+oULEhPnsFmipiO+QRgKNLs8RSxo0EuhUYpRrqA3LEYoo6NDUN8wnaIS/z18v2G C8b2/0kctC+raIHE8deaPofz3cmNlb5kDjhdGCMfIeO65jIM/X9LsaRKyDrYuaOHAU+ziL vGKR3ojzKzoutUdd10U7LlVPX53R9GMcsAPRP3B298Uo/8BUz6YKKDIyBMGI2Rt5tIXl35 rjltlb6dmrWq+K/NNDE1MfdKtaJNuAHkKEFzuJSByIFWc//QY1pS60+G8YlPdA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYhBT1xVNzlqv; Tue, 7 May 2024 14:54: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 447EsPP4029893; Tue, 7 May 2024 14:54:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447EsPVr029890; Tue, 7 May 2024 14:54:25 GMT (envelope-from git) Date: Tue, 7 May 2024 14:54:25 GMT Message-Id: <202405071454.447EsPVr029890@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 75e5f5916e0e - main - boot1.efi: Don't redundantly include devpath.c List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 75e5f5916e0eb01f573c1dfcb4625b16eec30124 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=75e5f5916e0eb01f573c1dfcb4625b16eec30124 commit 75e5f5916e0eb01f573c1dfcb4625b16eec30124 Author: Warner Losh AuthorDate: 2024-05-07 02:06:54 +0000 Commit: Warner Losh CommitDate: 2024-05-07 14:53:50 +0000 boot1.efi: Don't redundantly include devpath.c devpath.c is on both the comand line and in libefi. This is redundant and was a mistake in 4cf36aa1017f9. It never should have been here. In practice, this just means that the devpath.o from libefi.a goes unused. This will cause problems with some upcoming changes (D44872) to enable LTO to reduce the size of the binaries, so go ahead and make the change now to reduce the changeset for that. No functional change indended. Fixes: 4cf36aa1017f9 Co-authored-by: sobomax Sponsored by: Netflix --- stand/efi/boot1/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/stand/efi/boot1/Makefile b/stand/efi/boot1/Makefile index fd5069004dff..fb1c7d74eec1 100644 --- a/stand/efi/boot1/Makefile +++ b/stand/efi/boot1/Makefile @@ -29,7 +29,7 @@ CWARNFLAGS.zfs_module.c += -Wno-unused-parameter CWARNFLAGS.zfs_module.c += -Wno-unused-function # architecture-specific loader code -SRCS+= boot1.c proto.c self_reloc.c start.S ufs_module.c devpath.c +SRCS+= boot1.c proto.c self_reloc.c start.S ufs_module.c .if ${MK_LOADER_ZFS} != "no" SRCS+= zfs_module.c CFLAGS.zfs_module.c+= -I${ZFSSRC} @@ -58,7 +58,6 @@ CFLAGS+= -DEFI_DEBUG .PATH: ${EFISRC}/loader/arch/${MACHINE} .PATH: ${EFISRC}/loader .PATH: ${LDRSRC} -.PATH: ${EFISRC}/libefi CFLAGS+= -I${LDRSRC} FILES= ${BOOT1}.efi From nobody Tue May 7 15:12:49 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYhbj23j4z5J1hW; Tue, 07 May 2024 15:12: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 4VYhbj1GMnz4JPv; Tue, 7 May 2024 15:12:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715094769; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LfD06IsD9WstvjDjlPbL2Tw8OCQTV8elW7rZ6EraNtI=; b=ByelabPx2lRkpbHsiLFSgGIRZuuQFQtB4Zi+drtcstcAWrCBtPTfRafe0RSwmhjvDQzjJc 4CH6kF7oHY6SGmFB2LeX/pLgQ50qjcHMW8//nV2fPzqbMrwE6uRF/vc6lfxpW4wAJtgZhn mUIBL8w41jr15StfYNbXoEE+Tc/xVb6FnI1ox9Znu6oEHeXwVCaN7B7t5y27iF/5xA1CON TRo/BlbFFfGfx05yGC16MWtLiJnNNp8FN4y8v1qBYKU+L0VS0Wd+gFI5iD0j8BXV/WgruT gISnYo0safjpvx9iRmD7JNFbtWJgUJ1OwLLZpY8PHucTu7VsnNs+YinkuYlSZQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715094769; a=rsa-sha256; cv=none; b=ewtm9f4zCUmkiOBLYj02DXCRayMNOffcjtc3vv/V29ADi18Ix2UT9v1eFZVYaa5+IzDhLc 0+KOs18P/sd/21sE3Da/sUYgtIFTcFECrYbayHJHn3sMrkghzrDxrccVJDkf6dS3PtVrrj j7PzVeQ7xRx+CCFDeY+hwTrc2zmbL8ic5Rjox1QbWIats5gtbvY4dmziVdIXZqTRtK9hcr qAQzyoZhgglr3a9hbXmacD3sdj/2M7To6kH1JvaK8IwabQdMwqW4Pa12LwxploaMvnxbYu 4pU5TsZVcH1zjDQb5+76xP/Aa3hadpaGY8e1omgoGkiNqFPYc8E34CT+jIiS0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715094769; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LfD06IsD9WstvjDjlPbL2Tw8OCQTV8elW7rZ6EraNtI=; b=luisd2FhgJBAYjcbVKLkYcwE6Gwaek7G30biMiUjAx3OdNaEKkhcAJuVE1Cwqgs4xVVl0w PKxSUcePetOvUAV4dnsNtWia+NTT2Z+fxE4axT4CRHfa6el1PCeaGdqhvyaZeam1j27XX/ eCr+1ICIlLligmXDcNS3psN97NUvAkT3fdHC+74toeeAqbv2MOsXwrrtz2eIpaPn5yvZS/ WPh9PKChRJ6WQHq6lkIR6LDEPmGEWM4hA4m9L8TkVp02RRiwijQKB+iWydqrOWkJcSOOfe aDASu3HEuYwUAoxZs+BG/zrFPDi3FSxDD5A8t5rNMDLG1vNJV1ibY5SzqZUN1g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYhbj0sxGzmkL; Tue, 7 May 2024 15:12: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 447FCnxD063717; Tue, 7 May 2024 15:12:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447FCnCL063714; Tue, 7 May 2024 15:12:49 GMT (envelope-from git) Date: Tue, 7 May 2024 15:12:49 GMT Message-Id: <202405071512.447FCnCL063714@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marko Zec Subject: git: ed541e201a05 - main - fib_dxr: move the bulko of malloc() failure logging into dxr_build() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zec X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ed541e201a05d1cea2f87e53289cbd7fd240b486 Auto-Submitted: auto-generated The branch main has been updated by zec: URL: https://cgit.FreeBSD.org/src/commit/?id=ed541e201a05d1cea2f87e53289cbd7fd240b486 commit ed541e201a05d1cea2f87e53289cbd7fd240b486 Author: Marko Zec AuthorDate: 2024-05-07 15:11:30 +0000 Commit: Marko Zec CommitDate: 2024-05-07 15:11:30 +0000 fib_dxr: move the bulko of malloc() failure logging into dxr_build() --- sys/netinet/in_fib_dxr.c | 77 +++++++++++++++++++----------------------------- 1 file changed, 30 insertions(+), 47 deletions(-) diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index 3015564953c6..3b2dc837d50b 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -497,8 +497,11 @@ chunk_ref(struct dxr_aux *da, uint32_t chunk) da->range_tbl = realloc(da->range_tbl, sizeof(*da->range_tbl) * da->rtbl_size + FRAGS_PREF_SHORT, M_DXRAUX, M_NOWAIT); - if (da->range_tbl == NULL) + if (da->range_tbl == NULL) { + FIB_PRINTF(LOG_NOTICE, da->fd, + "Unable to allocate DXR range table"); return (1); + } } return (0); @@ -632,8 +635,11 @@ trie_ref(struct dxr_aux *da, uint32_t index) da->xtbl_size += XTBL_SIZE_INCR; da->x_tbl = realloc(da->x_tbl, sizeof(*da->x_tbl) * da->xtbl_size, M_DXRAUX, M_NOWAIT); - if (da->x_tbl == NULL) + if (da->x_tbl == NULL) { + FIB_PRINTF(LOG_NOTICE, da->fd, + "Unable to allocate DXR extension table"); return (-1); + } } return(tp->td_index); } @@ -873,8 +879,11 @@ dxr_build(struct dxr *dxr) if (da == NULL) { da = malloc(sizeof(*dxr->aux), M_DXRAUX, M_NOWAIT); - if (da == NULL) + if (da == NULL) { + FIB_PRINTF(LOG_NOTICE, dxr->fd, + "Unable to allocate DXR aux struct"); return; + } dxr->aux = da; da->fibnum = dxr->fibnum; da->refcnt = 1; @@ -894,16 +903,22 @@ dxr_build(struct dxr *dxr) if (da->range_tbl == NULL) { da->range_tbl = malloc(sizeof(*da->range_tbl) * da->rtbl_size + FRAGS_PREF_SHORT, M_DXRAUX, M_NOWAIT); - if (da->range_tbl == NULL) + if (da->range_tbl == NULL) { + FIB_PRINTF(LOG_NOTICE, da->fd, + "Unable to allocate DXR range table"); return; + } range_rebuild = 1; } #ifdef DXR2 if (da->x_tbl == NULL) { da->x_tbl = malloc(sizeof(*da->x_tbl) * da->xtbl_size, M_DXRAUX, M_NOWAIT); - if (da->x_tbl == NULL) + if (da->x_tbl == NULL) { + FIB_PRINTF(LOG_NOTICE, da->fd, + "Unable to allocate DXR extension table"); return; + } trie_rebuild = 1; } #endif @@ -1039,8 +1054,11 @@ dxr2_try_squeeze: #endif dxr->d = malloc(dxr_tot_size, M_DXRLPM, M_NOWAIT); - if (dxr->d == NULL) + if (dxr->d == NULL) { + FIB_PRINTF(LOG_NOTICE, da->fd, + "Unable to allocate DXR lookup table"); return; + } #ifdef DXR2 memcpy(dxr->d, da->d_tbl, d_size); dxr->x = ((char *) dxr->d) + d_size; @@ -1119,7 +1137,8 @@ dxr_init(uint32_t fibnum, struct fib_data *fd, void *old_data, void **data) dxr = malloc(sizeof(*dxr), M_DXRAUX, M_NOWAIT); if (dxr == NULL) { - FIB_PRINTF(LOG_NOTICE, fd, "Unable to allocate DXR struct"); + FIB_PRINTF(LOG_NOTICE, fd, + "Unable to allocate DXR container struct"); return (FLM_REBUILD); } @@ -1212,41 +1231,11 @@ dxr_dump_end(void *data, struct fib_dp *dp) dxr_build(dxr); da = dxr->aux; - if (da == NULL) { - /* malloc(, M_DXRAUX, M_NOWAIT) failed, retry later */ - FIB_PRINTF(LOG_NOTICE, dxr->fd, - "Unable to allocate DXR aux struct"); + if (da == NULL || dxr->d == NULL) return (FLM_REBUILD); - } - if (da->range_tbl == NULL) { - /* malloc(, M_DXRAUX, M_NOWAIT) failed, retry later */ - FIB_PRINTF(LOG_NOTICE, dxr->fd, - "Unable to allocate DXR range table"); - return (FLM_REBUILD); - } - -#ifdef DXR2 - if (da->x_tbl == NULL) { - /* malloc(, M_DXRAUX, M_NOWAIT) failed, retry later */ - FIB_PRINTF(LOG_NOTICE, dxr->fd, - "Unable to allocate DXR extension table"); - return (FLM_REBUILD); - } -#endif - - if (da->rtbl_top >= BASE_MAX) { - /* Structural limit exceeded, hard error */ - FIB_PRINTF(LOG_ERR, dxr->fd, "DXR structural limit exceeded"); + if (da->rtbl_top >= BASE_MAX) return (FLM_ERROR); - } - - if (dxr->d == NULL) { - /* malloc(, M_DXRLPM, M_NOWAIT) failed, retry later */ - FIB_PRINTF(LOG_NOTICE, dxr->fd, - "Unable to allocate DXR lookup table"); - return (FLM_REBUILD); - } dp->f = choose_lookup_fn(da); dp->arg = dxr; @@ -1334,18 +1323,11 @@ dxr_change_rib_batch(struct rib_head *rnh, struct fib_change_queue *q, dxr_build(new_dxr); /* Structural limit exceeded, hard error */ - if (da->rtbl_top >= BASE_MAX) { - /* Structural limit exceeded, hard error */ - dxr_destroy(new_dxr); - FIB_PRINTF(LOG_ERR, dxr->fd, "DXR structural limit exceeded"); + if (da->rtbl_top >= BASE_MAX) return (FLM_ERROR); - } if (new_dxr->d == NULL) { - /* malloc(, M_DXRLPM, M_NOWAIT) failed, retry later */ dxr_destroy(new_dxr); - FIB_PRINTF(LOG_NOTICE, dxr->fd, - "Unable to allocate DXR lookup table"); return (FLM_REBUILD); } @@ -1357,6 +1339,7 @@ dxr_change_rib_batch(struct rib_head *rnh, struct fib_change_queue *q, return (FLM_SUCCESS); } + FIB_PRINTF(LOG_NOTICE, dxr->fd, "fib_set_datapath_ptr() failed"); dxr_destroy(new_dxr); return (FLM_REBUILD); } From nobody Tue May 7 15:26:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYhw334YLz5J3PR; Tue, 07 May 2024 15:26: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 4VYhw32Gfwz4Kgv; Tue, 7 May 2024 15:26:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715095619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=flJpnd8O1yOBP3FzikiMFIki2HYoUT/WazEpzbVO1Do=; b=q7M6K0zLBYXcfCB8ph6cwG1vUw2xXfAmOlImX4Qv7Z+V/Lx+JA7yc2ZjZD2w4DBAcwEhge aTiRoiyNRcAeSsAxnT/MIxlr8jhLRKfy62/ID5rHAg4zKbmEuZKM1Ff+WbSzgzwAirD3aV cweAdOvysaWn/ArrGrMnWgxxnIyuvUUpdPbd5sIW9ZSHPrg57W1DtJhLg0idAidqGeUQLl x8dBDj7UHztb6ZbjyLsRc5XizPNcZ6yJKoT3DSjq5wUR0LulbW/IVBTs53kXzGd5eMXCvF OtTJHVbi0NuBWJVusQH2e1L0cN1VRuMDz3Js6Fko1q0OXfg+kevAz1kvmiFyYA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715095619; a=rsa-sha256; cv=none; b=adLL/inopKYvMWjqIJ1QKjAvgze73yts5Ti+cGdgbiLTfaARbxukVKpYBnoiwUkBWCbik/ PBLj34Y2QO7mnfLj6ZMJH9XwXPMWEroLXdf6eJzc/H8NWem2B1v0NATNGZjj1EPgoFE+Ly cTH+vpc7Q020jiXhp0k51MZREAY0kNKhllVHFbIh7gIAJxdFooeDnaqHW56GyfGGH95mrp /d5I1FkbDZ2a8B2mgWMmvT24+WrxsrhpGHyUqZtqztOu85XpPh8XRLbbWsy/UUhxptq5wQ y0Hpag9szby8p1W+alKZDlTdO1ZLYFHwc7KSREGdm3B02Oy4T71HhImu7DdUJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715095619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=flJpnd8O1yOBP3FzikiMFIki2HYoUT/WazEpzbVO1Do=; b=uL69oJ+ARiedJM1rlxZZ9d1KQZsxgXAfrnhp9Mb82PsKJrsDZPvT2xlw4V8BTLejyNWJHg sxxr/Z7lmHijja34YXXdmxYDS8D0OCaKhxKRsEfztnGCN6MjxGRwqoFaZvmP00xqKAetrN eYzCAq/bTNwfInhsfjWNHkS4U6R8xQYW15rcW23RGqMKWn4P+qKeSZxp8oHIj9z2eq2IT7 yIpA7M5GScZE/qn0jwnHgFkeuo6xfjIBB7mAdsv/IGPC9gpTnQBJVyhJaDSSqn84L0uteX aUkbVMQUHuwf7C3rJ09vz1PJLmlreWcPZNA0EI2SuO4+Sr8tR8fAbTl6eb4Kpw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYhw31SqYzlwh; Tue, 7 May 2024 15:26: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 447FQxEQ081473; Tue, 7 May 2024 15:26:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447FQxjo081470; Tue, 7 May 2024 15:26:59 GMT (envelope-from git) Date: Tue, 7 May 2024 15:26:59 GMT Message-Id: <202405071526.447FQxjo081470@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marko Zec Subject: git: 7a5de1d4cc6a - main - fib_dxr: KASSERTs for chasing NULL ptr and runaway refcount suspects List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zec X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7a5de1d4cc6af84456cef03323f041652e84326b Auto-Submitted: auto-generated The branch main has been updated by zec: URL: https://cgit.FreeBSD.org/src/commit/?id=7a5de1d4cc6af84456cef03323f041652e84326b commit 7a5de1d4cc6af84456cef03323f041652e84326b Author: Marko Zec AuthorDate: 2024-05-07 15:22:00 +0000 Commit: Marko Zec CommitDate: 2024-05-07 15:22:00 +0000 fib_dxr: KASSERTs for chasing NULL ptr and runaway refcount suspects MFC after: 1 week --- sys/netinet/in_fib_dxr.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index 3b2dc837d50b..5c5311068169 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -1280,6 +1280,9 @@ dxr_change_rib_batch(struct rib_head *rnh, struct fib_change_queue *q, da = dxr->aux; KASSERT(da != NULL, ("%s: NULL dxr->aux", __FUNCTION__)); + KASSERT(da->fd != NULL, ("%s: da->fd %p", __FUNCTION__, da->fd)); + KASSERT(da->refcnt > 0, ("%s: da->refcnt %d", __FUNCTION__, + da->refcnt)); FIB_PRINTF(LOG_INFO, da->fd, "processing %d update(s)", q->count); for (ui = 0; ui < q->count; ui++) { From nobody Tue May 7 15:33:51 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYj3z3054z5J449; Tue, 07 May 2024 15:33: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 4VYj3z1fGYz4LD5; Tue, 7 May 2024 15:33:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715096031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mzzXMmIA2mtIKHYtB7/Bv18QxZqKe1Yg2qib4vM52ZQ=; b=mO8PHUcVuM8Jwc/iwDzmKNL4kcXKaYH1ms9q8DFuBx9mM0OGPB0OjRAJBbyGTM6/23sInP GwgimImnPSnH36KYVUUPVL7mYu3ySDybxCIJdzD7sYvus0kMtMRDSs2J2X8SD+tIRXUeTn Ju5ZgGkJ8OfAVvZmmCAEARrERVGe8DD4MmKX/YSL5Mi6KyO5TeOo2sdHushNImjvXIMd7E zJQ/QVggw8VBTaHrn1yjrhE88qmPyhOrqBpLeiqGPlpirWJtineIQqPnpJF2GzpceLEicd yH5Ky7MrBt2G6GVFbVvhpc8pk/OBGhFV3rA9aqQvynRkVKCmo6dqGLcxN/KcEg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715096031; a=rsa-sha256; cv=none; b=stBTrsDlUHFko0N6zwZc8Z4pONCKCtAsjycEg8Py1cKyHyj1lX8fx+3iok2bP4d3zsJZRf VOOHTwDzq/OosPZDzK0W6Dpn3jc2esDtaASlqxJDYZFZ1/tTPchugR+s2HuvlzwfRWb/8Z mRpEbOl9Ozv+rbzM1gNg0d0aDi5iWvTUP43iOizuc+XdXFtX8lZJNSP3/3I837TxxEH63U Z3juHuXP2QVnwIL/3lEtQ7XU8G0YIJAjr0dYJcyVhgU2rRvti4xU6B9fGcmrhJK2nz0goB XVX/mE0Kd0XvgYuoKJuBROXD9B23OOudMBwAQiHRUsaDMDyCbyhgOxr4syyDlg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715096031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mzzXMmIA2mtIKHYtB7/Bv18QxZqKe1Yg2qib4vM52ZQ=; b=kWC07Lo2jsqrCu6C3VoEVrCSDJvYSnSjcDKmRuW8nHioyPqf8xpPlUxntCrSgjYzraAgwB I/StCmWkit2JsvTbz3o02499gcekwekyiY10EA+ia0kP9TiW3vpqDhBeX3PckLEfG+IBjg ezI4v+s0wP84QsVCpJLrM+L+SUy2y6iBe/pFmTULGeYlaFwO4IlTcqxCVS0TmEIBQbQHqY ubjpShfHEET9hO12zs06NuR+juXXZze5BlvwtmdK88p/fOKRJDoYufCwZCtBnPpUFKuJYX nrlMwDiFiBceIkOXBwAbsJqmrd21A1uNRws434T38f2wF3J/d7auZQUp92Oasg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYj3z1CJ8zmbV; Tue, 7 May 2024 15:33: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 447FXpqp098050; Tue, 7 May 2024 15:33:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447FXpI0098047; Tue, 7 May 2024 15:33:51 GMT (envelope-from git) Date: Tue, 7 May 2024 15:33:51 GMT Message-Id: <202405071533.447FXpI0098047@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marko Zec Subject: git: 4aa275f12da4 - main - fib_dxr: s/KASSERT/MPASS/ List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zec X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4aa275f12da4ce22b8465fe7fe912bead1ceff9f Auto-Submitted: auto-generated The branch main has been updated by zec: URL: https://cgit.FreeBSD.org/src/commit/?id=4aa275f12da4ce22b8465fe7fe912bead1ceff9f commit 4aa275f12da4ce22b8465fe7fe912bead1ceff9f Author: Marko Zec AuthorDate: 2024-05-07 15:33:23 +0000 Commit: Marko Zec CommitDate: 2024-05-07 15:33:23 +0000 fib_dxr: s/KASSERT/MPASS/ MFC after: 1 week --- sys/netinet/in_fib_dxr.c | 33 +++++++++++++-------------------- 1 file changed, 13 insertions(+), 20 deletions(-) diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index 5c5311068169..91f3bafdb47d 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -474,8 +474,7 @@ chunk_ref(struct dxr_aux *da, uint32_t chunk) cdp->cd_max_size = size; cdp->cd_base = fdesc->base; LIST_INSERT_HEAD(&da->all_chunks, cdp, cd_all_le); - KASSERT(cdp->cd_base + cdp->cd_max_size == da->rtbl_top, - ("dxr: %s %d", __FUNCTION__, __LINE__)); + MPASS(cdp->cd_base + cdp->cd_max_size == da->rtbl_top); } cdp->cd_hash = hash; @@ -525,7 +524,7 @@ chunk_unref(struct dxr_aux *da, uint32_t chunk) sizeof(struct range_entry_long) * size) == 0) break; - KASSERT(cdp != NULL, ("dxr: dangling chunk")); + MPASS(cdp != NULL); if (--cdp->cd_refcnt > 0) return; @@ -536,8 +535,7 @@ chunk_unref(struct dxr_aux *da, uint32_t chunk) /* Attempt to merge with the preceding chunk, if empty */ cdp2 = LIST_NEXT(cdp, cd_all_le); if (cdp2 != NULL && cdp2->cd_cur_size == 0) { - KASSERT(cdp2->cd_base + cdp2->cd_max_size == cdp->cd_base, - ("dxr: %s %d", __FUNCTION__, __LINE__)); + MPASS(cdp2->cd_base + cdp2->cd_max_size == cdp->cd_base); LIST_REMOVE(cdp, cd_all_le); LIST_REMOVE(cdp2, cd_hash_le); cdp2->cd_max_size += cdp->cd_max_size; @@ -548,8 +546,7 @@ chunk_unref(struct dxr_aux *da, uint32_t chunk) /* Attempt to merge with the subsequent chunk, if empty */ cdp2 = LIST_PREV(cdp, &da->all_chunks, chunk_desc, cd_all_le); if (cdp2 != NULL && cdp2->cd_cur_size == 0) { - KASSERT(cdp->cd_base + cdp->cd_max_size == cdp2->cd_base, - ("dxr: %s %d", __FUNCTION__, __LINE__)); + MPASS(cdp->cd_base + cdp->cd_max_size == cdp2->cd_base); LIST_REMOVE(cdp, cd_all_le); LIST_REMOVE(cdp2, cd_hash_le); cdp2->cd_max_size += cdp->cd_max_size; @@ -560,8 +557,7 @@ chunk_unref(struct dxr_aux *da, uint32_t chunk) if (cdp->cd_base + cdp->cd_max_size == da->rtbl_top) { /* Free the chunk on the top of the range heap, trim the heap */ - KASSERT(cdp == LIST_FIRST(&da->all_chunks), - ("dxr: %s %d", __FUNCTION__, __LINE__)); + MPASS(cdp == LIST_FIRST(&da->all_chunks)); da->rtbl_top -= cdp->cd_max_size; da->unused_chunks_size -= cdp->cd_max_size; LIST_REMOVE(cdp, cd_all_le); @@ -875,7 +871,7 @@ dxr_build(struct dxr *dxr) uint32_t trie_frag; #endif - KASSERT(dxr->d == NULL, ("dxr: d not free")); + MPASS(dxr->d == NULL); if (da == NULL) { da = malloc(sizeof(*dxr->aux), M_DXRAUX, M_NOWAIT); @@ -1273,16 +1269,14 @@ dxr_change_rib_batch(struct rib_head *rnh, struct fib_change_queue *q, int update_delta = 0; #endif - KASSERT(data != NULL, ("%s: NULL data", __FUNCTION__)); - KASSERT(q != NULL, ("%s: NULL q", __FUNCTION__)); - KASSERT(q->count < q->size, ("%s: q->count %d q->size %d", - __FUNCTION__, q->count, q->size)); + MPASS(data != NULL); + MPASS(q != NULL); + MPASS(q->count < q->size); da = dxr->aux; - KASSERT(da != NULL, ("%s: NULL dxr->aux", __FUNCTION__)); - KASSERT(da->fd != NULL, ("%s: da->fd %p", __FUNCTION__, da->fd)); - KASSERT(da->refcnt > 0, ("%s: da->refcnt %d", __FUNCTION__, - da->refcnt)); + MPASS(da != NULL); + MPASS(da->fd != NULL); + MPASS(da->refcnt > 0); FIB_PRINTF(LOG_INFO, da->fd, "processing %d update(s)", q->count); for (ui = 0; ui < q->count; ui++) { @@ -1315,8 +1309,7 @@ dxr_change_rib_batch(struct rib_head *rnh, struct fib_change_queue *q, #ifdef INVARIANTS fib_get_rtable_info(fib_get_rh(da->fd), &rinfo); - KASSERT(da->prefixes + update_delta == rinfo.num_prefixes, - ("%s: update count mismatch", __FUNCTION__)); + MPASS(da->prefixes + update_delta == rinfo.num_prefixes); #endif res = dxr_init(0, dxr->fd, data, (void **) &new_dxr); From nobody Tue May 7 15:50:31 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjRC2h4hz5J5Z5; Tue, 07 May 2024 15:50: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 4VYjRC2DnMz4Nb8; Tue, 7 May 2024 15:50:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O7lrYqhtvWFuY6XT80L+Suvse2kQaUg+nqqcvW2WPVI=; b=urQXmr6i65DUxoew3c+68ZDcKF6tq953VkxmLEf4O1Ni8n8nZUxkp73PLm5sY/jzO5KGyt GyijU8kreLaba0xD2yenCoS2rqW2qv4mZMcIXG3bL2Gi27UECy0ypf3eicr5otpukZyItX k5ultRusRA1tthDNDN9+JzmzQyVM/4X92+oGJ3AzZ806LTqsZpW66tuuni4SgjopmDZMMK st7J789pa1W89KTIlcUim5f+XfmJliDKv2G2tP8wE8tQZN46EvhAm8XBA0eqY0dBmYd2Le JUdXOiIEMsxv+mfm0Gk+oSfU7LSUBKNwRY+D43Cp7ySP86NMkb2oMqUTHniL/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715097031; a=rsa-sha256; cv=none; b=WtOgsCFP/kzJXAISmREGtSMLWO7M0YmqLqlH5AeZ4qEbmr6vNHzKx3qDkVDzi3wxwShd1g gmIHU16v0QlssgrHP/ABimpd2S1Dfifi9stsw/jmuskjXI9XGPjJbmMtuSg4QKUJAIuEAe f88Ef7jcUtUYn1zj+n4No//PHVaM/B9oHSgPtLRUbW7fi0BWUOXKaU124sPkmf+V3/06Gf NNm+BR6NsNtNlOofvkVOYY9cDQC5Aa2296ZigYhawXuQt7Ww14dKVeBYPk+g2J1WoI1aQ0 vorkhqwTyjasKVDpKdZ3zVtNYFVkxjurwJidqEitAziPT8RW7OwUt+rUYNFRAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O7lrYqhtvWFuY6XT80L+Suvse2kQaUg+nqqcvW2WPVI=; b=wgiHhDJTLm58OWOqlA2M+doOtbeleqK8qctQO2bOw0SbAom/lA8cx7wLuG8CHkZzxiZD02 SlLZEFJi7HeCkroBMLMv1SKYi5yoUPp+CEm+DaAZ9py67ZdFrx2gqhobjTUy9AX7nsq4e1 XkePNxz/rEvZJ+6drnJb/E1uJZR+TEMnSiIMyr04InFRxV+Mz9pfdhfRUjR9vsy/VTusRd L/MOJ0Pepu/mTKEtkeN0EEgdbj/uNo0dvrxwWxpm7MK6hSgZq7haK3CPCk7D2Bre+8kMI2 7Uy9H8chBsb1M08imvvqqw75HawHjA0cH0forhbllzED2obyflMsUy2PVXmzoA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjRC1rmmzn43; Tue, 7 May 2024 15:50: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 447FoVPI024217; Tue, 7 May 2024 15:50:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447FoVgo024214; Tue, 7 May 2024 15:50:31 GMT (envelope-from git) Date: Tue, 7 May 2024 15:50:31 GMT Message-Id: <202405071550.447FoVgo024214@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Marko Zec Subject: git: b24e353f9e58 - main - fib_dxr: set fib_data field in struct dxr_aux early enough List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zec X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b24e353f9e58f6b5bcbd444a062c1c57cd8fc43d Auto-Submitted: auto-generated The branch main has been updated by zec: URL: https://cgit.FreeBSD.org/src/commit/?id=b24e353f9e58f6b5bcbd444a062c1c57cd8fc43d commit b24e353f9e58f6b5bcbd444a062c1c57cd8fc43d Author: Marko Zec AuthorDate: 2024-05-07 15:44:09 +0000 Commit: Marko Zec CommitDate: 2024-05-07 15:44:09 +0000 fib_dxr: set fib_data field in struct dxr_aux early enough Previously it was possible for dxr_build() to return with da->fd unset in case of range_tbl or x_tbl malloc() failures. This may have led to NULL ptr dereferencing in dxr_change_rib_batch(). MFC after: 1 week PR: 278422 --- sys/netinet/in_fib_dxr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index 91f3bafdb47d..82245ecf6e66 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -882,6 +882,7 @@ dxr_build(struct dxr *dxr) } dxr->aux = da; da->fibnum = dxr->fibnum; + da->fd = dxr->fd; da->refcnt = 1; LIST_INIT(&da->all_chunks); LIST_INIT(&da->all_trie); @@ -918,7 +919,6 @@ dxr_build(struct dxr *dxr) trie_rebuild = 1; } #endif - da->fd = dxr->fd; microuptime(&t0); From nobody Tue May 7 16:04:25 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjlG1fZgz5J7HK; Tue, 07 May 2024 16:04: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 4VYjlG12Pmz4QB2; Tue, 7 May 2024 16:04:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5V6K1pfnFrncLXrQCe+DPb6033j7EATeHnBR8DFmfrs=; b=OrMP/KNg9s9fgyu3B610H4Jihm0mbiMEPcw3YiY/5AsIEslf6XdHLhpv/FzLHokbriGSEI JvxxaLJQxORu5OF/eiAhsGlbGV7FO8qX6+ZlW97xMfrQ60FJnMqKNfQgpkXurvF7JqtaRY Ir7/anw4rriHzNKqw67SC/2M1F3na4atzLYdI8Gb4EHiJ15m+GtQGpoASllA/K8ItKiOSn 2ZbhAWqTVh74Abk/CLOkxTvQFAiepC4MlSeiahCbCY4W7zX256Qf2TisxDcilsGPMuOsD5 VduOsZzHAO695ks5TOXEh+McaoDX88yE1nYWUhNzJvzIsg3tnNEtOhRetBmubA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715097866; a=rsa-sha256; cv=none; b=VZDfSjcDPhBISHBUhzvfESURsEkcWqJz4JaDT9UjPAHEWCs72kebbOfhJyLTmI1du2NteD W/2ZG2nTTlg0JITintPVoHiIMhR2qqCM7AZMyEDlPZ424Ks3G4tebk17n7ApCZVChEDLMH eSBJhJRnPT2dz6SPPhyr2cuIX9tRT86zQALGlBkW9v1t8ro23YrbGHZSfVKPg/E/nKbcea WZBLBi7ni4bXh10A5c4ea3qdH56yZrhmnzM+VEuFRqYhjR7+EcB3X4CEqAfBj+IkK8mOF3 lYqcw9Qs2gIoYl+Pwp+6wROrVBx9zFtS9KXhMQXT0KN3EO4xGVfsiOdSzEh0gA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5V6K1pfnFrncLXrQCe+DPb6033j7EATeHnBR8DFmfrs=; b=wrGBwaOZgTkQYKlN0KuTxIxtoIktyhfyzYpsDcqcpZJ6K245AtRvSxYwuAg0IohwktqR4d RUQXh8Hk36VIGM73Fjj/BGtMvPFrq5wXjw2Xr1SvEdjWrvjzIFCKElhuieNZGzY5OGbF6U B+qa7JRHKFxtouECqWUx02/K2i/lgFviL6Ki2ct9OzJ6Hb7PYw+GlGBNhFAJfzIPCTDbhy 9XGlFUyaxwJWduLWQgk4JSp6z142OS0zkkFENTcClRuayiw7R2nWHo5pQZ76NkmoOyX8dH PM2Y1tMOtcNd/FVHNu2VPvzpdvRR0v01gS294eycy9eRWXYiazA0vtRgUXVoAA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjlG0dqJznZp; Tue, 7 May 2024 16:04: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 447G4P2d049540; Tue, 7 May 2024 16:04:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447G4PX8049537; Tue, 7 May 2024 16:04:25 GMT (envelope-from git) Date: Tue, 7 May 2024 16:04:25 GMT Message-Id: <202405071604.447G4PX8049537@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 560406982489 - main - busdma: deduplicate _bus_dmamap_addseg() function List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 560406982489cf067f586fcae87bbd31eafe9456 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=560406982489cf067f586fcae87bbd31eafe9456 commit 560406982489cf067f586fcae87bbd31eafe9456 Author: Mitchell Horne AuthorDate: 2024-02-14 17:01:15 +0000 Commit: Mitchell Horne CommitDate: 2024-05-07 16:02:57 +0000 busdma: deduplicate _bus_dmamap_addseg() function It is functionally identical in all implementations, so move the function to subr_busdma_bounce.c. The KASSERT present in the x86 version is now enabled for all architectures. It should be universally applicable. Reviewed by: jhb MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45047 --- sys/arm/arm/busdma_machdep.c | 45 +++---------------------------- sys/arm64/arm64/busdma_bounce.c | 45 +++---------------------------- sys/kern/subr_busdma_bounce.c | 48 +++++++++++++++++++++++++++++++++ sys/powerpc/powerpc/busdma_machdep.c | 45 +++---------------------------- sys/riscv/riscv/busdma_bounce.c | 45 +++---------------------------- sys/x86/x86/busdma_bounce.c | 52 +++--------------------------------- 6 files changed, 68 insertions(+), 212 deletions(-) diff --git a/sys/arm/arm/busdma_machdep.c b/sys/arm/arm/busdma_machdep.c index 44bc96bed734..17cde2e60e37 100644 --- a/sys/arm/arm/busdma_machdep.c +++ b/sys/arm/arm/busdma_machdep.c @@ -168,11 +168,15 @@ static busdma_bufalloc_t standard_allocator; /* Cache of standard buffers */ MALLOC_DEFINE(M_BUSDMA, "busdma", "busdma metadata"); #define dmat_alignment(dmat) ((dmat)->alignment) +#define dmat_bounce_flags(dmat) (0) +#define dmat_boundary(dmat) ((dmat)->boundary) #define dmat_flags(dmat) ((dmat)->flags) #define dmat_highaddr(dmat) ((dmat)->highaddr) #define dmat_lowaddr(dmat) ((dmat)->lowaddr) #define dmat_lockfunc(dmat) ((dmat)->lockfunc) #define dmat_lockfuncarg(dmat) ((dmat)->lockfuncarg) +#define dmat_maxsegsz(dmat) ((dmat)->maxsegsz) +#define dmat_nsegments(dmat) ((dmat)->nsegments) #include "../../kern/subr_busdma_bounce.c" @@ -842,47 +846,6 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, pmap_t pmap, bus_dmamap_t map, } } -/* - * Add a single contiguous physical range to the segment list. - */ -static int -_bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, - bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) -{ - int seg; - - /* - * Make sure we don't cross any boundaries. - */ - if (!vm_addr_bound_ok(curaddr, sgsize, dmat->boundary)) - sgsize = roundup2(curaddr, dmat->boundary) - curaddr; - - /* - * Insert chunk into a segment, coalescing with - * previous segment if possible. - */ - seg = *segp; - if (seg == -1) { - seg = 0; - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } else { - if (curaddr == segs[seg].ds_addr + segs[seg].ds_len && - (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && - vm_addr_bound_ok(segs[seg].ds_addr, - segs[seg].ds_len + sgsize, dmat->boundary)) - segs[seg].ds_len += sgsize; - else { - if (++seg >= dmat->nsegments) - return (0); - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } - } - *segp = seg; - return (sgsize); -} - /* * Utility function to load a physical buffer. segp contains * the starting segment on entrace, and the ending segment on exit. diff --git a/sys/arm64/arm64/busdma_bounce.c b/sys/arm64/arm64/busdma_bounce.c index e62794da2753..385e26e3bd8e 100644 --- a/sys/arm64/arm64/busdma_bounce.c +++ b/sys/arm64/arm64/busdma_bounce.c @@ -121,12 +121,16 @@ static void _bus_dmamap_count_phys(bus_dma_tag_t dmat, bus_dmamap_t map, static MALLOC_DEFINE(M_BUSDMA, "busdma", "busdma metadata"); #define dmat_alignment(dmat) ((dmat)->common.alignment) +#define dmat_bounce_flags(dmat) ((dmat)->bounce_flags) +#define dmat_boundary(dmat) ((dmat)->common.boundary) #define dmat_domain(dmat) ((dmat)->common.domain) #define dmat_flags(dmat) ((dmat)->common.flags) #define dmat_highaddr(dmat) ((dmat)->common.highaddr) #define dmat_lowaddr(dmat) ((dmat)->common.lowaddr) #define dmat_lockfunc(dmat) ((dmat)->common.lockfunc) #define dmat_lockfuncarg(dmat) ((dmat)->common.lockfuncarg) +#define dmat_maxsegsz(dmat) ((dmat)->common.maxsegsz) +#define dmat_nsegments(dmat) ((dmat)->common.nsegments) #include "../../kern/subr_busdma_bounce.c" @@ -711,47 +715,6 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, } } -/* - * Add a single contiguous physical range to the segment list. - */ -static bus_size_t -_bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, - bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) -{ - int seg; - - /* - * Make sure we don't cross any boundaries. - */ - if (!vm_addr_bound_ok(curaddr, sgsize, dmat->common.boundary)) - sgsize = roundup2(curaddr, dmat->common.boundary) - curaddr; - - /* - * Insert chunk into a segment, coalescing with - * previous segment if possible. - */ - seg = *segp; - if (seg == -1) { - seg = 0; - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } else { - if (curaddr == segs[seg].ds_addr + segs[seg].ds_len && - (segs[seg].ds_len + sgsize) <= dmat->common.maxsegsz && - vm_addr_bound_ok(segs[seg].ds_addr, - segs[seg].ds_len + sgsize, dmat->common.boundary)) - segs[seg].ds_len += sgsize; - else { - if (++seg >= dmat->common.nsegments) - return (0); - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } - } - *segp = seg; - return (sgsize); -} - /* * Utility function to load a physical buffer. segp contains * the starting segment on entrace, and the ending segment on exit. diff --git a/sys/kern/subr_busdma_bounce.c b/sys/kern/subr_busdma_bounce.c index 77b1b358758f..a9cddcb3f39f 100644 --- a/sys/kern/subr_busdma_bounce.c +++ b/sys/kern/subr_busdma_bounce.c @@ -451,6 +451,54 @@ free_bounce_pages(bus_dma_tag_t dmat, bus_dmamap_t map) wakeup(&bounce_map_callbacklist); } +/* + * Add a single contiguous physical range to the segment list. + */ +static bus_size_t +_bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, + bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) +{ + int seg; + + KASSERT(curaddr <= BUS_SPACE_MAXADDR, + ("ds_addr %#jx > BUS_SPACE_MAXADDR %#jx; dmat %p fl %#x low %#jx " + "hi %#jx", + (uintmax_t)curaddr, (uintmax_t)BUS_SPACE_MAXADDR, + dmat, dmat_bounce_flags(dmat), (uintmax_t)dmat_lowaddr(dmat), + (uintmax_t)dmat_highaddr(dmat))); + + /* + * Make sure we don't cross any boundaries. + */ + if (!vm_addr_bound_ok(curaddr, sgsize, dmat_boundary(dmat))) + sgsize = roundup2(curaddr, dmat_boundary(dmat)) - curaddr; + + /* + * Insert chunk into a segment, coalescing with + * previous segment if possible. + */ + seg = *segp; + if (seg == -1) { + seg = 0; + segs[seg].ds_addr = curaddr; + segs[seg].ds_len = sgsize; + } else { + if (curaddr == segs[seg].ds_addr + segs[seg].ds_len && + (segs[seg].ds_len + sgsize) <= dmat_maxsegsz(dmat) && + vm_addr_bound_ok(segs[seg].ds_addr, + segs[seg].ds_len + sgsize, dmat_boundary(dmat))) + segs[seg].ds_len += sgsize; + else { + if (++seg >= dmat_nsegments(dmat)) + return (0); + segs[seg].ds_addr = curaddr; + segs[seg].ds_len = sgsize; + } + } + *segp = seg; + return (sgsize); +} + static void busdma_thread(void *dummy __unused) { diff --git a/sys/powerpc/powerpc/busdma_machdep.c b/sys/powerpc/powerpc/busdma_machdep.c index bc28619372f0..fad22d49a7f5 100644 --- a/sys/powerpc/powerpc/busdma_machdep.c +++ b/sys/powerpc/powerpc/busdma_machdep.c @@ -100,11 +100,15 @@ struct bus_dmamap { static MALLOC_DEFINE(M_BUSDMA, "busdma", "busdma metadata"); #define dmat_alignment(dmat) ((dmat)->alignment) +#define dmat_bounce_flags(dmat) (0) +#define dmat_boundary(dmat) ((dmat)->boundary) #define dmat_flags(dmat) ((dmat)->flags) #define dmat_highaddr(dmat) ((dmat)->highaddr) #define dmat_lowaddr(dmat) ((dmat)->lowaddr) #define dmat_lockfunc(dmat) ((dmat)->lockfunc) #define dmat_lockfuncarg(dmat) ((dmat)->lockfuncarg) +#define dmat_maxsegsz(dmat) ((dmat)->maxsegsz) +#define dmat_nsegments(dmat) ((dmat)->nsegments) #include "../../kern/subr_busdma_bounce.c" @@ -535,47 +539,6 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, } } -/* - * Add a single contiguous physical range to the segment list. - */ -static int -_bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, - bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) -{ - int seg; - - /* - * Make sure we don't cross any boundaries. - */ - if (!vm_addr_bound_ok(curaddr, sgsize, dmat->boundary)) - sgsize = roundup2(curaddr, dmat->boundary) - curaddr; - - /* - * Insert chunk into a segment, coalescing with - * previous segment if possible. - */ - seg = *segp; - if (seg == -1) { - seg = 0; - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } else { - if (curaddr == segs[seg].ds_addr + segs[seg].ds_len && - (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && - vm_addr_bound_ok(segs[seg].ds_addr, - segs[seg].ds_len + sgsize, dmat->boundary)) - segs[seg].ds_len += sgsize; - else { - if (++seg >= dmat->nsegments) - return (0); - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } - } - *segp = seg; - return (sgsize); -} - /* * Utility function to load a physical buffer. segp contains * the starting segment on entrace, and the ending segment on exit. diff --git a/sys/riscv/riscv/busdma_bounce.c b/sys/riscv/riscv/busdma_bounce.c index e504b122ebd1..cb0d7ea29ecd 100644 --- a/sys/riscv/riscv/busdma_bounce.c +++ b/sys/riscv/riscv/busdma_bounce.c @@ -111,11 +111,15 @@ static void _bus_dmamap_count_phys(bus_dma_tag_t dmat, bus_dmamap_t map, static MALLOC_DEFINE(M_BUSDMA, "busdma", "busdma metadata"); #define dmat_alignment(dmat) ((dmat)->common.alignment) +#define dmat_bounce_flags(dmat) ((dmat)->bounce_flags) +#define dmat_boundary(dmat) ((dmat)->common.boundary) #define dmat_flags(dmat) ((dmat)->common.flags) #define dmat_highaddr(dmat) ((dmat)->common.highaddr) #define dmat_lowaddr(dmat) ((dmat)->common.lowaddr) #define dmat_lockfunc(dmat) ((dmat)->common.lockfunc) #define dmat_lockfuncarg(dmat) ((dmat)->common.lockfuncarg) +#define dmat_maxsegsz(dmat) ((dmat)->common.maxsegsz) +#define dmat_nsegments(dmat) ((dmat)->common.nsegments) #include "../../kern/subr_busdma_bounce.c" @@ -547,47 +551,6 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, } } -/* - * Add a single contiguous physical range to the segment list. - */ -static bus_size_t -_bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, - bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) -{ - int seg; - - /* - * Make sure we don't cross any boundaries. - */ - if (!vm_addr_bound_ok(curaddr, sgsize, dmat->common.boundary)) - sgsize = roundup2(curaddr, dmat->common.boundary) - curaddr; - - /* - * Insert chunk into a segment, coalescing with - * previous segment if possible. - */ - seg = *segp; - if (seg == -1) { - seg = 0; - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } else { - if (curaddr == segs[seg].ds_addr + segs[seg].ds_len && - (segs[seg].ds_len + sgsize) <= dmat->common.maxsegsz && - vm_addr_bound_ok(segs[seg].ds_addr, - segs[seg].ds_len + sgsize, dmat->common.boundary)) - segs[seg].ds_len += sgsize; - else { - if (++seg >= dmat->common.nsegments) - return (0); - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } - } - *segp = seg; - return (sgsize); -} - /* * Utility function to load a physical buffer. segp contains * the starting segment on entrace, and the ending segment on exit. diff --git a/sys/x86/x86/busdma_bounce.c b/sys/x86/x86/busdma_bounce.c index ef96f5ba7bdc..07fbfd6dffcb 100644 --- a/sys/x86/x86/busdma_bounce.c +++ b/sys/x86/x86/busdma_bounce.c @@ -108,12 +108,16 @@ static void _bus_dmamap_count_phys(bus_dma_tag_t dmat, bus_dmamap_t map, static MALLOC_DEFINE(M_BUSDMA, "busdma", "busdma metadata"); #define dmat_alignment(dmat) ((dmat)->common.alignment) +#define dmat_bounce_flags(dmat) ((dmat)->bounce_flags) +#define dmat_boundary(dmat) ((dmat)->common.boundary) #define dmat_domain(dmat) ((dmat)->common.domain) #define dmat_flags(dmat) ((dmat)->common.flags) #define dmat_highaddr(dmat) ((dmat)->common.highaddr) #define dmat_lowaddr(dmat) ((dmat)->common.lowaddr) #define dmat_lockfunc(dmat) ((dmat)->common.lockfunc) #define dmat_lockfuncarg(dmat) ((dmat)->common.lockfuncarg) +#define dmat_maxsegsz(dmat) ((dmat)->common.maxsegsz) +#define dmat_nsegments(dmat) ((dmat)->common.nsegments) #include "../../kern/subr_busdma_bounce.c" @@ -622,54 +626,6 @@ _bus_dmamap_count_ma(bus_dma_tag_t dmat, bus_dmamap_t map, struct vm_page **ma, } } -/* - * Add a single contiguous physical range to the segment list. - */ -static bus_size_t -_bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t curaddr, - bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) -{ - int seg; - - KASSERT(curaddr <= BUS_SPACE_MAXADDR, - ("ds_addr %#jx > BUS_SPACE_MAXADDR %#jx; dmat %p fl %#x low %#jx " - "hi %#jx", - (uintmax_t)curaddr, (uintmax_t)BUS_SPACE_MAXADDR, - dmat, dmat->bounce_flags, (uintmax_t)dmat->common.lowaddr, - (uintmax_t)dmat->common.highaddr)); - - /* - * Make sure we don't cross any boundaries. - */ - if (!vm_addr_bound_ok(curaddr, sgsize, dmat->common.boundary)) - sgsize = roundup2(curaddr, dmat->common.boundary) - curaddr; - - /* - * Insert chunk into a segment, coalescing with - * previous segment if possible. - */ - seg = *segp; - if (seg == -1) { - seg = 0; - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } else { - if (curaddr == segs[seg].ds_addr + segs[seg].ds_len && - (segs[seg].ds_len + sgsize) <= dmat->common.maxsegsz && - vm_addr_bound_ok(segs[seg].ds_addr, - segs[seg].ds_len + sgsize, dmat->common.boundary)) - segs[seg].ds_len += sgsize; - else { - if (++seg >= dmat->common.nsegments) - return (0); - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } - } - *segp = seg; - return (sgsize); -} - /* * Utility function to load a physical buffer. segp contains * the starting segment on entrace, and the ending segment on exit. From nobody Tue May 7 16:04:27 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjlH1wCgz5J7Kl; Tue, 07 May 2024 16:04: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 4VYjlH1bkNz4Q7y; Tue, 7 May 2024 16:04:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097867; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pILzvoHFzcC645RAZc+EewsXu8RTBp+Az4syg9QQCNg=; b=vJIZZqGDltrkc8toV926vShr5JUZ0n4tEoR4Jhb+7x7Yx3O2JHu1swzalRfQBqqMt1Dmyh T6r15urJZnHBbUzTKlIHlojxYjNDdACO+v25JNWUufoolVPQSdzfr2NfdrW6NQywjisYEf EWestTHIDEyp46WwcCUzBJsubOoqDCoknwW9vPO4glp9/Cwj25G7p39zRef+tUYqZLsht4 feKVmV9Wxyl6b4/pzd4SO+Lpy+9CmnBdCD98RUR5Brf1tgtz78kOyw5qxJDZ0EkeZBpp26 C/9Kor44icIVnd3zjQJ415KUzQ3L8G9Zd6RF/eMmdaTztLUSKfkY7EzFe/TRIw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715097867; a=rsa-sha256; cv=none; b=POYaHYui30DnWfqMOWa3df07luUOT2PeTiEA948ZP18Wn76ztqSE++abguOtG4CSd9pLwz zOiWV+RPxK3jGpXis8/rnht5jNvfcIMrl4v/grRiEvvdbLEntcyW+Da8BMkpIRJFXvrmzW NMg8HTghhfn4WvXY6m7xuczZTgv9E+NDcPUlmC1Gg83NH6wBH+SwDeAuT97O1XpSJlQ4I9 j4+IPkuaNsNHkC0v6znGSDcEoPTfxNZCtHRsgLOb/9Rn8Yaq6z1EbpZqF+7uAyAj3YWiQj 3Zrg3S+/tYNZdRJWEsc2+4fWS/tSpWKXOVR7kTJV3Az68jbUSTBqAZNsdCUshg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097867; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pILzvoHFzcC645RAZc+EewsXu8RTBp+Az4syg9QQCNg=; b=DskOyIdv7esZuXDIC6iIGNcVAPE489u+Ewz3fO3b2eqkIAzWseX5Jk16KevtpEQ9BC3xBy oQv+fqAJE9L4hIBn4ty3FKjnhKJ6eyILlP9oTWlYs/tll0243nfjdYt8Tdd/wADCSpHl8v xSUifgA5K0US37s6oJUINjETp9/5Aq3KOFhGpultW/0lUPrLf0HwskPkpmQOnfKfq+PGqL FhjPTheFgzWxMmMzzEq/BeViv1/033jS0NVxF30WWf2SxHsDEbH9y32PVQsCAP20Ka2MDY iJTgiYT239P7xJ8xAxW2BNM2U5zz0voO6pnW/kwsoy0yA8IlGB7gBIg3BGliDw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjlH1C0jznZq; Tue, 7 May 2024 16:04: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 447G4RPf049589; Tue, 7 May 2024 16:04:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447G4RB5049586; Tue, 7 May 2024 16:04:27 GMT (envelope-from git) Date: Tue, 7 May 2024 16:04:27 GMT Message-Id: <202405071604.447G4RB5049586@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: a77e1f0f81df - main - busdma: better handling of small segment bouncing List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a77e1f0f81df5fa3b4a6a38728ebace599cb18a4 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=a77e1f0f81df5fa3b4a6a38728ebace599cb18a4 commit a77e1f0f81df5fa3b4a6a38728ebace599cb18a4 Author: Mitchell Horne AuthorDate: 2024-02-14 16:56:13 +0000 Commit: Mitchell Horne CommitDate: 2024-05-07 16:02:57 +0000 busdma: better handling of small segment bouncing Typically, when a DMA transaction requires bouncing, we will break up the request into segments that are, at maximum, page-sized. However, in the atypical case of a driver whose maximum segment size is smaller than PAGE_SIZE, we end up inefficiently assigning each segment its own bounce page. For example, the dwmmc driver has a maximum segment size of 2048 (PAGE_SIZE / 2); a 4-page transfer ends up requiring 8 bounce pages in the current scheme. We should attempt to batch segments into bounce pages more efficiently. This is achieved by pushing all considerations of the maximum segment size into the new _bus_dmamap_addsegs() function, which wraps _bus_dmamap_addseg(). Thus we allocate the minimal number of bounce pages required to complete the entire transfer, while still performing the transfer with smaller-sized transactions. For most drivers with a segment size >= PAGE_SIZE, this will have no impact. For drivers like dwmmc mentioned above, this improves the memory and performance efficiency when bouncing a large transfer. Co-authored-by: jhb Reviewed by: jhb MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45048 --- sys/arm/arm/busdma_machdep.c | 21 ++++++---------- sys/arm64/arm64/busdma_bounce.c | 24 ++++++++----------- sys/kern/subr_busdma_bounce.c | 22 +++++++++++++++++ sys/powerpc/powerpc/busdma_machdep.c | 26 +++++++------------- sys/riscv/riscv/busdma_bounce.c | 27 ++++++++------------- sys/x86/x86/busdma_bounce.c | 46 +++++++++++++----------------------- 6 files changed, 75 insertions(+), 91 deletions(-) diff --git a/sys/arm/arm/busdma_machdep.c b/sys/arm/arm/busdma_machdep.c index 17cde2e60e37..13af7eb682d6 100644 --- a/sys/arm/arm/busdma_machdep.c +++ b/sys/arm/arm/busdma_machdep.c @@ -796,7 +796,7 @@ _bus_dmamap_count_phys(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, */ curaddr = buf; while (buflen != 0) { - sgsize = MIN(buflen, dmat->maxsegsz); + sgsize = buflen; if (must_bounce(dmat, map, curaddr, sgsize) != 0) { sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); @@ -833,7 +833,6 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, pmap_t pmap, bus_dmamap_t map, while (vaddr < vendaddr) { sg_len = MIN(vendaddr - vaddr, (PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK))); - sg_len = MIN(sg_len, dmat->maxsegsz); if (__predict_true(pmap == kernel_pmap)) paddr = pmap_kextract(vaddr); else @@ -884,7 +883,7 @@ _bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, while (buflen > 0) { curaddr = buf; - sgsize = MIN(buflen, dmat->maxsegsz); + sgsize = buflen; if (map->pagesneeded != 0 && must_bounce(dmat, map, curaddr, sgsize)) { sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); @@ -908,9 +907,8 @@ _bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, } else sl->datacount += sgsize; } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; buf += sgsize; buflen -= sgsize; @@ -1000,11 +998,7 @@ _bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, /* * Compute the segment size, and adjust counts. */ - sgsize = PAGE_SIZE - (curaddr & PAGE_MASK); - if (sgsize > dmat->maxsegsz) - sgsize = dmat->maxsegsz; - if (buflen < sgsize) - sgsize = buflen; + sgsize = MIN(buflen, PAGE_SIZE - (curaddr & PAGE_MASK)); if (map->pagesneeded != 0 && must_bounce(dmat, map, curaddr, sgsize)) { @@ -1037,9 +1031,8 @@ _bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, } else sl->datacount += sgsize; } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; vaddr += sgsize; buflen -= sgsize; diff --git a/sys/arm64/arm64/busdma_bounce.c b/sys/arm64/arm64/busdma_bounce.c index 385e26e3bd8e..f218bc062642 100644 --- a/sys/arm64/arm64/busdma_bounce.c +++ b/sys/arm64/arm64/busdma_bounce.c @@ -643,7 +643,7 @@ _bus_dmamap_pagesneeded(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, count = 0; curaddr = buf; while (buflen != 0) { - sgsize = MIN(buflen, dmat->common.maxsegsz); + sgsize = buflen; if (must_bounce(dmat, map, curaddr, sgsize)) { sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); @@ -696,15 +696,13 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, vendaddr = (vm_offset_t)buf + buflen; while (vaddr < vendaddr) { - sg_len = PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK); - sg_len = MIN(sg_len, dmat->common.maxsegsz); + sg_len = MIN(vendaddr - vaddr, + PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK)); if (pmap == kernel_pmap) paddr = pmap_kextract(vaddr); else paddr = pmap_extract(pmap, vaddr); - if (must_bounce(dmat, map, paddr, - min(vendaddr - vaddr, (PAGE_SIZE - ((vm_offset_t)vaddr & - PAGE_MASK)))) != 0) { + if (must_bounce(dmat, map, paddr, sg_len) != 0) { sg_len = roundup2(sg_len, dmat->common.alignment); map->pagesneeded++; @@ -746,7 +744,7 @@ bounce_bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, while (buflen > 0) { curaddr = buf; - sgsize = MIN(buflen, dmat->common.maxsegsz); + sgsize = buflen; if (map->pagesneeded != 0 && must_bounce(dmat, map, curaddr, sgsize)) { /* @@ -780,9 +778,8 @@ bounce_bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, } else sl->datacount += sgsize; } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; buf += sgsize; buflen -= sgsize; @@ -858,7 +855,7 @@ bounce_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, /* * Compute the segment size, and adjust counts. */ - sgsize = MIN(buflen, dmat->common.maxsegsz); + sgsize = buflen; if ((map->flags & DMAMAP_FROM_DMAMEM) == 0) sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); @@ -897,9 +894,8 @@ bounce_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, } else sl->datacount += sgsize; } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; vaddr += sgsize; buflen -= sgsize; diff --git a/sys/kern/subr_busdma_bounce.c b/sys/kern/subr_busdma_bounce.c index a9cddcb3f39f..a27bc423c23a 100644 --- a/sys/kern/subr_busdma_bounce.c +++ b/sys/kern/subr_busdma_bounce.c @@ -499,6 +499,28 @@ _bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, return (sgsize); } +/* + * Add a contiguous physical range to the segment list, respecting the tag's + * maximum segment size and splitting it into multiple segments as necessary. + */ +static bool +_bus_dmamap_addsegs(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, + bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) +{ + bus_size_t done, todo; + + while (sgsize > 0) { + todo = MIN(sgsize, dmat_maxsegsz(dmat)); + done = _bus_dmamap_addseg(dmat, map, curaddr, todo, segs, + segp); + if (done == 0) + return (false); + curaddr += done; + sgsize -= done; + } + return (true); +} + static void busdma_thread(void *dummy __unused) { diff --git a/sys/powerpc/powerpc/busdma_machdep.c b/sys/powerpc/powerpc/busdma_machdep.c index fad22d49a7f5..b023e7f353b9 100644 --- a/sys/powerpc/powerpc/busdma_machdep.c +++ b/sys/powerpc/powerpc/busdma_machdep.c @@ -487,7 +487,7 @@ _bus_dmamap_count_phys(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, */ curaddr = buf; while (buflen != 0) { - sgsize = MIN(buflen, dmat->maxsegsz); + sgsize = buflen; if (must_bounce(dmat, curaddr)) { sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); @@ -523,8 +523,8 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, while (vaddr < vendaddr) { bus_size_t sg_len; - sg_len = PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK); - sg_len = MIN(sg_len, dmat->maxsegsz); + sg_len = MIN(vendaddr - vaddr, + PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK)); if (pmap == kernel_pmap) paddr = pmap_kextract(vaddr); else @@ -569,15 +569,14 @@ _bus_dmamap_load_phys(bus_dma_tag_t dmat, while (buflen > 0) { curaddr = buf; - sgsize = MIN(buflen, dmat->maxsegsz); + sgsize = buflen; if (map->pagesneeded != 0 && must_bounce(dmat, curaddr)) { sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); curaddr = add_bounce_page(dmat, map, 0, curaddr, sgsize); } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; buf += sgsize; buflen -= sgsize; @@ -632,8 +631,6 @@ _bus_dmamap_load_buffer(bus_dma_tag_t dmat, vaddr = (vm_offset_t)buf; while (buflen > 0) { - bus_size_t max_sgsize; - /* * Get the physical address for this segment. */ @@ -648,20 +645,15 @@ _bus_dmamap_load_buffer(bus_dma_tag_t dmat, /* * Compute the segment size, and adjust counts. */ - max_sgsize = MIN(buflen, dmat->maxsegsz); - sgsize = PAGE_SIZE - (curaddr & PAGE_MASK); + sgsize = MIN(buflen, PAGE_SIZE - (curaddr & PAGE_MASK)); if (map->pagesneeded != 0 && must_bounce(dmat, curaddr)) { sgsize = roundup2(sgsize, dmat->alignment); - sgsize = MIN(sgsize, max_sgsize); curaddr = add_bounce_page(dmat, map, kvaddr, curaddr, sgsize); - } else { - sgsize = MIN(sgsize, max_sgsize); } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; vaddr += sgsize; buflen -= sgsize; diff --git a/sys/riscv/riscv/busdma_bounce.c b/sys/riscv/riscv/busdma_bounce.c index cb0d7ea29ecd..e1c217f1d12e 100644 --- a/sys/riscv/riscv/busdma_bounce.c +++ b/sys/riscv/riscv/busdma_bounce.c @@ -497,7 +497,7 @@ _bus_dmamap_count_phys(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, */ curaddr = buf; while (buflen != 0) { - sgsize = MIN(buflen, dmat->common.maxsegsz); + sgsize = buflen; if (addr_needs_bounce(dmat, curaddr)) { sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); @@ -534,8 +534,8 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, vendaddr = (vm_offset_t)buf + buflen; while (vaddr < vendaddr) { - sg_len = PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK); - sg_len = MIN(sg_len, dmat->common.maxsegsz); + sg_len = MIN(vendaddr - vaddr, + PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK)); if (pmap == kernel_pmap) paddr = pmap_kextract(vaddr); else @@ -582,7 +582,7 @@ bounce_bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, while (buflen > 0) { curaddr = buf; - sgsize = MIN(buflen, dmat->common.maxsegsz); + sgsize = buflen; if (((dmat->bounce_flags & BF_COULD_BOUNCE) != 0) && map->pagesneeded != 0 && addr_needs_bounce(dmat, curaddr)) { @@ -607,9 +607,8 @@ bounce_bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, } else sl->datacount += sgsize; } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; buf += sgsize; buflen -= sgsize; @@ -631,7 +630,7 @@ bounce_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, int *segp) { struct sync_list *sl; - bus_size_t sgsize, max_sgsize; + bus_size_t sgsize; bus_addr_t curaddr, sl_pend; vm_offset_t kvaddr, vaddr, sl_vend; int error; @@ -668,17 +667,14 @@ bounce_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, /* * Compute the segment size, and adjust counts. */ - max_sgsize = MIN(buflen, dmat->common.maxsegsz); - sgsize = PAGE_SIZE - (curaddr & PAGE_MASK); + sgsize = MIN(buflen, PAGE_SIZE - (curaddr & PAGE_MASK)); if (((dmat->bounce_flags & BF_COULD_BOUNCE) != 0) && map->pagesneeded != 0 && addr_needs_bounce(dmat, curaddr)) { sgsize = roundup2(sgsize, dmat->common.alignment); - sgsize = MIN(sgsize, max_sgsize); curaddr = add_bounce_page(dmat, map, kvaddr, curaddr, sgsize); } else if ((dmat->bounce_flags & BF_COHERENT) == 0) { - sgsize = MIN(sgsize, max_sgsize); if (map->sync_count > 0) { sl_pend = sl->paddr + sl->datacount; sl_vend = sl->vaddr + sl->datacount; @@ -704,12 +700,9 @@ bounce_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, sl->datacount = sgsize; } else sl->datacount += sgsize; - } else { - sgsize = MIN(sgsize, max_sgsize); } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; vaddr += sgsize; buflen -= sgsize; diff --git a/sys/x86/x86/busdma_bounce.c b/sys/x86/x86/busdma_bounce.c index 07fbfd6dffcb..5aa4ffcff3cc 100644 --- a/sys/x86/x86/busdma_bounce.c +++ b/sys/x86/x86/busdma_bounce.c @@ -511,7 +511,7 @@ _bus_dmamap_pagesneeded(bus_dma_tag_t dmat, vm_paddr_t buf, bus_size_t buflen, count = 0; curaddr = buf; while (buflen != 0) { - sgsize = MIN(buflen, dmat->common.maxsegsz); + sgsize = buflen; if (must_bounce(dmat, curaddr)) { sgsize = MIN(sgsize, PAGE_SIZE - (curaddr & PAGE_MASK)); @@ -563,8 +563,8 @@ _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, vendaddr = (vm_offset_t)buf + buflen; while (vaddr < vendaddr) { - sg_len = PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK); - sg_len = MIN(sg_len, dmat->common.maxsegsz); + sg_len = MIN(vendaddr - vaddr, + PAGE_SIZE - ((vm_offset_t)vaddr & PAGE_MASK)); if (pmap == kernel_pmap) paddr = pmap_kextract(vaddr); else @@ -584,7 +584,7 @@ static void _bus_dmamap_count_ma(bus_dma_tag_t dmat, bus_dmamap_t map, struct vm_page **ma, int ma_offs, bus_size_t buflen, int flags) { - bus_size_t sg_len, max_sgsize; + bus_size_t sg_len; int page_index; vm_paddr_t paddr; @@ -604,12 +604,10 @@ _bus_dmamap_count_ma(bus_dma_tag_t dmat, bus_dmamap_t map, struct vm_page **ma, while (buflen > 0) { paddr = VM_PAGE_TO_PHYS(ma[page_index]) + ma_offs; sg_len = PAGE_SIZE - ma_offs; - max_sgsize = MIN(buflen, dmat->common.maxsegsz); - sg_len = MIN(sg_len, max_sgsize); + sg_len = MIN(sg_len, buflen); if (must_bounce(dmat, paddr)) { sg_len = roundup2(sg_len, dmat->common.alignment); - sg_len = MIN(sg_len, max_sgsize); KASSERT(vm_addr_align_ok(sg_len, dmat->common.alignment), ("Segment size is not aligned")); @@ -656,7 +654,7 @@ bounce_bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, while (buflen > 0) { curaddr = buf; - sgsize = MIN(buflen, dmat->common.maxsegsz); + sgsize = buflen; if ((dmat->bounce_flags & BUS_DMA_COULD_BOUNCE) != 0 && map->pagesneeded != 0 && must_bounce(dmat, curaddr)) { @@ -664,9 +662,9 @@ bounce_bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, curaddr = add_bounce_page(dmat, map, 0, curaddr, 0, sgsize); } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; buf += sgsize; buflen -= sgsize; @@ -687,7 +685,7 @@ bounce_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, bus_size_t buflen, pmap_t pmap, int flags, bus_dma_segment_t *segs, int *segp) { - bus_size_t sgsize, max_sgsize; + bus_size_t sgsize; vm_paddr_t curaddr; vm_offset_t kvaddr, vaddr; int error; @@ -723,21 +721,16 @@ bounce_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, /* * Compute the segment size, and adjust counts. */ - max_sgsize = MIN(buflen, dmat->common.maxsegsz); - sgsize = PAGE_SIZE - (curaddr & PAGE_MASK); + sgsize = MIN(buflen, PAGE_SIZE - (curaddr & PAGE_MASK)); if ((dmat->bounce_flags & BUS_DMA_COULD_BOUNCE) != 0 && map->pagesneeded != 0 && must_bounce(dmat, curaddr)) { sgsize = roundup2(sgsize, dmat->common.alignment); - sgsize = MIN(sgsize, max_sgsize); curaddr = add_bounce_page(dmat, map, kvaddr, curaddr, 0, sgsize); - } else { - sgsize = MIN(sgsize, max_sgsize); } - sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, curaddr, sgsize, segs, + segp)) break; vaddr += sgsize; buflen -= sgsize; @@ -756,7 +749,7 @@ bounce_bus_dmamap_load_ma(bus_dma_tag_t dmat, bus_dmamap_t map, { vm_paddr_t paddr, next_paddr; int error, page_index; - bus_size_t sgsize, max_sgsize; + bus_size_t sgsize; if (dmat->common.flags & BUS_DMA_KEEP_PG_OFFSET) { /* @@ -790,13 +783,11 @@ bounce_bus_dmamap_load_ma(bus_dma_tag_t dmat, bus_dmamap_t map, * Compute the segment size, and adjust counts. */ paddr = VM_PAGE_TO_PHYS(ma[page_index]) + ma_offs; - max_sgsize = MIN(buflen, dmat->common.maxsegsz); - sgsize = PAGE_SIZE - ma_offs; + sgsize = MIN(buflen, PAGE_SIZE - ma_offs); if ((dmat->bounce_flags & BUS_DMA_COULD_BOUNCE) != 0 && map->pagesneeded != 0 && must_bounce(dmat, paddr)) { sgsize = roundup2(sgsize, dmat->common.alignment); - sgsize = MIN(sgsize, max_sgsize); KASSERT(vm_addr_align_ok(sgsize, dmat->common.alignment), ("Segment size is not aligned")); @@ -811,12 +802,9 @@ bounce_bus_dmamap_load_ma(bus_dma_tag_t dmat, bus_dmamap_t map, next_paddr = 0; paddr = add_bounce_page(dmat, map, 0, paddr, next_paddr, sgsize); - } else { - sgsize = MIN(sgsize, max_sgsize); } - sgsize = _bus_dmamap_addseg(dmat, map, paddr, sgsize, segs, - segp); - if (sgsize == 0) + if (!_bus_dmamap_addsegs(dmat, map, paddr, sgsize, segs, + segp)) break; KASSERT(buflen >= sgsize, ("Segment length overruns original buffer")); From nobody Tue May 7 16:04:28 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjlJ69pBz5J7Br; Tue, 07 May 2024 16:04: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 4VYjlJ2TfKz4QBK; Tue, 7 May 2024 16:04:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097868; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oX8Y19FHiyxUCi7loaudPbe7A9OI2O3o8LMw7yqhNi4=; b=FXKpPZ+/2WLx9Tk4sVCmtmTBfwC84hqptaAtZjBcNnFaoZ43KKJQ6y6H554YdhrNaKtP8u JMwzxvxKLcf/oIvDM3Oyvviesl154RqsHz+QG/13FChLEjk93NwdLc1a+bL+i1RmQoJxRW nEruiivpk22FQrixuoyGPynIGVjSXO64IOOKqAJTGG8xD0mn0v2cAb0VEKh/1h4OqIOMr5 zkQ28c+Edw0lln0CEq6/ybcj2VOBEZg6PaSUC2KYzMqIAcWMO8XUf8Nh1w24ghk4kNgFbx MT/HqtMiKDFEmEufrUCYUzDLV76QO8NQnvTSGnf/uf+/jspThhTkpRWgeQuMlA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715097868; a=rsa-sha256; cv=none; b=W25bsksUourDlQ95pWzuGeTNTHKERv/FrDN6eE7VgF/zMsRd8IcQMl1EbbeQucWzsH9Rcm xaZp7BifrSqmgKA7Xo9x5HG5WsYjidsrBAWoF5YTnQDcppUXXwy5AkVMocrxxUu6OH7IJH cc3s2aOrDKdr5OHE0HbwWUHmdHg9sN8QXuEEuhjx0+4AnQRZTQhEjDTg9/iV7KQZnsYexA I9gmqwW2y4C5NAj3thlWq2/EaJkN+coLniUv0YYb/37/fxWMCrjZZRBmlAucZl+1Ur52s4 0P/oduyXyyxfI7mubDtE0ZENuysttKeOUas4SRBx/kBsDHZZv5nT9wJl3DkVmw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097868; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oX8Y19FHiyxUCi7loaudPbe7A9OI2O3o8LMw7yqhNi4=; b=nnf8HKy/SFrhR6oUxX3l8sgqnU8dImV23j2b4AZMxpia6aUqG9jv+xpIKsY5r/5ipiP8s3 0wheTo7PNMZeOSAJggd0WyfDtMwFm3W+3kFsonoSIhTze7TaioGaBb7CYZ7ougtj9wrk1k roZaKHcTFzpQlx4+0Eue4Qn96ls/BAYoLJx2Sru62eefbCpd/cukZgQz6rKpitlsudig5F 6mNu+yB2kmQrJfFSaHe779fDBevrijuK5zdQ5xyr7ksmJWyR3pe4yDGnL8A3FTd7Ql/fmm oWqGvu/V7I3qknwmOsBfxXhdJckXbrTt2fgOiYiLQWsSTqllBUFDmTjul4heMw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjlJ23bSzp1M; Tue, 7 May 2024 16:04:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 447G4SBJ049642; Tue, 7 May 2024 16:04:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447G4SUu049639; Tue, 7 May 2024 16:04:28 GMT (envelope-from git) Date: Tue, 7 May 2024 16:04:28 GMT Message-Id: <202405071604.447G4SUu049639@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: cf0876820717 - main - starfive: add a syscon driver List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cf0876820717192b4900b56c027b01dad35bc837 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=cf0876820717192b4900b56c027b01dad35bc837 commit cf0876820717192b4900b56c027b01dad35bc837 Author: Mitchell Horne AuthorDate: 2024-03-05 23:57:30 +0000 Commit: Mitchell Horne CommitDate: 2024-05-07 16:02:57 +0000 starfive: add a syscon driver It serves the purpose of attaching syscon devices as early as possible; this is required for early attachment of the PLL clock driver. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D44270 --- sys/riscv/starfive/files.starfive | 1 + sys/riscv/starfive/starfive_syscon.c | 87 ++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+) diff --git a/sys/riscv/starfive/files.starfive b/sys/riscv/starfive/files.starfive index e69de29bb2d1..48ca738936da 100644 --- a/sys/riscv/starfive/files.starfive +++ b/sys/riscv/starfive/files.starfive @@ -0,0 +1 @@ +riscv/starfive/starfive_syscon.c standard diff --git a/sys/riscv/starfive/starfive_syscon.c b/sys/riscv/starfive/starfive_syscon.c new file mode 100644 index 000000000000..dfc8fa8ba5d9 --- /dev/null +++ b/sys/riscv/starfive/starfive_syscon.c @@ -0,0 +1,87 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2024 The FreeBSD Foundation + * + * This software was developed by Mitchell Horne under + * sponsorship from the FreeBSD Foundation. + */ + +/* + * StarFive syscon driver. + * + * On the JH7110, the PLL clock driver is a child of the sys-syscon device. + * This needs to probe very early (BUS_PASS_BUS + BUS_PASS_ORDER_EARLY). + */ + +#include +#include +#include +#include +#include + +#include + +#include +#include +#include + +#include +#include + +#include + +enum starfive_syscon_type { + JH7110_SYSCON_SYS = 1, + JH7110_SYSCON_AON, + JH7110_SYSCON_STG, +}; + +static struct ofw_compat_data compat_data[] = { + { "starfive,jh7110-sys-syscon", JH7110_SYSCON_SYS }, + { "starfive,jh7110-aon-syscon", JH7110_SYSCON_AON }, + { "starfive,jh7110-stg-syscon", JH7110_SYSCON_STG }, + + { NULL, 0 } +}; + +static int +starfive_syscon_probe(device_t dev) +{ + enum starfive_syscon_type type; + + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + type = ofw_bus_search_compatible(dev, compat_data)->ocd_data; + if (type == 0) + return (ENXIO); + + switch (type) { + case JH7110_SYSCON_SYS: + device_set_desc(dev, "JH7110 SYS syscon"); + break; + case JH7110_SYSCON_AON: + device_set_desc(dev, "JH7110 AON syscon"); + break; + case JH7110_SYSCON_STG: + device_set_desc(dev, "JH7110 STG syscon"); + break; + } + + return (BUS_PROBE_DEFAULT); +} + + +static device_method_t starfive_syscon_methods[] = { + DEVMETHOD(device_probe, starfive_syscon_probe), + + DEVMETHOD_END +}; + +DEFINE_CLASS_1(starfive_syscon, starfive_syscon_driver, starfive_syscon_methods, + sizeof(struct syscon_generic_softc), simple_mfd_driver); + +EARLY_DRIVER_MODULE(starfive_syscon, simplebus, starfive_syscon_driver, 0, 0, + BUS_PASS_BUS + BUS_PASS_ORDER_EARLY); +MODULE_VERSION(starfive_syscon, 1); From nobody Tue May 7 16:04:29 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjlK5Fgbz5J7Sj; Tue, 07 May 2024 16:04:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VYjlK45Zfz4Q8Z; Tue, 7 May 2024 16:04:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097869; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zQb+IOPTeC2Q4mS89xDEiyHX4eqDDbr0cQIHRJ69FtU=; b=B8lPFCd53HpDoexrgslwTfoqS4LoFMrlg76Tblnuh5xodo4ppu2CjH6JZPor918l65JRkV j/FOa/0wEYAHowudGteVoYOwRINMuOsfgcopcJmPJXFXIQ3POauVRPxpJW8xoHMYDGU4sp ZEm9n5OBwufOyHC4WpXyKlgCiV6jfGe3CCF0HJtLzVLsUC5y2pbnN8c1dUwim0V5sI8pdJ /O6VNW7NXyaVgGAnMf+GFRz1fdelkfB6pShMHcDmHDEng13zFIidBVz7eZz4wMMIrZTinP Hg80NkP3VgZg+9D6HJZleqyMXTY5aOIXrGdVFEjMKeH1bFqeJGL02heB2U+Klg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715097869; a=rsa-sha256; cv=none; b=No3pg07GOS47MgCY5Bdfdf3Y9q6FDJfzN9oLfo/avi9PRLmjSX9gVttWlqrs2otgVRYInJ lbZ2YglXAA7G1LaTTFk/QgSKtcmYN+vJ7H+LP2bVrN/YzUh55AtplEwRkoehub8iXUYlWU YTetUuxU1ua50u/RP2URwwPq3mrCkOJCgp4VdaL4fDX5HBfmx2WP1oXW0xxRLUUmXqw/GU KOVxWH+zQ/1/PurdSPTGuPMUdivO3dyqamB+3GB6rX0SjH+SJ43QLXGAS+GRn8PYVKZE+x RTqKJDabc6c4tr6sKzH85Us+eHt8ju4SSU4cWPNPJI1KO9cA9BaBX7AqfTOMHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097869; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zQb+IOPTeC2Q4mS89xDEiyHX4eqDDbr0cQIHRJ69FtU=; b=j1UKbrBPzaJz3VtNVq70qMWwk6jM34qoxsr02Fo24NtWTkEx0e6kqbTzszar69msbk9eDj 691HR9LM8Fdb5CK5hUSxGUshHqQ+JCAhTMsmysRjyLxnNhFaVbMlBk9FuGBGWU5FdwStyE Hl8G40nejeyDE6aZ6GyK/Tv3WWg/853+IZxcwvs58qcaqrtE/IijM5purXEL9+2iVo4DB6 i6SXX7q1fc+Beo0D/cXpbyDelMQOE9a37ACwPAmBsz1VlGxoFhjS4HPSuVEI2z+l+in2AT GvYn0wi4c2y19uqGcXZ8jJB/OmxatMp6Ntstnbh8k86F6RRENzBe2Te0hYYwXA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjlK2s95znZr; Tue, 7 May 2024 16:04:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 447G4T65049690; Tue, 7 May 2024 16:04:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447G4TDF049687; Tue, 7 May 2024 16:04:29 GMT (envelope-from git) Date: Tue, 7 May 2024 16:04:29 GMT Message-Id: <202405071604.447G4TDF049687@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 5d6d6278979b - main - jh7110: Add StarFive JH7110 clock/reset generator drivers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5d6d6278979b9eab598a23c804d23e930d2f7268 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=5d6d6278979b9eab598a23c804d23e930d2f7268 commit 5d6d6278979b9eab598a23c804d23e930d2f7268 Author: Mitchell Horne AuthorDate: 2024-05-06 17:10:01 +0000 Commit: Mitchell Horne CommitDate: 2024-05-07 16:02:57 +0000 jh7110: Add StarFive JH7110 clock/reset generator drivers Implement a core clknode driver for the JH7110 (StarFive VisionFive v2) platform. Add clock/reset generator drivers for the PLL, SYS, and AON clock groupings. Co-authored-by: mhorne Reviewed by: mhorne Sponsored by: The FreeBSD Foundation (mhorne's contributions) Differential Revision: https://reviews.freebsd.org/D43037 --- sys/dev/clk/starfive/jh7110_clk.c | 277 ++++++++++++++++++++++++ sys/dev/clk/starfive/jh7110_clk.h | 72 +++++++ sys/dev/clk/starfive/jh7110_clk_aon.c | 168 +++++++++++++++ sys/dev/clk/starfive/jh7110_clk_pll.c | 386 ++++++++++++++++++++++++++++++++++ sys/dev/clk/starfive/jh7110_clk_pll.h | 211 +++++++++++++++++++ sys/dev/clk/starfive/jh7110_clk_sys.c | 261 +++++++++++++++++++++++ sys/riscv/starfive/files.starfive | 5 + 7 files changed, 1380 insertions(+) diff --git a/sys/dev/clk/starfive/jh7110_clk.c b/sys/dev/clk/starfive/jh7110_clk.c new file mode 100644 index 000000000000..adb5707b3f64 --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk.c @@ -0,0 +1,277 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2019 Emmanuel Vadot + * Copyright (c) 2022 Mitchell Horne + * Copyright (c) 2024 Jari Sihvola + */ + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include + +#include + +#include + +#include "clkdev_if.h" +#include "hwreset_if.h" + +#define JH7110_DIV_MASK 0xffffff +#define JH7110_MUX_SHIFT 24 +#define JH7110_MUX_MASK 0x3f000000 +#define JH7110_ENABLE_SHIFT 31 + +#define REG_SIZE 4 + +struct jh7110_clk_sc { + uint32_t offset; + uint32_t flags; + uint64_t d_max; + int id; +}; + +#define DIV_ROUND_CLOSEST(n, d) (((n) + (d) / 2) / (d)) + +#define READ4(_sc, _off) \ + bus_read_4(_sc->mem_res, _off) +#define WRITE4(_sc, _off, _val) \ + bus_write_4(_sc->mem_res, _off, _val) + +#define DEVICE_LOCK(_clk) \ + CLKDEV_DEVICE_LOCK(clknode_get_device(_clk)) +#define DEVICE_UNLOCK(_clk) \ + CLKDEV_DEVICE_UNLOCK(clknode_get_device(_clk)) + +/* Reset functions */ + +int +jh7110_reset_assert(device_t dev, intptr_t id, bool assert) +{ + struct jh7110_clkgen_softc *sc; + uint32_t regvalue, offset, bitmask = 1UL << id % 32; + + sc = device_get_softc(dev); + offset = sc->reset_selector_offset + id / 32 * 4; + + mtx_lock(&sc->mtx); + + regvalue = READ4(sc, offset); + + if (assert) + regvalue |= bitmask; + else + regvalue &= ~bitmask; + WRITE4(sc, offset, regvalue); + + mtx_unlock(&sc->mtx); + + return (0); +} + +int +jh7110_reset_is_asserted(device_t dev, intptr_t id, bool *reset) +{ + struct jh7110_clkgen_softc *sc; + uint32_t regvalue, offset, bitmask; + + sc = device_get_softc(dev); + offset = sc->reset_status_offset + id / 32 * 4; + + mtx_lock(&sc->mtx); + + regvalue = READ4(sc, offset); + bitmask = 1UL << id % 32; + + mtx_unlock(&sc->mtx); + + *reset = (regvalue & bitmask) == 0; + + return (0); +} + +/* Clock functions */ + +static int +jh7110_clk_init(struct clknode *clk, device_t dev) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t reg; + int idx = 0; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if (sc_clk->flags & JH7110_CLK_HAS_MUX) { + DEVICE_LOCK(clk); + reg = READ4(sc, sc_clk->offset); + DEVICE_UNLOCK(clk); + idx = (reg & JH7110_MUX_MASK) >> JH7110_MUX_SHIFT; + } + + clknode_init_parent_idx(clk, idx); + + return (0); +} + +static int +jh7110_clk_set_gate(struct clknode *clk, bool enable) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t reg; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if ((sc_clk->flags & JH7110_CLK_HAS_GATE) == 0) + return (0); + + DEVICE_LOCK(clk); + + reg = READ4(sc, sc_clk->offset); + if (enable) + reg |= (1 << JH7110_ENABLE_SHIFT); + else + reg &= ~(1 << JH7110_ENABLE_SHIFT); + WRITE4(sc, sc_clk->offset, reg); + + DEVICE_UNLOCK(clk); + + return (0); +} + +static int +jh7110_clk_set_mux(struct clknode *clk, int idx) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t reg; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if ((sc_clk->flags & JH7110_CLK_HAS_MUX) == 0) + return (ENXIO); + + /* Checking index size */ + if ((idx & (JH7110_MUX_MASK >> JH7110_MUX_SHIFT)) != idx) + return (EINVAL); + + DEVICE_LOCK(clk); + + reg = READ4(sc, sc_clk->offset) & ~JH7110_MUX_MASK; + reg |= idx << JH7110_MUX_SHIFT; + WRITE4(sc, sc_clk->offset, reg); + + DEVICE_UNLOCK(clk); + + return (0); +} + +static int +jh7110_clk_recalc_freq(struct clknode *clk, uint64_t *freq) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t divisor; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + /* Returning error here causes panic */ + if ((sc_clk->flags & JH7110_CLK_HAS_DIV) == 0) + return (0); + + DEVICE_LOCK(clk); + + divisor = READ4(sc, sc_clk->offset) & JH7110_DIV_MASK; + + DEVICE_UNLOCK(clk); + + if (divisor) + *freq = *freq / divisor; + else + *freq = 0; + + return (0); +} + +static int +jh7110_clk_set_freq(struct clknode *clk, uint64_t fin, uint64_t *fout, + int flags, int *done) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t divisor; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if ((sc_clk->flags & JH7110_CLK_HAS_DIV) == 0) + return (0); + + divisor = MIN(MAX(DIV_ROUND_CLOSEST(fin, *fout), 1UL), sc_clk->d_max); + + if (flags & CLK_SET_DRYRUN) + goto done; + + DEVICE_LOCK(clk); + + divisor |= READ4(sc, sc_clk->offset) & ~JH7110_DIV_MASK; + WRITE4(sc, sc_clk->offset, divisor); + + DEVICE_UNLOCK(clk); + +done: + *fout = divisor; + *done = 1; + + return (0); +} + +static clknode_method_t jh7110_clknode_methods[] = { + /* Device interface */ + CLKNODEMETHOD(clknode_init, jh7110_clk_init), + CLKNODEMETHOD(clknode_set_gate, jh7110_clk_set_gate), + CLKNODEMETHOD(clknode_set_mux, jh7110_clk_set_mux), + CLKNODEMETHOD(clknode_recalc_freq, jh7110_clk_recalc_freq), + CLKNODEMETHOD(clknode_set_freq, jh7110_clk_set_freq), + CLKNODEMETHOD_END +}; + +DEFINE_CLASS_1(jh7110_clknode, jh7110_clknode_class, jh7110_clknode_methods, + sizeof(struct jh7110_clk_sc), clknode_class); + +int +jh7110_clk_register(struct clkdom *clkdom, const struct jh7110_clk_def *clkdef) +{ + struct clknode *clk; + struct jh7110_clk_sc *sc; + + clk = clknode_create(clkdom, &jh7110_clknode_class, &clkdef->clkdef); + if (clk == NULL) + return (-1); + + sc = clknode_get_softc(clk); + + sc->offset = clkdef->clkdef.id * REG_SIZE; + + sc->flags = clkdef->flags; + sc->id = clkdef->clkdef.id; + sc->d_max = clkdef->d_max; + + clknode_register(clkdom, clk); + + return (0); +} diff --git a/sys/dev/clk/starfive/jh7110_clk.h b/sys/dev/clk/starfive/jh7110_clk.h new file mode 100644 index 000000000000..882f82032d44 --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk.h @@ -0,0 +1,72 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2024 Jari Sihvola + */ + +#ifndef _JH7110_CLK_H_ +#define _JH7110_CLK_H_ + +#include + +#define JH7110_CLK_HAS_GATE 0x01 +#define JH7110_CLK_HAS_MUX 0x02 +#define JH7110_CLK_HAS_DIV 0x04 +#define JH7110_CLK_HAS_INV 0x08 + +#define AONCRG_RESET_SELECTOR 0x38 +#define AONCRG_RESET_STATUS 0x3c +#define STGCRG_RESET_SELECTOR 0x74 +#define STGCRG_RESET_STATUS 0x78 +#define SYSCRG_RESET_SELECTOR 0x2f8 +#define SYSCRG_RESET_STATUS 0x308 + +struct jh7110_clkgen_softc { + struct mtx mtx; + struct clkdom *clkdom; + struct resource *mem_res; + uint32_t reset_status_offset; + uint32_t reset_selector_offset; +}; + +struct jh7110_clk_def { + struct clknode_init_def clkdef; + uint32_t offset; + uint32_t flags; + uint64_t d_max; +}; + +#define JH7110_CLK(_idx, _name, _pn, _d_max, _flags) \ +{ \ + .clkdef.id = _idx, \ + .clkdef.name = _name, \ + .clkdef.parent_names = _pn, \ + .clkdef.parent_cnt = nitems(_pn), \ + .clkdef.flags = CLK_NODE_STATIC_STRINGS, \ + .flags = _flags, \ + .d_max = _d_max, \ +} + +#define JH7110_GATE(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_GATE) +#define JH7110_MUX(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_MUX) +#define JH7110_DIV(_idx, _name, _pn, _d_max) \ + JH7110_CLK(_idx, _name, _pn, _d_max, JH7110_CLK_HAS_DIV) +#define JH7110_GATEMUX(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_GATE | \ + JH7110_CLK_HAS_MUX) +#define JH7110_GATEDIV(_idx, _name, _pn, _d_max) \ + JH7110_CLK(_idx, _name, _pn, _d_max, JH7110_CLK_HAS_GATE | \ + JH7110_CLK_HAS_DIV) +#define JH7110_INV(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_INV) + +int jh7110_clk_register(struct clkdom *clkdom, + const struct jh7110_clk_def *clkdef); +int jh7110_ofw_map(struct clkdom *clkdom, uint32_t ncells, phandle_t *cells, + struct clknode **clk); +int jh7110_reset_is_asserted(device_t dev, intptr_t id, bool *reset); +int jh7110_reset_assert(device_t dev, intptr_t id, bool assert); + +#endif /* _JH7110_CLK_H_ */ diff --git a/sys/dev/clk/starfive/jh7110_clk_aon.c b/sys/dev/clk/starfive/jh7110_clk_aon.c new file mode 100644 index 000000000000..21b15142835e --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk_aon.c @@ -0,0 +1,168 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright 2016 Michal Meloun + * Copyright (c) 2020 Oskar Holmlund + * Copyright (c) 2024 Jari Sihvola + */ + +/* Clocks for JH7110 AON group. PLL driver must be attached before this. */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include + +#include + +#include "clkdev_if.h" +#include "hwreset_if.h" + +static struct ofw_compat_data compat_data[] = { + { "starfive,jh7110-aoncrg", 1 }, + { NULL, 0 } +}; + +static struct resource_spec res_spec[] = { + { SYS_RES_MEMORY, 0, RF_ACTIVE | RF_SHAREABLE }, + RESOURCE_SPEC_END +}; + +/* parents */ +static const char *gmac0_axi_p[] = { "stg_axiahb" }; +static const char *gmac0_ahb_p[] = { "stg_axiahb" }; +static const char *gmac0_tx_inv_p[] = { "gmac0_tx" }; +static const char *gmac0_tx_p[] = { "gmac0_gtxclk", "gmac0_rmii_rtx" }; +static const char *gmac0_rmii_rtx_p[] = { "gmac0_rmii_refin" }; + +/* AON clocks */ +static const struct jh7110_clk_def aon_clks[] = { + JH7110_GATE(JH7110_AONCLK_GMAC0_AXI, "gmac0_axi", gmac0_axi_p), + JH7110_GATE(JH7110_AONCLK_GMAC0_AHB, "gmac0_ahb", gmac0_ahb_p), + JH7110_GATEMUX(JH7110_AONCLK_GMAC0_TX, "gmac0_tx", gmac0_tx_p), + JH7110_INV(JH7110_AONCLK_GMAC0_TX_INV, "gmac0_tx_inv", gmac0_tx_inv_p), + JH7110_DIV(JH7110_AONCLK_GMAC0_RMII_RTX, "gmac0_rmii_rtx", + gmac0_rmii_rtx_p, 30), +}; + +static int +jh7110_clk_aon_probe(device_t dev) +{ + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0) + return (ENXIO); + + device_set_desc(dev, "StarFive JH7110 AON clock generator"); + + return (BUS_PROBE_DEFAULT); +} + +static int +jh7110_clk_aon_attach(device_t dev) +{ + struct jh7110_clkgen_softc *sc; + int err; + + sc = device_get_softc(dev); + + sc->reset_status_offset = AONCRG_RESET_STATUS; + sc->reset_selector_offset = AONCRG_RESET_SELECTOR; + + mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); + + err = bus_alloc_resources(dev, res_spec, &sc->mem_res); + if (err != 0) { + device_printf(dev, "Couldn't allocate resources, error %d\n", + err); + return (ENXIO); + } + + sc->clkdom = clkdom_create(dev); + if (sc->clkdom == NULL) { + device_printf(dev, "Couldn't create clkdom, error %d\n", err); + return (ENXIO); + } + + for (int i = 0; i < nitems(aon_clks); i++) { + err = jh7110_clk_register(sc->clkdom, &aon_clks[i]); + if (err != 0) { + device_printf(dev, + "Couldn't register clk %s, error %d\n", + aon_clks[i].clkdef.name, err); + return (ENXIO); + } + } + + if (clkdom_finit(sc->clkdom) != 0) + panic("Cannot finalize clkdom initialization\n"); + + if (bootverbose) + clkdom_dump(sc->clkdom); + + hwreset_register_ofw_provider(dev); + + return (0); +} + +static void +jh7110_clk_aon_device_lock(device_t dev) +{ + struct jh7110_clkgen_softc *sc; + + sc = device_get_softc(dev); + mtx_lock(&sc->mtx); +} + +static void +jh7110_clk_aon_device_unlock(device_t dev) +{ + struct jh7110_clkgen_softc *sc; + + sc = device_get_softc(dev); + mtx_unlock(&sc->mtx); +} + +static int +jh7110_clk_aon_detach(device_t dev) +{ + /* Detach not supported */ + return (EBUSY); +} + +static device_method_t jh7110_clk_aon_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, jh7110_clk_aon_probe), + DEVMETHOD(device_attach, jh7110_clk_aon_attach), + DEVMETHOD(device_detach, jh7110_clk_aon_detach), + + /* clkdev interface */ + DEVMETHOD(clkdev_device_lock, jh7110_clk_aon_device_lock), + DEVMETHOD(clkdev_device_unlock, jh7110_clk_aon_device_unlock), + + /* Reset interface */ + DEVMETHOD(hwreset_assert, jh7110_reset_assert), + DEVMETHOD(hwreset_is_asserted, jh7110_reset_is_asserted), + + DEVMETHOD_END +}; + +DEFINE_CLASS_0(jh7110_aon, jh7110_aon_driver, jh7110_clk_aon_methods, + sizeof(struct jh7110_clkgen_softc)); +EARLY_DRIVER_MODULE(jh7110_aon, simplebus, jh7110_aon_driver, 0, 0, + BUS_PASS_BUS + BUS_PASS_ORDER_LATE); +MODULE_VERSION(jh7110_aon, 1); diff --git a/sys/dev/clk/starfive/jh7110_clk_pll.c b/sys/dev/clk/starfive/jh7110_clk_pll.c new file mode 100644 index 000000000000..5882f33984ae --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk_pll.c @@ -0,0 +1,386 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2024 Jari Sihvola + * Copyright (c) 2024 The FreeBSD Foundation + * + * Portions of this software were developed by Mitchell Horne + * under sponsorship from the FreeBSD Foundation. + */ + +#include +#include +#include +#include +#include +#include + +#include + +#include +#include +#include + +#include +#include +#include +#include + +#include + +#include "clkdev_if.h" +#include "syscon_if.h" + +#define JH7110_SYS_SYSCON_SYSCFG24 0x18 +#define JH7110_SYS_SYSCON_SYSCFG28 0x1c +#define JH7110_SYS_SYSCON_SYSCFG32 0x20 +#define JH7110_SYS_SYSCON_SYSCFG36 0x24 +#define JH7110_SYS_SYSCON_SYSCFG40 0x28 +#define JH7110_SYS_SYSCON_SYSCFG44 0x2c +#define JH7110_SYS_SYSCON_SYSCFG48 0x30 +#define JH7110_SYS_SYSCON_SYSCFG52 0x34 + +#define DEVICE_LOCK(_clk) \ + CLKDEV_DEVICE_LOCK(clknode_get_device(_clk)) +#define DEVICE_UNLOCK(_clk) \ + CLKDEV_DEVICE_UNLOCK(clknode_get_device(_clk)) + +#define PLL_MASK_FILL(sc, id) \ +do { \ + sc->dacpd_mask = PLL## id ##_DACPD_MASK; \ + sc->dsmpd_mask = PLL## id ##_DSMPD_MASK; \ + sc->fbdiv_mask = PLL## id ##_FBDIV_MASK; \ + sc->frac_mask = PLL## id ##_FRAC_MASK; \ + sc->prediv_mask = PLL## id ##_PREDIV_MASK; \ + sc->postdiv1_mask = PLL## id ##_POSTDIV1_MASK; \ +} while (0) + +#define PLL_SHIFT_FILL(sc, id) \ +do { \ + sc->dacpd_shift = PLL## id ##_DACPD_SHIFT; \ + sc->dsmpd_shift = PLL## id ##_DSMPD_SHIFT; \ + sc->fbdiv_shift = PLL## id ##_FBDIV_SHIFT; \ + sc->frac_shift = PLL## id ##_FRAC_SHIFT; \ + sc->prediv_shift = PLL## id ##_PREDIV_SHIFT; \ + sc->postdiv1_shift = PLL## id ##_POSTDIV1_SHIFT; \ +} while (0) + +struct jh7110_clk_pll_softc { + struct mtx mtx; + struct clkdom *clkdom; + struct syscon *syscon; +}; + +struct jh7110_pll_clknode_softc { + uint32_t dacpd_offset; + uint32_t dsmpd_offset; + uint32_t fbdiv_offset; + uint32_t frac_offset; + uint32_t prediv_offset; + uint32_t postdiv1_offset; + + uint32_t dacpd_mask; + uint32_t dsmpd_mask; + uint32_t fbdiv_mask; + uint32_t frac_mask; + uint32_t prediv_mask; + uint32_t postdiv1_mask; + + uint32_t dacpd_shift; + uint32_t dsmpd_shift; + uint32_t fbdiv_shift; + uint32_t frac_shift; + uint32_t prediv_shift; + uint32_t postdiv1_shift; + + const struct jh7110_pll_syscon_value *syscon_arr; + int syscon_nitems; +}; + +static const char *pll_parents[] = { "osc" }; + +static struct jh7110_clk_def pll_out_clks[] = { + { + .clkdef.id = JH7110_PLLCLK_PLL0_OUT, + .clkdef.name = "pll0_out", + .clkdef.parent_names = pll_parents, + .clkdef.parent_cnt = nitems(pll_parents), + .clkdef.flags = CLK_NODE_STATIC_STRINGS, + }, + { + .clkdef.id = JH7110_PLLCLK_PLL1_OUT, + .clkdef.name = "pll1_out", + .clkdef.parent_names = pll_parents, + .clkdef.parent_cnt = nitems(pll_parents), + .clkdef.flags = CLK_NODE_STATIC_STRINGS, + }, + { + .clkdef.id = JH7110_PLLCLK_PLL2_OUT, + .clkdef.name = "pll2_out", + .clkdef.parent_names = pll_parents, + .clkdef.parent_cnt = nitems(pll_parents), + .clkdef.flags = CLK_NODE_STATIC_STRINGS, + }, +}; + +static int jh7110_clk_pll_register(struct clkdom *clkdom, + struct jh7110_clk_def *clkdef); + +static int +jh7110_clk_pll_recalc_freq(struct clknode *clk, uint64_t *freq) +{ + struct jh7110_clk_pll_softc *sc; + struct jh7110_pll_clknode_softc *clk_sc; + uint32_t dacpd, dsmpd, fbdiv, prediv, postdiv1; + uint64_t frac, fcal = 0; + + sc = device_get_softc(clknode_get_device(clk)); + clk_sc = clknode_get_softc(clk); + + DEVICE_LOCK(clk); + + dacpd = (SYSCON_READ_4(sc->syscon, clk_sc->dacpd_offset) & clk_sc->dacpd_mask) >> + clk_sc->dacpd_shift; + dsmpd = (SYSCON_READ_4(sc->syscon, clk_sc->dsmpd_offset) & clk_sc->dsmpd_mask) >> + clk_sc->dsmpd_shift; + fbdiv = (SYSCON_READ_4(sc->syscon, clk_sc->fbdiv_offset) & clk_sc->fbdiv_mask) >> + clk_sc->fbdiv_shift; + prediv = (SYSCON_READ_4(sc->syscon, clk_sc->prediv_offset) & clk_sc->prediv_mask) >> + clk_sc->prediv_shift; + postdiv1 = (SYSCON_READ_4(sc->syscon, clk_sc->postdiv1_offset) & + clk_sc->postdiv1_mask) >> clk_sc->postdiv1_shift; + frac = (SYSCON_READ_4(sc->syscon, clk_sc->frac_offset) & clk_sc->frac_mask) >> + clk_sc->frac_shift; + + DEVICE_UNLOCK(clk); + + /* dacpd and dsmpd both being 0 entails Fraction Multiple Mode */ + if (dacpd == 0 && dsmpd == 0) + fcal = frac * FRAC_PATR_SIZE / (1 << 24); + + *freq = *freq / FRAC_PATR_SIZE * (fbdiv * FRAC_PATR_SIZE + fcal) / + prediv / (1 << postdiv1); + + return (0); +} + +static int +jh7110_clk_pll_set_freq(struct clknode *clk, uint64_t fin, uint64_t *fout, + int flags, int *done) +{ + struct jh7110_clk_pll_softc *sc; + struct jh7110_pll_clknode_softc *clk_sc; + const struct jh7110_pll_syscon_value *syscon_val = NULL; + + sc = device_get_softc(clknode_get_device(clk)); + clk_sc = clknode_get_softc(clk); + + for (int i = 0; i != clk_sc->syscon_nitems; i++) { + if (*fout == clk_sc->syscon_arr[i].freq) { + syscon_val = &clk_sc->syscon_arr[i]; + } + } + + if (syscon_val == NULL) { + printf("%s: tried to set an unknown frequency %ju for %s\n", + __func__, *fout, clknode_get_name(clk)); + return (EINVAL); + } + + if ((flags & CLK_SET_DRYRUN) != 0) { + *done = 1; + return (0); + } + + DEVICE_LOCK(clk); + + SYSCON_MODIFY_4(sc->syscon, clk_sc->dacpd_offset, clk_sc->dacpd_mask, + syscon_val->dacpd << clk_sc->dacpd_shift & clk_sc->dacpd_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->dsmpd_offset, clk_sc->dsmpd_mask, + syscon_val->dsmpd << clk_sc->dsmpd_shift & clk_sc->dsmpd_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->prediv_offset, clk_sc->prediv_mask, + syscon_val->prediv << clk_sc->prediv_shift & clk_sc->prediv_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->fbdiv_offset, clk_sc->fbdiv_mask, + syscon_val->fbdiv << clk_sc->fbdiv_shift & clk_sc->fbdiv_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->postdiv1_offset, + clk_sc->postdiv1_mask, (syscon_val->postdiv1 >> 1) << + clk_sc->postdiv1_shift & clk_sc->postdiv1_mask); + + if (!syscon_val->dacpd && !syscon_val->dsmpd) { + SYSCON_MODIFY_4(sc->syscon, clk_sc->frac_offset, clk_sc->frac_mask, + syscon_val->frac << clk_sc->frac_shift & clk_sc->frac_mask); + } + + DEVICE_UNLOCK(clk); + + *done = 1; + return (0); +} + +static int +jh7110_clk_pll_init(struct clknode *clk, device_t dev) +{ + clknode_init_parent_idx(clk, 0); + + return (0); +} + +static int +jh7110_clk_pll_probe(device_t dev) +{ + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + if (!ofw_bus_is_compatible(dev, "starfive,jh7110-pll")) + return (ENXIO); + + device_set_desc(dev, "StarFive JH7110 PLL clock generator"); + + return (BUS_PROBE_DEFAULT); +} + +static int +jh7110_clk_pll_attach(device_t dev) +{ + struct jh7110_clk_pll_softc *sc; + int error; + + sc = device_get_softc(dev); + + mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); + + sc->clkdom = clkdom_create(dev); + if (sc->clkdom == NULL) { + device_printf(dev, "Couldn't create clkdom\n"); + return (ENXIO); + } + + error = syscon_get_by_ofw_node(dev, OF_parent(ofw_bus_get_node(dev)), + &sc->syscon); + if (error != 0) { + device_printf(dev, "Couldn't get syscon handle of parent\n"); + return (error); + } + + for (int i = 0; i < nitems(pll_out_clks); i++) { + error = jh7110_clk_pll_register(sc->clkdom, &pll_out_clks[i]); + if (error != 0) + device_printf(dev, "Couldn't register clock %s: %d\n", + pll_out_clks[i].clkdef.name, error); + } + + error = clkdom_finit(sc->clkdom); + if (error != 0) { + device_printf(dev, "clkdom_finit() returned %d\n", error); + } + + if (bootverbose) + clkdom_dump(sc->clkdom); + + return (0); +} + +static void +jh7110_clk_pll_device_lock(device_t dev) +{ + struct jh7110_clk_pll_softc *sc; + + sc = device_get_softc(dev); + mtx_lock(&sc->mtx); +} + +static void +jh7110_clk_pll_device_unlock(device_t dev) +{ + struct jh7110_clk_pll_softc *sc; + + sc = device_get_softc(dev); + mtx_unlock(&sc->mtx); +} + +static clknode_method_t jh7110_pllnode_methods[] = { + /* Device interface */ + CLKNODEMETHOD(clknode_init, jh7110_clk_pll_init), + CLKNODEMETHOD(clknode_recalc_freq, jh7110_clk_pll_recalc_freq), + CLKNODEMETHOD(clknode_set_freq, jh7110_clk_pll_set_freq), + + CLKNODEMETHOD_END +}; + +static device_method_t jh7110_clk_pll_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, jh7110_clk_pll_probe), + DEVMETHOD(device_attach, jh7110_clk_pll_attach), + + /* clkdev interface */ + DEVMETHOD(clkdev_device_lock, jh7110_clk_pll_device_lock), + DEVMETHOD(clkdev_device_unlock, jh7110_clk_pll_device_unlock), + + DEVMETHOD_END +}; + +DEFINE_CLASS_1(jh7110_pllnode, jh7110_pllnode_class, jh7110_pllnode_methods, + sizeof(struct jh7110_pll_clknode_softc), clknode_class); +DEFINE_CLASS_0(jh7110_clk_pll, jh7110_clk_pll_driver, jh7110_clk_pll_methods, + sizeof(struct jh7110_clk_pll_softc)); +EARLY_DRIVER_MODULE(jh7110_clk_pll, simplebus, jh7110_clk_pll_driver, 0, 0, + BUS_PASS_BUS + BUS_PASS_ORDER_EARLY); +MODULE_VERSION(jh7110_clk_pll, 1); + +int +jh7110_clk_pll_register(struct clkdom *clkdom, struct jh7110_clk_def *clkdef) +{ + struct clknode *clk = NULL; + struct jh7110_pll_clknode_softc *sc; + + clk = clknode_create(clkdom, &jh7110_pllnode_class, &clkdef->clkdef); + if (clk == NULL) + return (1); + + sc = clknode_get_softc(clk); + + switch (clkdef->clkdef.id) { + case JH7110_PLLCLK_PLL0_OUT: + sc->syscon_arr = jh7110_pll0_syscon_freq; + sc->syscon_nitems = nitems(jh7110_pll0_syscon_freq); + PLL_MASK_FILL(sc, 0); + PLL_SHIFT_FILL(sc, 0); + sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG24; + sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG24; + sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG28; + sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG32; + sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG32; + break; + case JH7110_PLLCLK_PLL1_OUT: + sc->syscon_arr = jh7110_pll1_syscon_freq; + sc->syscon_nitems = nitems(jh7110_pll1_syscon_freq); + PLL_MASK_FILL(sc, 1); + PLL_SHIFT_FILL(sc, 1); + sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG40; + sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG40; + break; + case JH7110_PLLCLK_PLL2_OUT: + sc->syscon_arr = jh7110_pll2_syscon_freq; + sc->syscon_nitems = nitems(jh7110_pll2_syscon_freq); + PLL_MASK_FILL(sc, 2); + PLL_SHIFT_FILL(sc, 2); + sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG48; + sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG52; + sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG48; + break; + default: + return (EINVAL); + } + + clknode_register(clkdom, clk); + + return (0); +} diff --git a/sys/dev/clk/starfive/jh7110_clk_pll.h b/sys/dev/clk/starfive/jh7110_clk_pll.h new file mode 100644 index 000000000000..700072a4b465 --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk_pll.h @@ -0,0 +1,211 @@ +/* SPDX-License-Identifier: MIT */ +/* + * StarFive JH7110 PLL Clock Generator Driver + * + * Copyright (C) 2022 Xingyu Wu + */ + +#define PLL0_DACPD_SHIFT 24 +#define PLL0_DACPD_MASK 0x1000000 +#define PLL_0_DACPD_SHIFT 24 +#define PLL_0_DACPD_MASK 0x1000000 + +#define PLL0_DSMPD_SHIFT 25 +#define PLL0_DSMPD_MASK 0x2000000 +#define PLL0_FBDIV_SHIFT 0 +#define PLL0_FBDIV_MASK 0xFFF +#define PLL0_FRAC_SHIFT 0 +#define PLL0_FRAC_MASK 0xFFFFFF +#define PLL0_POSTDIV1_SHIFT 28 +#define PLL0_POSTDIV1_MASK 0x30000000 +#define PLL0_PREDIV_SHIFT 0 *** 468 LINES SKIPPED *** From nobody Tue May 7 16:04:30 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjlL5C29z5J7NS; Tue, 07 May 2024 16:04: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 4VYjlL3rLGz4QMC; Tue, 7 May 2024 16:04:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EkOxXOB6T3V2tIWqRpEL/W0xbq1XYM8Pb1orEdwdj1Y=; b=fevPjw7Xe2kzX53MKiVagtt0Ck3lVzJa4e0gMXMFMhMq98RJJrM5wboCMe3rOvlgizMDGw itfXdDsoQ3aqBjdTI1V0WNDt07VbJQKZuEnk3drN0jrriULHAiJ2D03BkSMhkxo36PhEcL 7kpiVDniK0QlVp9YU3mdFMSMHDJitM2ccgcdH/n5lTcWPv8s9oAvNnkcldk4Di9tMTynFK xAbqwQkMU4FBhQAtqF86f0KLIVLhddfAXJLAHfaCjGvw4zZcyqmhOBgavlwqA8t1fAbrRV kwzTD53UXCdX7jpKhitiO+UlZ2YbHofLRULwyiUk9u/8NLE6DDHnZublP4zKww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715097870; a=rsa-sha256; cv=none; b=Wqz9jS1UPrpnfnhb/V3N8fKnuPjtGKAh7NfTS8vHW/rO1BAG3ym3zPl8G928g8QqMBKHJX CjbGCDdICRNe+sVqyY8dS7sdSCjy1+ilLilO9DKWqAPSHVlZ4FA/0fnoW5i3T+YKzkYoT7 nEik2Gc4jBORRCY7pJktjm1qTzRBcylxI1h80OfSJUVpbHJKDErKmWdsO1XrCrdg7+FIow 5qj/r7x00ntgpJQE5rkNc/pOPL0tXHQpkBpzb7JOVhwv2r0TXoJXakJE5fe70jAMwZfCvq Apt/RNUOD4OWHGT7qih5AlPm9T2K5BgUyQ5Q1JivXCHbsw7FBhpTvH+MrQzWyg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715097870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EkOxXOB6T3V2tIWqRpEL/W0xbq1XYM8Pb1orEdwdj1Y=; b=m65q9Ed+x/RPuyq9T08BaNunME+XlvPUDgsNfHDinig+IB/7S27AAIdGjiQBmXA9rpqYOF dfBgYm+9hpG93XX5H6hZ/9vNhQpraAwxohFwC0xPBttKnlCE+mYnTRR5sipoataIU88gi4 20Lo4sj9Hti9giigU3u9PcYz0ZNFD2oW5Z8oUxhDw1Mf/yC3md3Y4gkhmXy1ePBIsgWEFV YxGJHdpkJSV0qYZ2rTzYfEWVM5BmaunPxChOPs9ERRmGLpwj3XedGWMKrvOto8cK8rEV6H ungx6HKOhh7oxpPbVOWm2obco8pi59R+2vyc2nORH6V7RfFqTJh9+7PvjD99Pg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjlL3S9kznZs; Tue, 7 May 2024 16:04: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 447G4UGE049729; Tue, 7 May 2024 16:04:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447G4UOe049727; Tue, 7 May 2024 16:04:30 GMT (envelope-from git) Date: Tue, 7 May 2024 16:04:30 GMT Message-Id: <202405071604.447G4UOe049727@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: c8b472aa4b9d - main - jh7110: enable MMC driver List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c8b472aa4b9da064223cc134ad06a08defb23e6f Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=c8b472aa4b9da064223cc134ad06a08defb23e6f commit c8b472aa4b9da064223cc134ad06a08defb23e6f Author: Mitchell Horne AuthorDate: 2024-03-04 18:38:43 +0000 Commit: Mitchell Horne CommitDate: 2024-05-07 16:02:57 +0000 jh7110: enable MMC driver Add a variant of the existing dwmmc driver, and enable it in the GENERIC kernel. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D44026 --- sys/dev/mmc/host/dwmmc_starfive.c | 114 ++++++++++++++++++++++++++++++++++++++ sys/riscv/conf/std.starfive | 4 ++ sys/riscv/starfive/files.starfive | 1 + 3 files changed, 119 insertions(+) diff --git a/sys/dev/mmc/host/dwmmc_starfive.c b/sys/dev/mmc/host/dwmmc_starfive.c new file mode 100644 index 000000000000..ab90da3b2b57 --- /dev/null +++ b/sys/dev/mmc/host/dwmmc_starfive.c @@ -0,0 +1,114 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright 2017 Emmanuel Vadot + * Copyright (c) 2024 The FreeBSD Foundation + * + * Portions of this software were developed by Mitchell Horne + * under sponsorship from the FreeBSD Foundation. + */ + +#include +#include +#include +#include +#include +#include + +#include + +#include +#include + +#include + +#include + +#include "opt_mmccam.h" + +enum dwmmc_type { + DWMMC_GENERIC = 1, + DWMMC_JH7110 +}; + +static struct ofw_compat_data compat_data[] = { + {"snps,dw-mshc", DWMMC_GENERIC}, + {"starfive,jh7110-mmc", DWMMC_JH7110}, + {NULL, 0} +}; + +static int dwmmc_starfive_update_ios(struct dwmmc_softc *sc, + struct mmc_ios *ios) +{ + int err; + + if (ios->clock != 0 && ios->clock != sc->bus_hz) { + err = clk_set_freq(sc->ciu, ios->clock, CLK_SET_ROUND_DOWN); + if (err != 0) { + printf("%s, Failed to set freq for ciu clock\n", + __func__); + return (err); + } + sc->bus_hz = ios->clock; + } + + return (0); +} + +static int +starfive_dwmmc_probe(device_t dev) +{ + phandle_t node; + int type; + + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + type = ofw_bus_search_compatible(dev, compat_data)->ocd_data; + if (type == 0) + return (ENXIO); + + /* + * If we matched the generic compat string, check the top-level board + * compatible, to ensure we should actually use the starfive driver. + */ + if (type == DWMMC_GENERIC) { + node = OF_finddevice("/"); + if (!ofw_bus_node_is_compatible(node, "starfive,jh7110")) + return (ENXIO); + } + + device_set_desc(dev, "Synopsys DesignWare Mobile Storage " + "Host Controller (StarFive)"); + + return (BUS_PROBE_VENDOR); +} + +static int +starfive_dwmmc_attach(device_t dev) +{ + struct dwmmc_softc *sc; + + sc = device_get_softc(dev); + sc->update_ios = &dwmmc_starfive_update_ios; + + return (dwmmc_attach(dev)); +} + +static device_method_t starfive_dwmmc_methods[] = { + /* bus interface */ + DEVMETHOD(device_probe, starfive_dwmmc_probe), + DEVMETHOD(device_attach, starfive_dwmmc_attach), + DEVMETHOD(device_detach, dwmmc_detach), + + DEVMETHOD_END +}; + +DEFINE_CLASS_1(starfive_dwmmc, starfive_dwmmc_driver, starfive_dwmmc_methods, + sizeof(struct dwmmc_softc), dwmmc_driver); + +DRIVER_MODULE(starfive_dwmmc, simplebus, starfive_dwmmc_driver, 0, 0); + +#ifndef MMCCAM +MMC_DECLARE_BRIDGE(starfive_dwmmc); +#endif diff --git a/sys/riscv/conf/std.starfive b/sys/riscv/conf/std.starfive index 578110dfd5a9..e4e3e7c46f3e 100644 --- a/sys/riscv/conf/std.starfive +++ b/sys/riscv/conf/std.starfive @@ -4,4 +4,8 @@ device uart_snps # DesignWare Synopsis UART driver +# MMC/SD/SDIO Card slot support +device dwmmc +device dwmmc_starfive + files "../starfive/files.starfive" diff --git a/sys/riscv/starfive/files.starfive b/sys/riscv/starfive/files.starfive index e11acba9dab1..d867dee1099b 100644 --- a/sys/riscv/starfive/files.starfive +++ b/sys/riscv/starfive/files.starfive @@ -2,5 +2,6 @@ dev/clk/starfive/jh7110_clk.c standard dev/clk/starfive/jh7110_clk_aon.c standard dev/clk/starfive/jh7110_clk_pll.c standard dev/clk/starfive/jh7110_clk_sys.c standard +dev/mmc/host/dwmmc_starfive.c optional dwmmc_starfive fdt riscv/starfive/starfive_syscon.c standard From nobody Tue May 7 16:08:17 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjqk2Bbzz5J7mP; Tue, 07 May 2024 16:08: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 4VYjqk0HVFz4RxZ; Tue, 7 May 2024 16: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=1715098098; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B4GwGhmOj1CHx8XWhufI7WLob3G3s3EBG3ISBP8MSZU=; b=jAezEWueqL/lgkOAmqcP7oWg3oc+8UL6OYItPbccJG9OdfepaJOXhIfSxm2HUPqeynqM36 GMmPXo/gXcdkQ7QscQEFWn5NO1ZEouux2OgelIqLwlGWgEkjvIK8/aN7TWMOAji/xUaltQ Q+BefZtuX++igYK4yFENrq21G5uPBHHQOE5wQKBk5KgRdQ6dMicQXfKpxw9gr4rszya1iG 1Nxu+vITDJQHHesrD9TFNChQGbZMfYuwS3Z/aY2rojW5HXKkFD1BL5ylaegy3qAnx/4cdh pE/vxi77W54RG1JoqKbhCHn0NfwNXplEZBJDDCFTguaEDRm/ypSO/NjSZ/4Mhw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715098098; a=rsa-sha256; cv=none; b=pxVphpx+5ZRMtVtpVI8bHUDqN/NeqX5trSkqclXESi08LtrIexCyTV2VIice74dF9pLWzu dZQ4qQklTov2FyN01iDhrYZ7mNQAwN9rvogWyob87jOOtvCK0JvhBK67kDGq/ewY9Bxtxo K95f1LIcOtlGMLjZUiCLmDeK65HTvrjnXhB9FXR8g8zX7Z5l65jAlWgwyJHn6MHhx5a50I nA8I1DJXIYcLYuvSo+o59cRAHwG4ItUAjwMBCRRCAe+Konk2PxLKCZIESKwuQOdyQ/nje/ jzPjW2xNpbbCekGK7pbL2y1+6HaRIOpmVQqlz8WIs8b52PNH8EMMnNwVd7zKpw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715098098; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B4GwGhmOj1CHx8XWhufI7WLob3G3s3EBG3ISBP8MSZU=; b=x0Pp84Tw2IZFU/T5VRCCUPWFArD2upygza66AH1HzlkadV7IVBHL65DMtgSR2NJjRLP1I6 X/M+1us9bmTBPMdnM8AKzAoiEArTIUGurmIuU+N/2SFRnwR6eInq6b78AwWZz4SRkDzH2i +R4RW0ucXGb/IdaGuyNcE75hibelPPuk97z3QlkYL6P7L6M6tAzzbHDQZdBFQckSnCWk1y Fqt8Hkh6IvlepdEUnGQiC3A5PLMTpVast6omO2KRVlygHlzw0Mjgxa+3Urs6SCOSUz7isr 0JPgw60HxnuhBGdvjInjJmj27sTzQWiGPxkefX82Pe+6/Sl6c2dTEGm/il1dww== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjqj70tSznws; Tue, 7 May 2024 16:08: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 447G8Hwl050393; Tue, 7 May 2024 16:08:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447G8H4d050390; Tue, 7 May 2024 16:08:17 GMT (envelope-from git) Date: Tue, 7 May 2024 16:08:17 GMT Message-Id: <202405071608.447G8H4d050390@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 6ea05fce8e2e - main - Revert "jh7110: Add StarFive JH7110 clock/reset generator drivers" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6ea05fce8e2e63b3c2547719ff9a84207e2132b4 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=6ea05fce8e2e63b3c2547719ff9a84207e2132b4 commit 6ea05fce8e2e63b3c2547719ff9a84207e2132b4 Author: Mitchell Horne AuthorDate: 2024-05-07 16:05:31 +0000 Commit: Mitchell Horne CommitDate: 2024-05-07 16:05:31 +0000 Revert "jh7110: Add StarFive JH7110 clock/reset generator drivers" I did not set the author field properly; revert to fix this. This reverts commit 5d6d6278979b9eab598a23c804d23e930d2f7268. --- sys/dev/clk/starfive/jh7110_clk.c | 277 ------------------------ sys/dev/clk/starfive/jh7110_clk.h | 72 ------- sys/dev/clk/starfive/jh7110_clk_aon.c | 168 --------------- sys/dev/clk/starfive/jh7110_clk_pll.c | 386 ---------------------------------- sys/dev/clk/starfive/jh7110_clk_pll.h | 211 ------------------- sys/dev/clk/starfive/jh7110_clk_sys.c | 261 ----------------------- sys/riscv/starfive/files.starfive | 4 - 7 files changed, 1379 deletions(-) diff --git a/sys/dev/clk/starfive/jh7110_clk.c b/sys/dev/clk/starfive/jh7110_clk.c deleted file mode 100644 index adb5707b3f64..000000000000 --- a/sys/dev/clk/starfive/jh7110_clk.c +++ /dev/null @@ -1,277 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2019 Emmanuel Vadot - * Copyright (c) 2022 Mitchell Horne - * Copyright (c) 2024 Jari Sihvola - */ - -#include -#include -#include -#include -#include - -#include -#include -#include - -#include -#include - -#include - -#include - -#include "clkdev_if.h" -#include "hwreset_if.h" - -#define JH7110_DIV_MASK 0xffffff -#define JH7110_MUX_SHIFT 24 -#define JH7110_MUX_MASK 0x3f000000 -#define JH7110_ENABLE_SHIFT 31 - -#define REG_SIZE 4 - -struct jh7110_clk_sc { - uint32_t offset; - uint32_t flags; - uint64_t d_max; - int id; -}; - -#define DIV_ROUND_CLOSEST(n, d) (((n) + (d) / 2) / (d)) - -#define READ4(_sc, _off) \ - bus_read_4(_sc->mem_res, _off) -#define WRITE4(_sc, _off, _val) \ - bus_write_4(_sc->mem_res, _off, _val) - -#define DEVICE_LOCK(_clk) \ - CLKDEV_DEVICE_LOCK(clknode_get_device(_clk)) -#define DEVICE_UNLOCK(_clk) \ - CLKDEV_DEVICE_UNLOCK(clknode_get_device(_clk)) - -/* Reset functions */ - -int -jh7110_reset_assert(device_t dev, intptr_t id, bool assert) -{ - struct jh7110_clkgen_softc *sc; - uint32_t regvalue, offset, bitmask = 1UL << id % 32; - - sc = device_get_softc(dev); - offset = sc->reset_selector_offset + id / 32 * 4; - - mtx_lock(&sc->mtx); - - regvalue = READ4(sc, offset); - - if (assert) - regvalue |= bitmask; - else - regvalue &= ~bitmask; - WRITE4(sc, offset, regvalue); - - mtx_unlock(&sc->mtx); - - return (0); -} - -int -jh7110_reset_is_asserted(device_t dev, intptr_t id, bool *reset) -{ - struct jh7110_clkgen_softc *sc; - uint32_t regvalue, offset, bitmask; - - sc = device_get_softc(dev); - offset = sc->reset_status_offset + id / 32 * 4; - - mtx_lock(&sc->mtx); - - regvalue = READ4(sc, offset); - bitmask = 1UL << id % 32; - - mtx_unlock(&sc->mtx); - - *reset = (regvalue & bitmask) == 0; - - return (0); -} - -/* Clock functions */ - -static int -jh7110_clk_init(struct clknode *clk, device_t dev) -{ - struct jh7110_clkgen_softc *sc; - struct jh7110_clk_sc *sc_clk; - uint32_t reg; - int idx = 0; - - sc = device_get_softc(clknode_get_device(clk)); - sc_clk = clknode_get_softc(clk); - - if (sc_clk->flags & JH7110_CLK_HAS_MUX) { - DEVICE_LOCK(clk); - reg = READ4(sc, sc_clk->offset); - DEVICE_UNLOCK(clk); - idx = (reg & JH7110_MUX_MASK) >> JH7110_MUX_SHIFT; - } - - clknode_init_parent_idx(clk, idx); - - return (0); -} - -static int -jh7110_clk_set_gate(struct clknode *clk, bool enable) -{ - struct jh7110_clkgen_softc *sc; - struct jh7110_clk_sc *sc_clk; - uint32_t reg; - - sc = device_get_softc(clknode_get_device(clk)); - sc_clk = clknode_get_softc(clk); - - if ((sc_clk->flags & JH7110_CLK_HAS_GATE) == 0) - return (0); - - DEVICE_LOCK(clk); - - reg = READ4(sc, sc_clk->offset); - if (enable) - reg |= (1 << JH7110_ENABLE_SHIFT); - else - reg &= ~(1 << JH7110_ENABLE_SHIFT); - WRITE4(sc, sc_clk->offset, reg); - - DEVICE_UNLOCK(clk); - - return (0); -} - -static int -jh7110_clk_set_mux(struct clknode *clk, int idx) -{ - struct jh7110_clkgen_softc *sc; - struct jh7110_clk_sc *sc_clk; - uint32_t reg; - - sc = device_get_softc(clknode_get_device(clk)); - sc_clk = clknode_get_softc(clk); - - if ((sc_clk->flags & JH7110_CLK_HAS_MUX) == 0) - return (ENXIO); - - /* Checking index size */ - if ((idx & (JH7110_MUX_MASK >> JH7110_MUX_SHIFT)) != idx) - return (EINVAL); - - DEVICE_LOCK(clk); - - reg = READ4(sc, sc_clk->offset) & ~JH7110_MUX_MASK; - reg |= idx << JH7110_MUX_SHIFT; - WRITE4(sc, sc_clk->offset, reg); - - DEVICE_UNLOCK(clk); - - return (0); -} - -static int -jh7110_clk_recalc_freq(struct clknode *clk, uint64_t *freq) -{ - struct jh7110_clkgen_softc *sc; - struct jh7110_clk_sc *sc_clk; - uint32_t divisor; - - sc = device_get_softc(clknode_get_device(clk)); - sc_clk = clknode_get_softc(clk); - - /* Returning error here causes panic */ - if ((sc_clk->flags & JH7110_CLK_HAS_DIV) == 0) - return (0); - - DEVICE_LOCK(clk); - - divisor = READ4(sc, sc_clk->offset) & JH7110_DIV_MASK; - - DEVICE_UNLOCK(clk); - - if (divisor) - *freq = *freq / divisor; - else - *freq = 0; - - return (0); -} - -static int -jh7110_clk_set_freq(struct clknode *clk, uint64_t fin, uint64_t *fout, - int flags, int *done) -{ - struct jh7110_clkgen_softc *sc; - struct jh7110_clk_sc *sc_clk; - uint32_t divisor; - - sc = device_get_softc(clknode_get_device(clk)); - sc_clk = clknode_get_softc(clk); - - if ((sc_clk->flags & JH7110_CLK_HAS_DIV) == 0) - return (0); - - divisor = MIN(MAX(DIV_ROUND_CLOSEST(fin, *fout), 1UL), sc_clk->d_max); - - if (flags & CLK_SET_DRYRUN) - goto done; - - DEVICE_LOCK(clk); - - divisor |= READ4(sc, sc_clk->offset) & ~JH7110_DIV_MASK; - WRITE4(sc, sc_clk->offset, divisor); - - DEVICE_UNLOCK(clk); - -done: - *fout = divisor; - *done = 1; - - return (0); -} - -static clknode_method_t jh7110_clknode_methods[] = { - /* Device interface */ - CLKNODEMETHOD(clknode_init, jh7110_clk_init), - CLKNODEMETHOD(clknode_set_gate, jh7110_clk_set_gate), - CLKNODEMETHOD(clknode_set_mux, jh7110_clk_set_mux), - CLKNODEMETHOD(clknode_recalc_freq, jh7110_clk_recalc_freq), - CLKNODEMETHOD(clknode_set_freq, jh7110_clk_set_freq), - CLKNODEMETHOD_END -}; - -DEFINE_CLASS_1(jh7110_clknode, jh7110_clknode_class, jh7110_clknode_methods, - sizeof(struct jh7110_clk_sc), clknode_class); - -int -jh7110_clk_register(struct clkdom *clkdom, const struct jh7110_clk_def *clkdef) -{ - struct clknode *clk; - struct jh7110_clk_sc *sc; - - clk = clknode_create(clkdom, &jh7110_clknode_class, &clkdef->clkdef); - if (clk == NULL) - return (-1); - - sc = clknode_get_softc(clk); - - sc->offset = clkdef->clkdef.id * REG_SIZE; - - sc->flags = clkdef->flags; - sc->id = clkdef->clkdef.id; - sc->d_max = clkdef->d_max; - - clknode_register(clkdom, clk); - - return (0); -} diff --git a/sys/dev/clk/starfive/jh7110_clk.h b/sys/dev/clk/starfive/jh7110_clk.h deleted file mode 100644 index 882f82032d44..000000000000 --- a/sys/dev/clk/starfive/jh7110_clk.h +++ /dev/null @@ -1,72 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2024 Jari Sihvola - */ - -#ifndef _JH7110_CLK_H_ -#define _JH7110_CLK_H_ - -#include - -#define JH7110_CLK_HAS_GATE 0x01 -#define JH7110_CLK_HAS_MUX 0x02 -#define JH7110_CLK_HAS_DIV 0x04 -#define JH7110_CLK_HAS_INV 0x08 - -#define AONCRG_RESET_SELECTOR 0x38 -#define AONCRG_RESET_STATUS 0x3c -#define STGCRG_RESET_SELECTOR 0x74 -#define STGCRG_RESET_STATUS 0x78 -#define SYSCRG_RESET_SELECTOR 0x2f8 -#define SYSCRG_RESET_STATUS 0x308 - -struct jh7110_clkgen_softc { - struct mtx mtx; - struct clkdom *clkdom; - struct resource *mem_res; - uint32_t reset_status_offset; - uint32_t reset_selector_offset; -}; - -struct jh7110_clk_def { - struct clknode_init_def clkdef; - uint32_t offset; - uint32_t flags; - uint64_t d_max; -}; - -#define JH7110_CLK(_idx, _name, _pn, _d_max, _flags) \ -{ \ - .clkdef.id = _idx, \ - .clkdef.name = _name, \ - .clkdef.parent_names = _pn, \ - .clkdef.parent_cnt = nitems(_pn), \ - .clkdef.flags = CLK_NODE_STATIC_STRINGS, \ - .flags = _flags, \ - .d_max = _d_max, \ -} - -#define JH7110_GATE(_idx, _name, _pn) \ - JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_GATE) -#define JH7110_MUX(_idx, _name, _pn) \ - JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_MUX) -#define JH7110_DIV(_idx, _name, _pn, _d_max) \ - JH7110_CLK(_idx, _name, _pn, _d_max, JH7110_CLK_HAS_DIV) -#define JH7110_GATEMUX(_idx, _name, _pn) \ - JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_GATE | \ - JH7110_CLK_HAS_MUX) -#define JH7110_GATEDIV(_idx, _name, _pn, _d_max) \ - JH7110_CLK(_idx, _name, _pn, _d_max, JH7110_CLK_HAS_GATE | \ - JH7110_CLK_HAS_DIV) -#define JH7110_INV(_idx, _name, _pn) \ - JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_INV) - -int jh7110_clk_register(struct clkdom *clkdom, - const struct jh7110_clk_def *clkdef); -int jh7110_ofw_map(struct clkdom *clkdom, uint32_t ncells, phandle_t *cells, - struct clknode **clk); -int jh7110_reset_is_asserted(device_t dev, intptr_t id, bool *reset); -int jh7110_reset_assert(device_t dev, intptr_t id, bool assert); - -#endif /* _JH7110_CLK_H_ */ diff --git a/sys/dev/clk/starfive/jh7110_clk_aon.c b/sys/dev/clk/starfive/jh7110_clk_aon.c deleted file mode 100644 index 21b15142835e..000000000000 --- a/sys/dev/clk/starfive/jh7110_clk_aon.c +++ /dev/null @@ -1,168 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright 2016 Michal Meloun - * Copyright (c) 2020 Oskar Holmlund - * Copyright (c) 2024 Jari Sihvola - */ - -/* Clocks for JH7110 AON group. PLL driver must be attached before this. */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -#include -#include - -#include - -#include "clkdev_if.h" -#include "hwreset_if.h" - -static struct ofw_compat_data compat_data[] = { - { "starfive,jh7110-aoncrg", 1 }, - { NULL, 0 } -}; - -static struct resource_spec res_spec[] = { - { SYS_RES_MEMORY, 0, RF_ACTIVE | RF_SHAREABLE }, - RESOURCE_SPEC_END -}; - -/* parents */ -static const char *gmac0_axi_p[] = { "stg_axiahb" }; -static const char *gmac0_ahb_p[] = { "stg_axiahb" }; -static const char *gmac0_tx_inv_p[] = { "gmac0_tx" }; -static const char *gmac0_tx_p[] = { "gmac0_gtxclk", "gmac0_rmii_rtx" }; -static const char *gmac0_rmii_rtx_p[] = { "gmac0_rmii_refin" }; - -/* AON clocks */ -static const struct jh7110_clk_def aon_clks[] = { - JH7110_GATE(JH7110_AONCLK_GMAC0_AXI, "gmac0_axi", gmac0_axi_p), - JH7110_GATE(JH7110_AONCLK_GMAC0_AHB, "gmac0_ahb", gmac0_ahb_p), - JH7110_GATEMUX(JH7110_AONCLK_GMAC0_TX, "gmac0_tx", gmac0_tx_p), - JH7110_INV(JH7110_AONCLK_GMAC0_TX_INV, "gmac0_tx_inv", gmac0_tx_inv_p), - JH7110_DIV(JH7110_AONCLK_GMAC0_RMII_RTX, "gmac0_rmii_rtx", - gmac0_rmii_rtx_p, 30), -}; - -static int -jh7110_clk_aon_probe(device_t dev) -{ - if (!ofw_bus_status_okay(dev)) - return (ENXIO); - - if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0) - return (ENXIO); - - device_set_desc(dev, "StarFive JH7110 AON clock generator"); - - return (BUS_PROBE_DEFAULT); -} - -static int -jh7110_clk_aon_attach(device_t dev) -{ - struct jh7110_clkgen_softc *sc; - int err; - - sc = device_get_softc(dev); - - sc->reset_status_offset = AONCRG_RESET_STATUS; - sc->reset_selector_offset = AONCRG_RESET_SELECTOR; - - mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); - - err = bus_alloc_resources(dev, res_spec, &sc->mem_res); - if (err != 0) { - device_printf(dev, "Couldn't allocate resources, error %d\n", - err); - return (ENXIO); - } - - sc->clkdom = clkdom_create(dev); - if (sc->clkdom == NULL) { - device_printf(dev, "Couldn't create clkdom, error %d\n", err); - return (ENXIO); - } - - for (int i = 0; i < nitems(aon_clks); i++) { - err = jh7110_clk_register(sc->clkdom, &aon_clks[i]); - if (err != 0) { - device_printf(dev, - "Couldn't register clk %s, error %d\n", - aon_clks[i].clkdef.name, err); - return (ENXIO); - } - } - - if (clkdom_finit(sc->clkdom) != 0) - panic("Cannot finalize clkdom initialization\n"); - - if (bootverbose) - clkdom_dump(sc->clkdom); - - hwreset_register_ofw_provider(dev); - - return (0); -} - -static void -jh7110_clk_aon_device_lock(device_t dev) -{ - struct jh7110_clkgen_softc *sc; - - sc = device_get_softc(dev); - mtx_lock(&sc->mtx); -} - -static void -jh7110_clk_aon_device_unlock(device_t dev) -{ - struct jh7110_clkgen_softc *sc; - - sc = device_get_softc(dev); - mtx_unlock(&sc->mtx); -} - -static int -jh7110_clk_aon_detach(device_t dev) -{ - /* Detach not supported */ - return (EBUSY); -} - -static device_method_t jh7110_clk_aon_methods[] = { - /* Device interface */ - DEVMETHOD(device_probe, jh7110_clk_aon_probe), - DEVMETHOD(device_attach, jh7110_clk_aon_attach), - DEVMETHOD(device_detach, jh7110_clk_aon_detach), - - /* clkdev interface */ - DEVMETHOD(clkdev_device_lock, jh7110_clk_aon_device_lock), - DEVMETHOD(clkdev_device_unlock, jh7110_clk_aon_device_unlock), - - /* Reset interface */ - DEVMETHOD(hwreset_assert, jh7110_reset_assert), - DEVMETHOD(hwreset_is_asserted, jh7110_reset_is_asserted), - - DEVMETHOD_END -}; - -DEFINE_CLASS_0(jh7110_aon, jh7110_aon_driver, jh7110_clk_aon_methods, - sizeof(struct jh7110_clkgen_softc)); -EARLY_DRIVER_MODULE(jh7110_aon, simplebus, jh7110_aon_driver, 0, 0, - BUS_PASS_BUS + BUS_PASS_ORDER_LATE); -MODULE_VERSION(jh7110_aon, 1); diff --git a/sys/dev/clk/starfive/jh7110_clk_pll.c b/sys/dev/clk/starfive/jh7110_clk_pll.c deleted file mode 100644 index 5882f33984ae..000000000000 --- a/sys/dev/clk/starfive/jh7110_clk_pll.c +++ /dev/null @@ -1,386 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2024 Jari Sihvola - * Copyright (c) 2024 The FreeBSD Foundation - * - * Portions of this software were developed by Mitchell Horne - * under sponsorship from the FreeBSD Foundation. - */ - -#include -#include -#include -#include -#include -#include - -#include - -#include -#include -#include - -#include -#include -#include -#include - -#include - -#include "clkdev_if.h" -#include "syscon_if.h" - -#define JH7110_SYS_SYSCON_SYSCFG24 0x18 -#define JH7110_SYS_SYSCON_SYSCFG28 0x1c -#define JH7110_SYS_SYSCON_SYSCFG32 0x20 -#define JH7110_SYS_SYSCON_SYSCFG36 0x24 -#define JH7110_SYS_SYSCON_SYSCFG40 0x28 -#define JH7110_SYS_SYSCON_SYSCFG44 0x2c -#define JH7110_SYS_SYSCON_SYSCFG48 0x30 -#define JH7110_SYS_SYSCON_SYSCFG52 0x34 - -#define DEVICE_LOCK(_clk) \ - CLKDEV_DEVICE_LOCK(clknode_get_device(_clk)) -#define DEVICE_UNLOCK(_clk) \ - CLKDEV_DEVICE_UNLOCK(clknode_get_device(_clk)) - -#define PLL_MASK_FILL(sc, id) \ -do { \ - sc->dacpd_mask = PLL## id ##_DACPD_MASK; \ - sc->dsmpd_mask = PLL## id ##_DSMPD_MASK; \ - sc->fbdiv_mask = PLL## id ##_FBDIV_MASK; \ - sc->frac_mask = PLL## id ##_FRAC_MASK; \ - sc->prediv_mask = PLL## id ##_PREDIV_MASK; \ - sc->postdiv1_mask = PLL## id ##_POSTDIV1_MASK; \ -} while (0) - -#define PLL_SHIFT_FILL(sc, id) \ -do { \ - sc->dacpd_shift = PLL## id ##_DACPD_SHIFT; \ - sc->dsmpd_shift = PLL## id ##_DSMPD_SHIFT; \ - sc->fbdiv_shift = PLL## id ##_FBDIV_SHIFT; \ - sc->frac_shift = PLL## id ##_FRAC_SHIFT; \ - sc->prediv_shift = PLL## id ##_PREDIV_SHIFT; \ - sc->postdiv1_shift = PLL## id ##_POSTDIV1_SHIFT; \ -} while (0) - -struct jh7110_clk_pll_softc { - struct mtx mtx; - struct clkdom *clkdom; - struct syscon *syscon; -}; - -struct jh7110_pll_clknode_softc { - uint32_t dacpd_offset; - uint32_t dsmpd_offset; - uint32_t fbdiv_offset; - uint32_t frac_offset; - uint32_t prediv_offset; - uint32_t postdiv1_offset; - - uint32_t dacpd_mask; - uint32_t dsmpd_mask; - uint32_t fbdiv_mask; - uint32_t frac_mask; - uint32_t prediv_mask; - uint32_t postdiv1_mask; - - uint32_t dacpd_shift; - uint32_t dsmpd_shift; - uint32_t fbdiv_shift; - uint32_t frac_shift; - uint32_t prediv_shift; - uint32_t postdiv1_shift; - - const struct jh7110_pll_syscon_value *syscon_arr; - int syscon_nitems; -}; - -static const char *pll_parents[] = { "osc" }; - -static struct jh7110_clk_def pll_out_clks[] = { - { - .clkdef.id = JH7110_PLLCLK_PLL0_OUT, - .clkdef.name = "pll0_out", - .clkdef.parent_names = pll_parents, - .clkdef.parent_cnt = nitems(pll_parents), - .clkdef.flags = CLK_NODE_STATIC_STRINGS, - }, - { - .clkdef.id = JH7110_PLLCLK_PLL1_OUT, - .clkdef.name = "pll1_out", - .clkdef.parent_names = pll_parents, - .clkdef.parent_cnt = nitems(pll_parents), - .clkdef.flags = CLK_NODE_STATIC_STRINGS, - }, - { - .clkdef.id = JH7110_PLLCLK_PLL2_OUT, - .clkdef.name = "pll2_out", - .clkdef.parent_names = pll_parents, - .clkdef.parent_cnt = nitems(pll_parents), - .clkdef.flags = CLK_NODE_STATIC_STRINGS, - }, -}; - -static int jh7110_clk_pll_register(struct clkdom *clkdom, - struct jh7110_clk_def *clkdef); - -static int -jh7110_clk_pll_recalc_freq(struct clknode *clk, uint64_t *freq) -{ - struct jh7110_clk_pll_softc *sc; - struct jh7110_pll_clknode_softc *clk_sc; - uint32_t dacpd, dsmpd, fbdiv, prediv, postdiv1; - uint64_t frac, fcal = 0; - - sc = device_get_softc(clknode_get_device(clk)); - clk_sc = clknode_get_softc(clk); - - DEVICE_LOCK(clk); - - dacpd = (SYSCON_READ_4(sc->syscon, clk_sc->dacpd_offset) & clk_sc->dacpd_mask) >> - clk_sc->dacpd_shift; - dsmpd = (SYSCON_READ_4(sc->syscon, clk_sc->dsmpd_offset) & clk_sc->dsmpd_mask) >> - clk_sc->dsmpd_shift; - fbdiv = (SYSCON_READ_4(sc->syscon, clk_sc->fbdiv_offset) & clk_sc->fbdiv_mask) >> - clk_sc->fbdiv_shift; - prediv = (SYSCON_READ_4(sc->syscon, clk_sc->prediv_offset) & clk_sc->prediv_mask) >> - clk_sc->prediv_shift; - postdiv1 = (SYSCON_READ_4(sc->syscon, clk_sc->postdiv1_offset) & - clk_sc->postdiv1_mask) >> clk_sc->postdiv1_shift; - frac = (SYSCON_READ_4(sc->syscon, clk_sc->frac_offset) & clk_sc->frac_mask) >> - clk_sc->frac_shift; - - DEVICE_UNLOCK(clk); - - /* dacpd and dsmpd both being 0 entails Fraction Multiple Mode */ - if (dacpd == 0 && dsmpd == 0) - fcal = frac * FRAC_PATR_SIZE / (1 << 24); - - *freq = *freq / FRAC_PATR_SIZE * (fbdiv * FRAC_PATR_SIZE + fcal) / - prediv / (1 << postdiv1); - - return (0); -} - -static int -jh7110_clk_pll_set_freq(struct clknode *clk, uint64_t fin, uint64_t *fout, - int flags, int *done) -{ - struct jh7110_clk_pll_softc *sc; - struct jh7110_pll_clknode_softc *clk_sc; - const struct jh7110_pll_syscon_value *syscon_val = NULL; - - sc = device_get_softc(clknode_get_device(clk)); - clk_sc = clknode_get_softc(clk); - - for (int i = 0; i != clk_sc->syscon_nitems; i++) { - if (*fout == clk_sc->syscon_arr[i].freq) { - syscon_val = &clk_sc->syscon_arr[i]; - } - } - - if (syscon_val == NULL) { - printf("%s: tried to set an unknown frequency %ju for %s\n", - __func__, *fout, clknode_get_name(clk)); - return (EINVAL); - } - - if ((flags & CLK_SET_DRYRUN) != 0) { - *done = 1; - return (0); - } - - DEVICE_LOCK(clk); - - SYSCON_MODIFY_4(sc->syscon, clk_sc->dacpd_offset, clk_sc->dacpd_mask, - syscon_val->dacpd << clk_sc->dacpd_shift & clk_sc->dacpd_mask); - SYSCON_MODIFY_4(sc->syscon, clk_sc->dsmpd_offset, clk_sc->dsmpd_mask, - syscon_val->dsmpd << clk_sc->dsmpd_shift & clk_sc->dsmpd_mask); - SYSCON_MODIFY_4(sc->syscon, clk_sc->prediv_offset, clk_sc->prediv_mask, - syscon_val->prediv << clk_sc->prediv_shift & clk_sc->prediv_mask); - SYSCON_MODIFY_4(sc->syscon, clk_sc->fbdiv_offset, clk_sc->fbdiv_mask, - syscon_val->fbdiv << clk_sc->fbdiv_shift & clk_sc->fbdiv_mask); - SYSCON_MODIFY_4(sc->syscon, clk_sc->postdiv1_offset, - clk_sc->postdiv1_mask, (syscon_val->postdiv1 >> 1) << - clk_sc->postdiv1_shift & clk_sc->postdiv1_mask); - - if (!syscon_val->dacpd && !syscon_val->dsmpd) { - SYSCON_MODIFY_4(sc->syscon, clk_sc->frac_offset, clk_sc->frac_mask, - syscon_val->frac << clk_sc->frac_shift & clk_sc->frac_mask); - } - - DEVICE_UNLOCK(clk); - - *done = 1; - return (0); -} - -static int -jh7110_clk_pll_init(struct clknode *clk, device_t dev) -{ - clknode_init_parent_idx(clk, 0); - - return (0); -} - -static int -jh7110_clk_pll_probe(device_t dev) -{ - if (!ofw_bus_status_okay(dev)) - return (ENXIO); - - if (!ofw_bus_is_compatible(dev, "starfive,jh7110-pll")) - return (ENXIO); - - device_set_desc(dev, "StarFive JH7110 PLL clock generator"); - - return (BUS_PROBE_DEFAULT); -} - -static int -jh7110_clk_pll_attach(device_t dev) -{ - struct jh7110_clk_pll_softc *sc; - int error; - - sc = device_get_softc(dev); - - mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); - - sc->clkdom = clkdom_create(dev); - if (sc->clkdom == NULL) { - device_printf(dev, "Couldn't create clkdom\n"); - return (ENXIO); - } - - error = syscon_get_by_ofw_node(dev, OF_parent(ofw_bus_get_node(dev)), - &sc->syscon); - if (error != 0) { - device_printf(dev, "Couldn't get syscon handle of parent\n"); - return (error); - } - - for (int i = 0; i < nitems(pll_out_clks); i++) { - error = jh7110_clk_pll_register(sc->clkdom, &pll_out_clks[i]); - if (error != 0) - device_printf(dev, "Couldn't register clock %s: %d\n", - pll_out_clks[i].clkdef.name, error); - } - - error = clkdom_finit(sc->clkdom); - if (error != 0) { - device_printf(dev, "clkdom_finit() returned %d\n", error); - } - - if (bootverbose) - clkdom_dump(sc->clkdom); - - return (0); -} - -static void -jh7110_clk_pll_device_lock(device_t dev) -{ - struct jh7110_clk_pll_softc *sc; - - sc = device_get_softc(dev); - mtx_lock(&sc->mtx); -} - -static void -jh7110_clk_pll_device_unlock(device_t dev) -{ - struct jh7110_clk_pll_softc *sc; - - sc = device_get_softc(dev); - mtx_unlock(&sc->mtx); -} - -static clknode_method_t jh7110_pllnode_methods[] = { - /* Device interface */ - CLKNODEMETHOD(clknode_init, jh7110_clk_pll_init), - CLKNODEMETHOD(clknode_recalc_freq, jh7110_clk_pll_recalc_freq), - CLKNODEMETHOD(clknode_set_freq, jh7110_clk_pll_set_freq), - - CLKNODEMETHOD_END -}; - -static device_method_t jh7110_clk_pll_methods[] = { - /* Device interface */ - DEVMETHOD(device_probe, jh7110_clk_pll_probe), - DEVMETHOD(device_attach, jh7110_clk_pll_attach), - - /* clkdev interface */ - DEVMETHOD(clkdev_device_lock, jh7110_clk_pll_device_lock), - DEVMETHOD(clkdev_device_unlock, jh7110_clk_pll_device_unlock), - - DEVMETHOD_END -}; - -DEFINE_CLASS_1(jh7110_pllnode, jh7110_pllnode_class, jh7110_pllnode_methods, - sizeof(struct jh7110_pll_clknode_softc), clknode_class); -DEFINE_CLASS_0(jh7110_clk_pll, jh7110_clk_pll_driver, jh7110_clk_pll_methods, - sizeof(struct jh7110_clk_pll_softc)); -EARLY_DRIVER_MODULE(jh7110_clk_pll, simplebus, jh7110_clk_pll_driver, 0, 0, - BUS_PASS_BUS + BUS_PASS_ORDER_EARLY); -MODULE_VERSION(jh7110_clk_pll, 1); - -int -jh7110_clk_pll_register(struct clkdom *clkdom, struct jh7110_clk_def *clkdef) -{ - struct clknode *clk = NULL; - struct jh7110_pll_clknode_softc *sc; - - clk = clknode_create(clkdom, &jh7110_pllnode_class, &clkdef->clkdef); - if (clk == NULL) - return (1); - - sc = clknode_get_softc(clk); - - switch (clkdef->clkdef.id) { - case JH7110_PLLCLK_PLL0_OUT: - sc->syscon_arr = jh7110_pll0_syscon_freq; - sc->syscon_nitems = nitems(jh7110_pll0_syscon_freq); - PLL_MASK_FILL(sc, 0); - PLL_SHIFT_FILL(sc, 0); - sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG24; - sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG24; - sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG28; - sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG32; - sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG36; - sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG32; - break; - case JH7110_PLLCLK_PLL1_OUT: - sc->syscon_arr = jh7110_pll1_syscon_freq; - sc->syscon_nitems = nitems(jh7110_pll1_syscon_freq); - PLL_MASK_FILL(sc, 1); - PLL_SHIFT_FILL(sc, 1); - sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG36; - sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG36; - sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG36; - sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG40; - sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG44; - sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG40; - break; - case JH7110_PLLCLK_PLL2_OUT: - sc->syscon_arr = jh7110_pll2_syscon_freq; - sc->syscon_nitems = nitems(jh7110_pll2_syscon_freq); - PLL_MASK_FILL(sc, 2); - PLL_SHIFT_FILL(sc, 2); - sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG44; - sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG44; - sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG44; - sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG48; - sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG52; - sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG48; - break; - default: - return (EINVAL); - } - - clknode_register(clkdom, clk); - - return (0); -} diff --git a/sys/dev/clk/starfive/jh7110_clk_pll.h b/sys/dev/clk/starfive/jh7110_clk_pll.h deleted file mode 100644 index 700072a4b465..000000000000 --- a/sys/dev/clk/starfive/jh7110_clk_pll.h +++ /dev/null @@ -1,211 +0,0 @@ -/* SPDX-License-Identifier: MIT */ -/* - * StarFive JH7110 PLL Clock Generator Driver - * - * Copyright (C) 2022 Xingyu Wu - */ - -#define PLL0_DACPD_SHIFT 24 -#define PLL0_DACPD_MASK 0x1000000 -#define PLL_0_DACPD_SHIFT 24 -#define PLL_0_DACPD_MASK 0x1000000 - -#define PLL0_DSMPD_SHIFT 25 -#define PLL0_DSMPD_MASK 0x2000000 -#define PLL0_FBDIV_SHIFT 0 -#define PLL0_FBDIV_MASK 0xFFF -#define PLL0_FRAC_SHIFT 0 -#define PLL0_FRAC_MASK 0xFFFFFF -#define PLL0_POSTDIV1_SHIFT 28 -#define PLL0_POSTDIV1_MASK 0x30000000 -#define PLL0_PREDIV_SHIFT 0 -#define PLL0_PREDIV_MASK 0x3F - -#define PLL1_DACPD_SHIFT 15 -#define PLL1_DACPD_MASK 0x8000 -#define PLL1_DSMPD_SHIFT 16 -#define PLL1_DSMPD_MASK 0x10000 -#define PLL1_FBDIV_SHIFT 17 *** 462 LINES SKIPPED *** From nobody Tue May 7 16:08:19 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYjql2lWtz5J7mQ; Tue, 07 May 2024 16: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 4VYjql14mPz4Rgj; Tue, 7 May 2024 16: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=1715098099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3ZlqPSq/gLY0i2dQrplcowTUs9gdRoEHOUJMP8ihZ5c=; b=sDlsjg9BfT5j2KzM85INGaehXuem5QdDWPHhywP1sYww/C37YLgSMd/ITIzTgcMwdxInOo OqV1T3RNZqGOG+8AjC+Nbjz9jn7Tt40lbRBR29Jyq5iSPmvNkwyvVnnVILkTOwu1t4T3N0 kGKuIw+Z2hng+UA+K0egBMnLsyeHVDf3I8y4xvF6zjOt0whaYvMGmvFgxFZ3XcnpnMc0cU VnK6moEqtdgyl+QKn5ZvRmsmWMa7PUqV/ozXvfhoFnSEVKCfXb7viuAXE+MzYru+ketSwK DdWiIGKQPPcD/4p0qBG7zzyoy2kCmBYGwaMOBb9S6HYUPh2BKSFkkyaBzOwrZA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715098099; a=rsa-sha256; cv=none; b=iNeXyI0fAqeZFZ6yqSu77xtSc6FecrjFm+Tg+hLiO8YnTQt6A/yrw5UbrSwJgu4avwH+7X Y0KhjTW6wU5scLCm7p+63xrRL6if87Exuu2MgPKuTt7sD6zST54BmNIP1SBof3k74WcbTe 2KuCwji+D6M6DEiZhJzfDC8dcWX+59g8KyMvUm2b8vVIjFusIFInqoUC1/i+t7CRIFSbQF S0lLhBPsRRjpBuLmcfllAvrOAY80TXBxBxHcJXl5IdQ9SuRThWufQytpIWPIQqVKaTBCmT ZeQWCkIAH0wwHdEXdr7OMKuvnd2Vlgx6tCIU1gjhGJUJ4CKHTxbs3FXHIYmZAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715098099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3ZlqPSq/gLY0i2dQrplcowTUs9gdRoEHOUJMP8ihZ5c=; b=e8K4ejPI87N5GKr04/Zc/rpoTwIdL9F3LlqqlhOpb0qCSnf8IjtwSMUOL6VlrMYYO9p4lE bfraFzIO/USFlLrpl0q3Jl8rK1a+QpVhrzUpHRvypj1xqLnY02Qyh4reT3JMnCOs3gY6xY IyC91VkV5VPG1Zo/fIiUooiV1JSFazD5AVs06tcrYLrL8UXkYZdRR35QdUFLY4RIH915XJ KcYxa8Sd7U950H5KuhQaSkowjF1d0bPQAoKOb/1NtfNV3r/8VIUAfCs5crNzkJZ1HSOJMB hvPyb8D4v76YGgRaHuvSp4quiHfeDdfd01PfMpMtbsi5oWuLFg8C9t8t5avHKA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYjql0glzzn9W; Tue, 7 May 2024 16:08:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 447G8JAo050441; Tue, 7 May 2024 16:08:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447G8Jw4050438; Tue, 7 May 2024 16:08:19 GMT (envelope-from git) Date: Tue, 7 May 2024 16:08:19 GMT Message-Id: <202405071608.447G8Jw4050438@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: 0612538e3ac9 - main - jh7110: Add StarFive JH7110 clock/reset generator drivers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0612538e3ac93c1884f595a72609c078aefbcc28 Auto-Submitted: auto-generated The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=0612538e3ac93c1884f595a72609c078aefbcc28 commit 0612538e3ac93c1884f595a72609c078aefbcc28 Author: Jari Sihvola AuthorDate: 2024-05-07 16:06:20 +0000 Commit: Mitchell Horne CommitDate: 2024-05-07 16:07:36 +0000 jh7110: Add StarFive JH7110 clock/reset generator drivers Implement a core clknode driver for the JH7110 (StarFive VisionFive v2) platform. Add clock/reset generator drivers for the PLL, SYS, and AON clock groupings. Co-authored-by: mhorne Reviewed by: mhorne Sponsored by: The FreeBSD Foundation (mhorne's contributions) Differential Revision: https://reviews.freebsd.org/D43037 --- sys/dev/clk/starfive/jh7110_clk.c | 277 ++++++++++++++++++++++++ sys/dev/clk/starfive/jh7110_clk.h | 72 +++++++ sys/dev/clk/starfive/jh7110_clk_aon.c | 168 +++++++++++++++ sys/dev/clk/starfive/jh7110_clk_pll.c | 386 ++++++++++++++++++++++++++++++++++ sys/dev/clk/starfive/jh7110_clk_pll.h | 211 +++++++++++++++++++ sys/dev/clk/starfive/jh7110_clk_sys.c | 261 +++++++++++++++++++++++ sys/riscv/starfive/files.starfive | 4 + 7 files changed, 1379 insertions(+) diff --git a/sys/dev/clk/starfive/jh7110_clk.c b/sys/dev/clk/starfive/jh7110_clk.c new file mode 100644 index 000000000000..adb5707b3f64 --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk.c @@ -0,0 +1,277 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2019 Emmanuel Vadot + * Copyright (c) 2022 Mitchell Horne + * Copyright (c) 2024 Jari Sihvola + */ + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include + +#include + +#include + +#include "clkdev_if.h" +#include "hwreset_if.h" + +#define JH7110_DIV_MASK 0xffffff +#define JH7110_MUX_SHIFT 24 +#define JH7110_MUX_MASK 0x3f000000 +#define JH7110_ENABLE_SHIFT 31 + +#define REG_SIZE 4 + +struct jh7110_clk_sc { + uint32_t offset; + uint32_t flags; + uint64_t d_max; + int id; +}; + +#define DIV_ROUND_CLOSEST(n, d) (((n) + (d) / 2) / (d)) + +#define READ4(_sc, _off) \ + bus_read_4(_sc->mem_res, _off) +#define WRITE4(_sc, _off, _val) \ + bus_write_4(_sc->mem_res, _off, _val) + +#define DEVICE_LOCK(_clk) \ + CLKDEV_DEVICE_LOCK(clknode_get_device(_clk)) +#define DEVICE_UNLOCK(_clk) \ + CLKDEV_DEVICE_UNLOCK(clknode_get_device(_clk)) + +/* Reset functions */ + +int +jh7110_reset_assert(device_t dev, intptr_t id, bool assert) +{ + struct jh7110_clkgen_softc *sc; + uint32_t regvalue, offset, bitmask = 1UL << id % 32; + + sc = device_get_softc(dev); + offset = sc->reset_selector_offset + id / 32 * 4; + + mtx_lock(&sc->mtx); + + regvalue = READ4(sc, offset); + + if (assert) + regvalue |= bitmask; + else + regvalue &= ~bitmask; + WRITE4(sc, offset, regvalue); + + mtx_unlock(&sc->mtx); + + return (0); +} + +int +jh7110_reset_is_asserted(device_t dev, intptr_t id, bool *reset) +{ + struct jh7110_clkgen_softc *sc; + uint32_t regvalue, offset, bitmask; + + sc = device_get_softc(dev); + offset = sc->reset_status_offset + id / 32 * 4; + + mtx_lock(&sc->mtx); + + regvalue = READ4(sc, offset); + bitmask = 1UL << id % 32; + + mtx_unlock(&sc->mtx); + + *reset = (regvalue & bitmask) == 0; + + return (0); +} + +/* Clock functions */ + +static int +jh7110_clk_init(struct clknode *clk, device_t dev) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t reg; + int idx = 0; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if (sc_clk->flags & JH7110_CLK_HAS_MUX) { + DEVICE_LOCK(clk); + reg = READ4(sc, sc_clk->offset); + DEVICE_UNLOCK(clk); + idx = (reg & JH7110_MUX_MASK) >> JH7110_MUX_SHIFT; + } + + clknode_init_parent_idx(clk, idx); + + return (0); +} + +static int +jh7110_clk_set_gate(struct clknode *clk, bool enable) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t reg; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if ((sc_clk->flags & JH7110_CLK_HAS_GATE) == 0) + return (0); + + DEVICE_LOCK(clk); + + reg = READ4(sc, sc_clk->offset); + if (enable) + reg |= (1 << JH7110_ENABLE_SHIFT); + else + reg &= ~(1 << JH7110_ENABLE_SHIFT); + WRITE4(sc, sc_clk->offset, reg); + + DEVICE_UNLOCK(clk); + + return (0); +} + +static int +jh7110_clk_set_mux(struct clknode *clk, int idx) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t reg; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if ((sc_clk->flags & JH7110_CLK_HAS_MUX) == 0) + return (ENXIO); + + /* Checking index size */ + if ((idx & (JH7110_MUX_MASK >> JH7110_MUX_SHIFT)) != idx) + return (EINVAL); + + DEVICE_LOCK(clk); + + reg = READ4(sc, sc_clk->offset) & ~JH7110_MUX_MASK; + reg |= idx << JH7110_MUX_SHIFT; + WRITE4(sc, sc_clk->offset, reg); + + DEVICE_UNLOCK(clk); + + return (0); +} + +static int +jh7110_clk_recalc_freq(struct clknode *clk, uint64_t *freq) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t divisor; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + /* Returning error here causes panic */ + if ((sc_clk->flags & JH7110_CLK_HAS_DIV) == 0) + return (0); + + DEVICE_LOCK(clk); + + divisor = READ4(sc, sc_clk->offset) & JH7110_DIV_MASK; + + DEVICE_UNLOCK(clk); + + if (divisor) + *freq = *freq / divisor; + else + *freq = 0; + + return (0); +} + +static int +jh7110_clk_set_freq(struct clknode *clk, uint64_t fin, uint64_t *fout, + int flags, int *done) +{ + struct jh7110_clkgen_softc *sc; + struct jh7110_clk_sc *sc_clk; + uint32_t divisor; + + sc = device_get_softc(clknode_get_device(clk)); + sc_clk = clknode_get_softc(clk); + + if ((sc_clk->flags & JH7110_CLK_HAS_DIV) == 0) + return (0); + + divisor = MIN(MAX(DIV_ROUND_CLOSEST(fin, *fout), 1UL), sc_clk->d_max); + + if (flags & CLK_SET_DRYRUN) + goto done; + + DEVICE_LOCK(clk); + + divisor |= READ4(sc, sc_clk->offset) & ~JH7110_DIV_MASK; + WRITE4(sc, sc_clk->offset, divisor); + + DEVICE_UNLOCK(clk); + +done: + *fout = divisor; + *done = 1; + + return (0); +} + +static clknode_method_t jh7110_clknode_methods[] = { + /* Device interface */ + CLKNODEMETHOD(clknode_init, jh7110_clk_init), + CLKNODEMETHOD(clknode_set_gate, jh7110_clk_set_gate), + CLKNODEMETHOD(clknode_set_mux, jh7110_clk_set_mux), + CLKNODEMETHOD(clknode_recalc_freq, jh7110_clk_recalc_freq), + CLKNODEMETHOD(clknode_set_freq, jh7110_clk_set_freq), + CLKNODEMETHOD_END +}; + +DEFINE_CLASS_1(jh7110_clknode, jh7110_clknode_class, jh7110_clknode_methods, + sizeof(struct jh7110_clk_sc), clknode_class); + +int +jh7110_clk_register(struct clkdom *clkdom, const struct jh7110_clk_def *clkdef) +{ + struct clknode *clk; + struct jh7110_clk_sc *sc; + + clk = clknode_create(clkdom, &jh7110_clknode_class, &clkdef->clkdef); + if (clk == NULL) + return (-1); + + sc = clknode_get_softc(clk); + + sc->offset = clkdef->clkdef.id * REG_SIZE; + + sc->flags = clkdef->flags; + sc->id = clkdef->clkdef.id; + sc->d_max = clkdef->d_max; + + clknode_register(clkdom, clk); + + return (0); +} diff --git a/sys/dev/clk/starfive/jh7110_clk.h b/sys/dev/clk/starfive/jh7110_clk.h new file mode 100644 index 000000000000..882f82032d44 --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk.h @@ -0,0 +1,72 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2024 Jari Sihvola + */ + +#ifndef _JH7110_CLK_H_ +#define _JH7110_CLK_H_ + +#include + +#define JH7110_CLK_HAS_GATE 0x01 +#define JH7110_CLK_HAS_MUX 0x02 +#define JH7110_CLK_HAS_DIV 0x04 +#define JH7110_CLK_HAS_INV 0x08 + +#define AONCRG_RESET_SELECTOR 0x38 +#define AONCRG_RESET_STATUS 0x3c +#define STGCRG_RESET_SELECTOR 0x74 +#define STGCRG_RESET_STATUS 0x78 +#define SYSCRG_RESET_SELECTOR 0x2f8 +#define SYSCRG_RESET_STATUS 0x308 + +struct jh7110_clkgen_softc { + struct mtx mtx; + struct clkdom *clkdom; + struct resource *mem_res; + uint32_t reset_status_offset; + uint32_t reset_selector_offset; +}; + +struct jh7110_clk_def { + struct clknode_init_def clkdef; + uint32_t offset; + uint32_t flags; + uint64_t d_max; +}; + +#define JH7110_CLK(_idx, _name, _pn, _d_max, _flags) \ +{ \ + .clkdef.id = _idx, \ + .clkdef.name = _name, \ + .clkdef.parent_names = _pn, \ + .clkdef.parent_cnt = nitems(_pn), \ + .clkdef.flags = CLK_NODE_STATIC_STRINGS, \ + .flags = _flags, \ + .d_max = _d_max, \ +} + +#define JH7110_GATE(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_GATE) +#define JH7110_MUX(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_MUX) +#define JH7110_DIV(_idx, _name, _pn, _d_max) \ + JH7110_CLK(_idx, _name, _pn, _d_max, JH7110_CLK_HAS_DIV) +#define JH7110_GATEMUX(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_GATE | \ + JH7110_CLK_HAS_MUX) +#define JH7110_GATEDIV(_idx, _name, _pn, _d_max) \ + JH7110_CLK(_idx, _name, _pn, _d_max, JH7110_CLK_HAS_GATE | \ + JH7110_CLK_HAS_DIV) +#define JH7110_INV(_idx, _name, _pn) \ + JH7110_CLK(_idx, _name, _pn, 0, JH7110_CLK_HAS_INV) + +int jh7110_clk_register(struct clkdom *clkdom, + const struct jh7110_clk_def *clkdef); +int jh7110_ofw_map(struct clkdom *clkdom, uint32_t ncells, phandle_t *cells, + struct clknode **clk); +int jh7110_reset_is_asserted(device_t dev, intptr_t id, bool *reset); +int jh7110_reset_assert(device_t dev, intptr_t id, bool assert); + +#endif /* _JH7110_CLK_H_ */ diff --git a/sys/dev/clk/starfive/jh7110_clk_aon.c b/sys/dev/clk/starfive/jh7110_clk_aon.c new file mode 100644 index 000000000000..21b15142835e --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk_aon.c @@ -0,0 +1,168 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright 2016 Michal Meloun + * Copyright (c) 2020 Oskar Holmlund + * Copyright (c) 2024 Jari Sihvola + */ + +/* Clocks for JH7110 AON group. PLL driver must be attached before this. */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include + +#include + +#include "clkdev_if.h" +#include "hwreset_if.h" + +static struct ofw_compat_data compat_data[] = { + { "starfive,jh7110-aoncrg", 1 }, + { NULL, 0 } +}; + +static struct resource_spec res_spec[] = { + { SYS_RES_MEMORY, 0, RF_ACTIVE | RF_SHAREABLE }, + RESOURCE_SPEC_END +}; + +/* parents */ +static const char *gmac0_axi_p[] = { "stg_axiahb" }; +static const char *gmac0_ahb_p[] = { "stg_axiahb" }; +static const char *gmac0_tx_inv_p[] = { "gmac0_tx" }; +static const char *gmac0_tx_p[] = { "gmac0_gtxclk", "gmac0_rmii_rtx" }; +static const char *gmac0_rmii_rtx_p[] = { "gmac0_rmii_refin" }; + +/* AON clocks */ +static const struct jh7110_clk_def aon_clks[] = { + JH7110_GATE(JH7110_AONCLK_GMAC0_AXI, "gmac0_axi", gmac0_axi_p), + JH7110_GATE(JH7110_AONCLK_GMAC0_AHB, "gmac0_ahb", gmac0_ahb_p), + JH7110_GATEMUX(JH7110_AONCLK_GMAC0_TX, "gmac0_tx", gmac0_tx_p), + JH7110_INV(JH7110_AONCLK_GMAC0_TX_INV, "gmac0_tx_inv", gmac0_tx_inv_p), + JH7110_DIV(JH7110_AONCLK_GMAC0_RMII_RTX, "gmac0_rmii_rtx", + gmac0_rmii_rtx_p, 30), +}; + +static int +jh7110_clk_aon_probe(device_t dev) +{ + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0) + return (ENXIO); + + device_set_desc(dev, "StarFive JH7110 AON clock generator"); + + return (BUS_PROBE_DEFAULT); +} + +static int +jh7110_clk_aon_attach(device_t dev) +{ + struct jh7110_clkgen_softc *sc; + int err; + + sc = device_get_softc(dev); + + sc->reset_status_offset = AONCRG_RESET_STATUS; + sc->reset_selector_offset = AONCRG_RESET_SELECTOR; + + mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); + + err = bus_alloc_resources(dev, res_spec, &sc->mem_res); + if (err != 0) { + device_printf(dev, "Couldn't allocate resources, error %d\n", + err); + return (ENXIO); + } + + sc->clkdom = clkdom_create(dev); + if (sc->clkdom == NULL) { + device_printf(dev, "Couldn't create clkdom, error %d\n", err); + return (ENXIO); + } + + for (int i = 0; i < nitems(aon_clks); i++) { + err = jh7110_clk_register(sc->clkdom, &aon_clks[i]); + if (err != 0) { + device_printf(dev, + "Couldn't register clk %s, error %d\n", + aon_clks[i].clkdef.name, err); + return (ENXIO); + } + } + + if (clkdom_finit(sc->clkdom) != 0) + panic("Cannot finalize clkdom initialization\n"); + + if (bootverbose) + clkdom_dump(sc->clkdom); + + hwreset_register_ofw_provider(dev); + + return (0); +} + +static void +jh7110_clk_aon_device_lock(device_t dev) +{ + struct jh7110_clkgen_softc *sc; + + sc = device_get_softc(dev); + mtx_lock(&sc->mtx); +} + +static void +jh7110_clk_aon_device_unlock(device_t dev) +{ + struct jh7110_clkgen_softc *sc; + + sc = device_get_softc(dev); + mtx_unlock(&sc->mtx); +} + +static int +jh7110_clk_aon_detach(device_t dev) +{ + /* Detach not supported */ + return (EBUSY); +} + +static device_method_t jh7110_clk_aon_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, jh7110_clk_aon_probe), + DEVMETHOD(device_attach, jh7110_clk_aon_attach), + DEVMETHOD(device_detach, jh7110_clk_aon_detach), + + /* clkdev interface */ + DEVMETHOD(clkdev_device_lock, jh7110_clk_aon_device_lock), + DEVMETHOD(clkdev_device_unlock, jh7110_clk_aon_device_unlock), + + /* Reset interface */ + DEVMETHOD(hwreset_assert, jh7110_reset_assert), + DEVMETHOD(hwreset_is_asserted, jh7110_reset_is_asserted), + + DEVMETHOD_END +}; + +DEFINE_CLASS_0(jh7110_aon, jh7110_aon_driver, jh7110_clk_aon_methods, + sizeof(struct jh7110_clkgen_softc)); +EARLY_DRIVER_MODULE(jh7110_aon, simplebus, jh7110_aon_driver, 0, 0, + BUS_PASS_BUS + BUS_PASS_ORDER_LATE); +MODULE_VERSION(jh7110_aon, 1); diff --git a/sys/dev/clk/starfive/jh7110_clk_pll.c b/sys/dev/clk/starfive/jh7110_clk_pll.c new file mode 100644 index 000000000000..5882f33984ae --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk_pll.c @@ -0,0 +1,386 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2024 Jari Sihvola + * Copyright (c) 2024 The FreeBSD Foundation + * + * Portions of this software were developed by Mitchell Horne + * under sponsorship from the FreeBSD Foundation. + */ + +#include +#include +#include +#include +#include +#include + +#include + +#include +#include +#include + +#include +#include +#include +#include + +#include + +#include "clkdev_if.h" +#include "syscon_if.h" + +#define JH7110_SYS_SYSCON_SYSCFG24 0x18 +#define JH7110_SYS_SYSCON_SYSCFG28 0x1c +#define JH7110_SYS_SYSCON_SYSCFG32 0x20 +#define JH7110_SYS_SYSCON_SYSCFG36 0x24 +#define JH7110_SYS_SYSCON_SYSCFG40 0x28 +#define JH7110_SYS_SYSCON_SYSCFG44 0x2c +#define JH7110_SYS_SYSCON_SYSCFG48 0x30 +#define JH7110_SYS_SYSCON_SYSCFG52 0x34 + +#define DEVICE_LOCK(_clk) \ + CLKDEV_DEVICE_LOCK(clknode_get_device(_clk)) +#define DEVICE_UNLOCK(_clk) \ + CLKDEV_DEVICE_UNLOCK(clknode_get_device(_clk)) + +#define PLL_MASK_FILL(sc, id) \ +do { \ + sc->dacpd_mask = PLL## id ##_DACPD_MASK; \ + sc->dsmpd_mask = PLL## id ##_DSMPD_MASK; \ + sc->fbdiv_mask = PLL## id ##_FBDIV_MASK; \ + sc->frac_mask = PLL## id ##_FRAC_MASK; \ + sc->prediv_mask = PLL## id ##_PREDIV_MASK; \ + sc->postdiv1_mask = PLL## id ##_POSTDIV1_MASK; \ +} while (0) + +#define PLL_SHIFT_FILL(sc, id) \ +do { \ + sc->dacpd_shift = PLL## id ##_DACPD_SHIFT; \ + sc->dsmpd_shift = PLL## id ##_DSMPD_SHIFT; \ + sc->fbdiv_shift = PLL## id ##_FBDIV_SHIFT; \ + sc->frac_shift = PLL## id ##_FRAC_SHIFT; \ + sc->prediv_shift = PLL## id ##_PREDIV_SHIFT; \ + sc->postdiv1_shift = PLL## id ##_POSTDIV1_SHIFT; \ +} while (0) + +struct jh7110_clk_pll_softc { + struct mtx mtx; + struct clkdom *clkdom; + struct syscon *syscon; +}; + +struct jh7110_pll_clknode_softc { + uint32_t dacpd_offset; + uint32_t dsmpd_offset; + uint32_t fbdiv_offset; + uint32_t frac_offset; + uint32_t prediv_offset; + uint32_t postdiv1_offset; + + uint32_t dacpd_mask; + uint32_t dsmpd_mask; + uint32_t fbdiv_mask; + uint32_t frac_mask; + uint32_t prediv_mask; + uint32_t postdiv1_mask; + + uint32_t dacpd_shift; + uint32_t dsmpd_shift; + uint32_t fbdiv_shift; + uint32_t frac_shift; + uint32_t prediv_shift; + uint32_t postdiv1_shift; + + const struct jh7110_pll_syscon_value *syscon_arr; + int syscon_nitems; +}; + +static const char *pll_parents[] = { "osc" }; + +static struct jh7110_clk_def pll_out_clks[] = { + { + .clkdef.id = JH7110_PLLCLK_PLL0_OUT, + .clkdef.name = "pll0_out", + .clkdef.parent_names = pll_parents, + .clkdef.parent_cnt = nitems(pll_parents), + .clkdef.flags = CLK_NODE_STATIC_STRINGS, + }, + { + .clkdef.id = JH7110_PLLCLK_PLL1_OUT, + .clkdef.name = "pll1_out", + .clkdef.parent_names = pll_parents, + .clkdef.parent_cnt = nitems(pll_parents), + .clkdef.flags = CLK_NODE_STATIC_STRINGS, + }, + { + .clkdef.id = JH7110_PLLCLK_PLL2_OUT, + .clkdef.name = "pll2_out", + .clkdef.parent_names = pll_parents, + .clkdef.parent_cnt = nitems(pll_parents), + .clkdef.flags = CLK_NODE_STATIC_STRINGS, + }, +}; + +static int jh7110_clk_pll_register(struct clkdom *clkdom, + struct jh7110_clk_def *clkdef); + +static int +jh7110_clk_pll_recalc_freq(struct clknode *clk, uint64_t *freq) +{ + struct jh7110_clk_pll_softc *sc; + struct jh7110_pll_clknode_softc *clk_sc; + uint32_t dacpd, dsmpd, fbdiv, prediv, postdiv1; + uint64_t frac, fcal = 0; + + sc = device_get_softc(clknode_get_device(clk)); + clk_sc = clknode_get_softc(clk); + + DEVICE_LOCK(clk); + + dacpd = (SYSCON_READ_4(sc->syscon, clk_sc->dacpd_offset) & clk_sc->dacpd_mask) >> + clk_sc->dacpd_shift; + dsmpd = (SYSCON_READ_4(sc->syscon, clk_sc->dsmpd_offset) & clk_sc->dsmpd_mask) >> + clk_sc->dsmpd_shift; + fbdiv = (SYSCON_READ_4(sc->syscon, clk_sc->fbdiv_offset) & clk_sc->fbdiv_mask) >> + clk_sc->fbdiv_shift; + prediv = (SYSCON_READ_4(sc->syscon, clk_sc->prediv_offset) & clk_sc->prediv_mask) >> + clk_sc->prediv_shift; + postdiv1 = (SYSCON_READ_4(sc->syscon, clk_sc->postdiv1_offset) & + clk_sc->postdiv1_mask) >> clk_sc->postdiv1_shift; + frac = (SYSCON_READ_4(sc->syscon, clk_sc->frac_offset) & clk_sc->frac_mask) >> + clk_sc->frac_shift; + + DEVICE_UNLOCK(clk); + + /* dacpd and dsmpd both being 0 entails Fraction Multiple Mode */ + if (dacpd == 0 && dsmpd == 0) + fcal = frac * FRAC_PATR_SIZE / (1 << 24); + + *freq = *freq / FRAC_PATR_SIZE * (fbdiv * FRAC_PATR_SIZE + fcal) / + prediv / (1 << postdiv1); + + return (0); +} + +static int +jh7110_clk_pll_set_freq(struct clknode *clk, uint64_t fin, uint64_t *fout, + int flags, int *done) +{ + struct jh7110_clk_pll_softc *sc; + struct jh7110_pll_clknode_softc *clk_sc; + const struct jh7110_pll_syscon_value *syscon_val = NULL; + + sc = device_get_softc(clknode_get_device(clk)); + clk_sc = clknode_get_softc(clk); + + for (int i = 0; i != clk_sc->syscon_nitems; i++) { + if (*fout == clk_sc->syscon_arr[i].freq) { + syscon_val = &clk_sc->syscon_arr[i]; + } + } + + if (syscon_val == NULL) { + printf("%s: tried to set an unknown frequency %ju for %s\n", + __func__, *fout, clknode_get_name(clk)); + return (EINVAL); + } + + if ((flags & CLK_SET_DRYRUN) != 0) { + *done = 1; + return (0); + } + + DEVICE_LOCK(clk); + + SYSCON_MODIFY_4(sc->syscon, clk_sc->dacpd_offset, clk_sc->dacpd_mask, + syscon_val->dacpd << clk_sc->dacpd_shift & clk_sc->dacpd_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->dsmpd_offset, clk_sc->dsmpd_mask, + syscon_val->dsmpd << clk_sc->dsmpd_shift & clk_sc->dsmpd_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->prediv_offset, clk_sc->prediv_mask, + syscon_val->prediv << clk_sc->prediv_shift & clk_sc->prediv_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->fbdiv_offset, clk_sc->fbdiv_mask, + syscon_val->fbdiv << clk_sc->fbdiv_shift & clk_sc->fbdiv_mask); + SYSCON_MODIFY_4(sc->syscon, clk_sc->postdiv1_offset, + clk_sc->postdiv1_mask, (syscon_val->postdiv1 >> 1) << + clk_sc->postdiv1_shift & clk_sc->postdiv1_mask); + + if (!syscon_val->dacpd && !syscon_val->dsmpd) { + SYSCON_MODIFY_4(sc->syscon, clk_sc->frac_offset, clk_sc->frac_mask, + syscon_val->frac << clk_sc->frac_shift & clk_sc->frac_mask); + } + + DEVICE_UNLOCK(clk); + + *done = 1; + return (0); +} + +static int +jh7110_clk_pll_init(struct clknode *clk, device_t dev) +{ + clknode_init_parent_idx(clk, 0); + + return (0); +} + +static int +jh7110_clk_pll_probe(device_t dev) +{ + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + if (!ofw_bus_is_compatible(dev, "starfive,jh7110-pll")) + return (ENXIO); + + device_set_desc(dev, "StarFive JH7110 PLL clock generator"); + + return (BUS_PROBE_DEFAULT); +} + +static int +jh7110_clk_pll_attach(device_t dev) +{ + struct jh7110_clk_pll_softc *sc; + int error; + + sc = device_get_softc(dev); + + mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); + + sc->clkdom = clkdom_create(dev); + if (sc->clkdom == NULL) { + device_printf(dev, "Couldn't create clkdom\n"); + return (ENXIO); + } + + error = syscon_get_by_ofw_node(dev, OF_parent(ofw_bus_get_node(dev)), + &sc->syscon); + if (error != 0) { + device_printf(dev, "Couldn't get syscon handle of parent\n"); + return (error); + } + + for (int i = 0; i < nitems(pll_out_clks); i++) { + error = jh7110_clk_pll_register(sc->clkdom, &pll_out_clks[i]); + if (error != 0) + device_printf(dev, "Couldn't register clock %s: %d\n", + pll_out_clks[i].clkdef.name, error); + } + + error = clkdom_finit(sc->clkdom); + if (error != 0) { + device_printf(dev, "clkdom_finit() returned %d\n", error); + } + + if (bootverbose) + clkdom_dump(sc->clkdom); + + return (0); +} + +static void +jh7110_clk_pll_device_lock(device_t dev) +{ + struct jh7110_clk_pll_softc *sc; + + sc = device_get_softc(dev); + mtx_lock(&sc->mtx); +} + +static void +jh7110_clk_pll_device_unlock(device_t dev) +{ + struct jh7110_clk_pll_softc *sc; + + sc = device_get_softc(dev); + mtx_unlock(&sc->mtx); +} + +static clknode_method_t jh7110_pllnode_methods[] = { + /* Device interface */ + CLKNODEMETHOD(clknode_init, jh7110_clk_pll_init), + CLKNODEMETHOD(clknode_recalc_freq, jh7110_clk_pll_recalc_freq), + CLKNODEMETHOD(clknode_set_freq, jh7110_clk_pll_set_freq), + + CLKNODEMETHOD_END +}; + +static device_method_t jh7110_clk_pll_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, jh7110_clk_pll_probe), + DEVMETHOD(device_attach, jh7110_clk_pll_attach), + + /* clkdev interface */ + DEVMETHOD(clkdev_device_lock, jh7110_clk_pll_device_lock), + DEVMETHOD(clkdev_device_unlock, jh7110_clk_pll_device_unlock), + + DEVMETHOD_END +}; + +DEFINE_CLASS_1(jh7110_pllnode, jh7110_pllnode_class, jh7110_pllnode_methods, + sizeof(struct jh7110_pll_clknode_softc), clknode_class); +DEFINE_CLASS_0(jh7110_clk_pll, jh7110_clk_pll_driver, jh7110_clk_pll_methods, + sizeof(struct jh7110_clk_pll_softc)); +EARLY_DRIVER_MODULE(jh7110_clk_pll, simplebus, jh7110_clk_pll_driver, 0, 0, + BUS_PASS_BUS + BUS_PASS_ORDER_EARLY); +MODULE_VERSION(jh7110_clk_pll, 1); + +int +jh7110_clk_pll_register(struct clkdom *clkdom, struct jh7110_clk_def *clkdef) +{ + struct clknode *clk = NULL; + struct jh7110_pll_clknode_softc *sc; + + clk = clknode_create(clkdom, &jh7110_pllnode_class, &clkdef->clkdef); + if (clk == NULL) + return (1); + + sc = clknode_get_softc(clk); + + switch (clkdef->clkdef.id) { + case JH7110_PLLCLK_PLL0_OUT: + sc->syscon_arr = jh7110_pll0_syscon_freq; + sc->syscon_nitems = nitems(jh7110_pll0_syscon_freq); + PLL_MASK_FILL(sc, 0); + PLL_SHIFT_FILL(sc, 0); + sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG24; + sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG24; + sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG28; + sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG32; + sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG32; + break; + case JH7110_PLLCLK_PLL1_OUT: + sc->syscon_arr = jh7110_pll1_syscon_freq; + sc->syscon_nitems = nitems(jh7110_pll1_syscon_freq); + PLL_MASK_FILL(sc, 1); + PLL_SHIFT_FILL(sc, 1); + sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG36; + sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG40; + sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG40; + break; + case JH7110_PLLCLK_PLL2_OUT: + sc->syscon_arr = jh7110_pll2_syscon_freq; + sc->syscon_nitems = nitems(jh7110_pll2_syscon_freq); + PLL_MASK_FILL(sc, 2); + PLL_SHIFT_FILL(sc, 2); + sc->dacpd_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->dsmpd_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->fbdiv_offset = JH7110_SYS_SYSCON_SYSCFG44; + sc->frac_offset = JH7110_SYS_SYSCON_SYSCFG48; + sc->prediv_offset = JH7110_SYS_SYSCON_SYSCFG52; + sc->postdiv1_offset = JH7110_SYS_SYSCON_SYSCFG48; + break; + default: + return (EINVAL); + } + + clknode_register(clkdom, clk); + + return (0); +} diff --git a/sys/dev/clk/starfive/jh7110_clk_pll.h b/sys/dev/clk/starfive/jh7110_clk_pll.h new file mode 100644 index 000000000000..700072a4b465 --- /dev/null +++ b/sys/dev/clk/starfive/jh7110_clk_pll.h @@ -0,0 +1,211 @@ +/* SPDX-License-Identifier: MIT */ +/* + * StarFive JH7110 PLL Clock Generator Driver + * + * Copyright (C) 2022 Xingyu Wu + */ + +#define PLL0_DACPD_SHIFT 24 +#define PLL0_DACPD_MASK 0x1000000 +#define PLL_0_DACPD_SHIFT 24 +#define PLL_0_DACPD_MASK 0x1000000 + +#define PLL0_DSMPD_SHIFT 25 +#define PLL0_DSMPD_MASK 0x2000000 +#define PLL0_FBDIV_SHIFT 0 +#define PLL0_FBDIV_MASK 0xFFF +#define PLL0_FRAC_SHIFT 0 +#define PLL0_FRAC_MASK 0xFFFFFF +#define PLL0_POSTDIV1_SHIFT 28 +#define PLL0_POSTDIV1_MASK 0x30000000 +#define PLL0_PREDIV_SHIFT 0 *** 469 LINES SKIPPED *** From nobody Tue May 7 18:45:17 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYnJs3vygz5JRSK; Tue, 07 May 2024 18:45: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 4VYnJs2Ps9z4rBZ; Tue, 7 May 2024 18:45:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715107517; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g7wLvvPnPkTbyyK+bW0kvW5RW9KXigwcaRPRNLYjFwY=; b=CrcHHWEe+akVHIqZX9Ms6EDOfLpqlxE0rPB0ZQHofxQNchQ3exzvUoV/+0okm+qUjRK30p SkKSsCecGLXRBo3ExmqqTjyPaevadfa3ndSnQVSQ3v4iC85PWbUdSCJaLmTYu17prS7Z2b oG7U2eJvzEqGqe6FloNt71hiGitFED5YSQuMX1Am+lNelzNknPDHI6+YUMQgvDYudA6e0v 2jydSPhHS2RK6EU3D7lBGRJC0IAJVfx2HVL3R4yW+BuOvWIq8Z6aNHaVJRe16oUD+9E+kI wKpbQUHR0AT6jnWEbwrrniWNsa1JTl6nRhmT7cAAbGaxmyTtiAnrfpiuU9nNVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715107517; a=rsa-sha256; cv=none; b=tnPknnikwSlk05lgp4qnx9sR0enoy8JqkOiuifYWC+qRPoR0oM76+Or6YBXuT5V9LKidl8 SR0Veg14DLC2XXljmtj9htuMyHaJuMj13aJPW5EMxqMNZWNFPy0M64AvKnvQIqfuVZoKQD yz2790YYmnY0oCifeedS3sGtrctpa/YRv7FtLyRMi6+gckFMAv4YVFfkbU5kGVPLI/3HSh go5TzrvNd/bdT8FDzSzvj7GK8vCXHMsdG6Xpo67tUUcgUO+UcrcVNFSa7PJ3cjRz5mGvu7 GgUm7p2M2JdCsWzyG/LeJxSfhbVRRdPpHqzHfpQo4dSMiNtJDgbdoVPTTI9Rqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715107517; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g7wLvvPnPkTbyyK+bW0kvW5RW9KXigwcaRPRNLYjFwY=; b=U/jeD3IlasDwaB3Egtr1ORgy7dddoAQBepCfGiBU1eGzmrF6ekUeP5ea+O3V/JRFBbpgBA WE8jUnZn7jjNZhyT0F0yvIQwV2NmwlBG2PeUILJM4GOeJXDnwT1aCBP0FFWV7FMWhmcE9Z PRgh1qEHE2muuMv60ceVyK8egV+iTlolo+FDAzF/Aa/07dFC/5bxzmUfDQCGlEsLAfy7vK E9ZSGahbU8tJA+0ivv0jnq5Nt/3HIUVGE9nbjHPA9p3rwXjGp8djeHybWZ467NSb9tLlyR UWtAVVN7j3ERqmw460EGqHY1BPrgN/HkB+ozzR5NLXP6HWMt/48O27uJ8hV9QA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYnJs211nzsXr; Tue, 7 May 2024 18:45: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 447IjH4J019927; Tue, 7 May 2024 18:45:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447IjHBB019924; Tue, 7 May 2024 18:45:17 GMT (envelope-from git) Date: Tue, 7 May 2024 18:45:17 GMT Message-Id: <202405071845.447IjHBB019924@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 6ca0468a2f23 - main - libcbor: Ignore errors for unknown #pragmas List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6ca0468a2f23c82d6cdde2af1a42b62af3664766 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=6ca0468a2f23c82d6cdde2af1a42b62af3664766 commit 6ca0468a2f23c82d6cdde2af1a42b62af3664766 Author: John Baldwin AuthorDate: 2024-05-07 18:44:52 +0000 Commit: John Baldwin CommitDate: 2024-05-07 18:44:52 +0000 libcbor: Ignore errors for unknown #pragmas libcbor embeds clang-specific #pragmas that GCC then warns about. Reviewed by: emaste --- lib/libcbor/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/libcbor/Makefile b/lib/libcbor/Makefile index 5ae2c34a5963..c9d86c0b95ad 100644 --- a/lib/libcbor/Makefile +++ b/lib/libcbor/Makefile @@ -30,6 +30,7 @@ SRCS+= cbor/internal/unicode.c CFLAGS+= -I${DIST}/src -I${.CURDIR} WARNS?= 2 +IGNORE_PRAGMA= MAN= .include From nobody Tue May 7 20:14:07 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYqHN00k3z5Jb2Q; Tue, 07 May 2024 20:14: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 4VYqHM6TMyz51pF; Tue, 7 May 2024 20:14:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715112847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GpRs7XlRCIhYlm/kAe6BXGhZLpTNHLFGh7WVWbPBymo=; b=MfzPouaX6sEEs80Waze37xvLuZwe5bPy58lrtqnf1uBgr+Mx5ITu2DFQFxWJuuYwepRvp9 oLZB9KnVgtjJDHAX2dfWGbFXog+2wJaw/O6zW6F+TflLBR3zSdQZmSdlwqNQUZc23lIqlr YDGNqmTPUHXvevQ546qAeIMkSGEBEVYwo0EVOQ420zbhF2XTmGM2nCNR5/cl+ofiDD+1H6 FHWEga/F1855Yq6JVW64edCrnTR6jbywVBMKzNDNwK8NRJTg/xtSxSozuYSutNFvsF0l2u rqEFArMt5QQ+frylwf1ttjBABD/L3dftkcT1luA3wVSmvI0zYumIYaQDuEpX6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715112847; a=rsa-sha256; cv=none; b=STHMkjM+g1zcB+drgVC/PuqfjbKVpj0qatY0qZIP/JjsAYKbPnePfY861J57fSbzcAFgkA 7rn0LU/FmSVvjESHIT/NQPi36A7LO+NuQi2MojWXwL6S7EFwl96qVvNhPAdNj0Lu5mSwE2 pVgAU+OG5Qt8q2rrzKdeTVRKc8BX++X8QCSwa9S46fAKuYzEosf7UmYQScNMCaL4Os+8cz 8CM4++AoCjbmu25S2zvTOPaML6POijU4ZOPezi6w+skIIKhmOuEauuikDi4bQPD9fwz1q9 /jkTstuPYeaWb7WBkotA5Kg0x9uNq7tS/E8WA0muNt8tpa3qzmdbayvUmFyJPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715112847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GpRs7XlRCIhYlm/kAe6BXGhZLpTNHLFGh7WVWbPBymo=; b=c6EnaSujqZpUoORPbJBVUaKd4peP3tl4RSviVbSe8tmtihFG3qebRtHfNkx3GldT/gMLL5 18VW7u/Nb4yrXZNN17VbVPK8/eQKwvsbjIe5bXG/sf01YDYtnbosiXUoCADeSEVbr225Vq 7UGrQwMt3EaxQKfgtO+zzpjYOg6wT4CCxB2kEjOZ09gqSfQLDOnKAtyNTFpfXW5IkFh1w5 auAXShBiJxIYP+Z1dcmu8I98L26aNWSGnx3UxbAa+PwGPulhGKN22H/HWybjzcYrCoTYEJ wGMk+YL+g43F8DT1IA/ucePumPqzCxxTIjvgKzKLVTTZeJfr53U6DaehojFrCg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYqHM64jXzwCx; Tue, 7 May 2024 20:14: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 447KE7V5072436; Tue, 7 May 2024 20:14:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447KE7bu072433; Tue, 7 May 2024 20:14:07 GMT (envelope-from git) Date: Tue, 7 May 2024 20:14:07 GMT Message-Id: <202405072014.447KE7bu072433@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Richard Scheffenegger Subject: git: 59884aea8b98 - main - tcp: clean up macro useage in tcp_fixed_maxseg() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rscheff X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 59884aea8b98781ecc7ad2d490a9210aab750de3 Auto-Submitted: auto-generated The branch main has been updated by rscheff: URL: https://cgit.FreeBSD.org/src/commit/?id=59884aea8b98781ecc7ad2d490a9210aab750de3 commit 59884aea8b98781ecc7ad2d490a9210aab750de3 Author: Richard Scheffenegger AuthorDate: 2024-05-04 08:42:42 +0000 Commit: Richard Scheffenegger CommitDate: 2024-05-04 11:04:25 +0000 tcp: clean up macro useage in tcp_fixed_maxseg() Replace local PAD macro with PADTCPOLEN macro No functional change. Reviewed By: tuexen, #transport Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D45076 --- sys/netinet/tcp_subr.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 306053ae8289..b17231a243f1 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -3530,7 +3530,6 @@ tcp_maxseg(const struct tcpcb *tp) if (tp->t_flags & TF_SACK_PERMIT) optlen += PADTCPOLEN(TCPOLEN_SACK_PERMITTED); } -#undef PAD optlen = min(optlen, TCP_MAXOLEN); return (tp->t_maxseg - optlen); } @@ -3552,7 +3551,6 @@ tcp_fixed_maxseg(const struct tcpcb *tp) * for cc modules to figure out what the modulo of the * cwnd should be. */ -#define PAD(len) ((((len) / 4) + !!((len) % 4)) * 4) if (TCPS_HAVEESTABLISHED(tp->t_state)) { if (tp->t_flags & TF_RCVD_TSTMP) optlen = TCPOLEN_TSTAMP_APPA; @@ -3560,23 +3558,22 @@ tcp_fixed_maxseg(const struct tcpcb *tp) optlen = 0; #if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) if (tp->t_flags & TF_SIGNATURE) - optlen += PAD(TCPOLEN_SIGNATURE); + optlen += PADTCPOLEN(TCPOLEN_SIGNATURE); #endif } else { if (tp->t_flags & TF_REQ_TSTMP) optlen = TCPOLEN_TSTAMP_APPA; else - optlen = PAD(TCPOLEN_MAXSEG); + optlen = PADTCPOLEN(TCPOLEN_MAXSEG); if (tp->t_flags & TF_REQ_SCALE) - optlen += PAD(TCPOLEN_WINDOW); + optlen += PADTCPOLEN(TCPOLEN_WINDOW); #if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) if (tp->t_flags & TF_SIGNATURE) - optlen += PAD(TCPOLEN_SIGNATURE); + optlen += PADTCPOLEN(TCPOLEN_SIGNATURE); #endif if (tp->t_flags & TF_SACK_PERMIT) - optlen += PAD(TCPOLEN_SACK_PERMITTED); + optlen += PADTCPOLEN(TCPOLEN_SACK_PERMITTED); } -#undef PAD optlen = min(optlen, TCP_MAXOLEN); return (tp->t_maxseg - optlen); } From nobody Tue May 7 20:54:16 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYr9j1ktTz5Jg6W; Tue, 07 May 2024 20:54: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 4VYr9j1ByNz55GQ; Tue, 7 May 2024 20:54:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715115257; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+UJ6eCUXy23lnBO4/Sc7jF8hUktjFQBfRM3KzfXgr9A=; b=yZInqbVaCJOQKjy9g5JN6D6FW186nKxo1l/IKx8qMkag/ayKEkyQIoB0Tu8OlHgAN2byH2 QgSom6XU6Xzde85s0PTWe+1u9p40VmYxd7P34z511UUuDeRdZqeX+Uc/LH9EERezT9Ac/B qyKfANuk0uGRMqdd9dHyjre4IjYIcuRr/xHwFMgaMBv+ywU4ydR92nL0zqGNHeoVoEOWEp 2Fo5whjHL8oiPgPCc2UWW//7BJaaz8V6ibROBRP96cdLTofAqvFgHAVkR8fGyq0/etCLr5 TuDNl+8IZjgfWOx1umtfXZX94zRjhUduCAyGVrs3XMGgefGfDSXBnj2Ha9GdXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715115257; a=rsa-sha256; cv=none; b=yKBZwUuffpTid50dbM6pn5qvYOik3w6ziL1U8MOgpc7X5dp0N9KdGgqsBDpAhQk1ox1TGP i5ItRuFEVbzGh/7Qx4eyVfw484bZxnVwQ3RhTGHCh5QzqrBAR4oaUrU2ijyfi4ptATdONa PKurQ0HBxFDCVeTUFQspL0+AhSjnLvkIbBJhNyqwKCyUEenuWhRLVKuoMOabxR2k4UcPG3 o5fGrFhVqow8c2DSs9Pv4mAtnKSSEkS1NesjybodRe/pTyVUV2o8VcE9eNX9cwa1zigYLO JBY9DowxbtZMDUjNBGL/Ec31VbIXU8uHDuxO6ZOA/I+KyyFRIMvzXhOa01X1iA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715115257; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+UJ6eCUXy23lnBO4/Sc7jF8hUktjFQBfRM3KzfXgr9A=; b=KqhQyLvDSsTjBPx2+P2RUmRe0hc6pSMrRo8X4vS0AZAGifynrIbBARmr+d0ixg2ezZW7D9 ZY8fNIeto5TGT0rEHyP6qRHp4k2lf7s2i+Z2KLGiblJyQLOPgGZq8XzSc5OZXNu6vDSZ63 zVdfwjX6loIa9j0bmhIDYUvxm8lJUyGxK4CKsVhyivLX9vcNX3i595sM6INLs/DKfBRSuo G8DQov3ST9jR9GZy2OZ2Yp3qzD9CICMmUsowUyEkECBAX8gZW3kT1Qt7FtpdLA4CYre0mP Y/e9NW9+hGGOwEAf8XRZmiVvmElt3Ci41DwwOFccx+xYcSQqJvq60m70X+CJog== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYr9j0grWzwJ2; Tue, 7 May 2024 20:54: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 447KsG6X039815; Tue, 7 May 2024 20:54:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447KsGnm039812; Tue, 7 May 2024 20:54:16 GMT (envelope-from git) Date: Tue, 7 May 2024 20:54:16 GMT Message-Id: <202405072054.447KsGnm039812@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 766c4ad385cc - main - libzpool: Disable -Wpointer-to-int-cast warnings for GCC List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 766c4ad385ccf96f8cf10129363a6bfa58b3e92f Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=766c4ad385ccf96f8cf10129363a6bfa58b3e92f commit 766c4ad385ccf96f8cf10129363a6bfa58b3e92f Author: John Baldwin AuthorDate: 2024-05-07 19:32:58 +0000 Commit: John Baldwin CommitDate: 2024-05-07 20:54:00 +0000 libzpool: Disable -Wpointer-to-int-cast warnings for GCC This warning is already disabled for zfs.ko. --- cddl/lib/libzpool/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cddl/lib/libzpool/Makefile b/cddl/lib/libzpool/Makefile index f641edaccb52..149c14919028 100644 --- a/cddl/lib/libzpool/Makefile +++ b/cddl/lib/libzpool/Makefile @@ -288,6 +288,8 @@ CSTD= c99 CFLAGS+= -g -DDEBUG=1 +CFLAGS.gcc+= -Wno-pointer-to-int-cast + # Pointer values are used as debugging "tags" to mark reference count # ownerships and in some cases the tag reference is dropped after an # object is freed. From nobody Tue May 7 20:54:18 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYr9k3BrCz5Jg6D; Tue, 07 May 2024 20:54: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 4VYr9k1WRVz55GR; Tue, 7 May 2024 20:54:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715115258; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3xlpxWOWbsHfQtjYlHT9n1Y+K5Exl2V834/scMDkIEk=; b=wyE3ag3cZuUki4zn2RPITNxNiPdRh2KZJ5FjkSxIXWk5iGlRzojsm4dRFmZ73OthMMQvHa JzIf5VrwwmiY/MBHuQBXK3zzp/D2C00SlV+JXT58U1UQfsKA7bBoJk9qnOxIcagRtFhq5h fBB77Q121l86Wq3xifl/Haksk1WbU7kgvdHeMrtML5oFXGL1fssezpwT02+Hpw9YqzsPe9 GYZvR0xuahCalI5QHKgs4LGHZTK3fE+pLLnKd3umiTIysqPxW5xSpFrf+BQPa49PEM5x4L +2QGEuilEo+/o43c99AQOIKjMKTp5bFpfL+bb0l97hbGEcRsQ7J11Hf0hipCMA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715115258; a=rsa-sha256; cv=none; b=KoNjSk3Ik99YGESMVoNz1mnpt1e0Zz3GDnE26fauGDGkyHJ6o37PPCBpC9J6TiUUkfiYmL 4wp8JdogeRc0ikXoLEum37BQ1DMmmmHbToHegxjJW9F/FmjvcsJ87rFFdhHpjN9DoLhdUz u8n/70qri2ofyUHSYyom6mIVM0i1oySMzpCZBzW1tUnaU5jDMOg+1AxmViZT9M6J+Skm0f nUlJeNiHjNQ/Ld7hh6iXNzWvMyyVTx389hb7wAyR3IMQtdhG46EJK4dFUQJVfGnx0Wj12L 4g0TLCAXo86JJzV+CBGvTTdK0gSzjA3KhkGgugYU8l+zSiB8Kt/rls27U7sZ3A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715115258; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3xlpxWOWbsHfQtjYlHT9n1Y+K5Exl2V834/scMDkIEk=; b=PZQ+oQxyXVdhqkynvilQkVBtHpg1fI3u+OrUk1Z413l6A98CIN4VKc+D5TawxA4JkYCGNJ 7Ftxk71ETdeuacVtzsGGIwP5PMlwV8/y+m60+4x8C1PrwgjD4urKGPweLrFVT00GhxpO1f Yz9epCwLrOTbRawPfeYTRU/rPFXkcWmwwAB4vxqUDHCI1jpuV/g00ORSzuqTyu2GFBWdQZ zAP3S/7bH3dWqAcFfdOysUO9I/gBvGQEMhw0wQsGiJovLgClSc72ZTN3j+nIXA+mkgQr5t VD5mYJW7XdkchcEqPIPKp/0+9GLkyf9n6DIL80oxdLvVW2D5333z8cgIeKPIVw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYr9k17F9zwmJ; Tue, 7 May 2024 20:54: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 447KsIld039860; Tue, 7 May 2024 20:54:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447KsICc039857; Tue, 7 May 2024 20:54:18 GMT (envelope-from git) Date: Tue, 7 May 2024 20:54:18 GMT Message-Id: <202405072054.447KsICc039857@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: c8703409edb7 - main - nvmecontrol: Fix a sign compare mismatch List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c8703409edb782b953b89d517a1757756788ce18 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=c8703409edb782b953b89d517a1757756788ce18 commit c8703409edb782b953b89d517a1757756788ce18 Author: John Baldwin AuthorDate: 2024-05-07 20:45:51 +0000 Commit: John Baldwin CommitDate: 2024-05-07 20:54:00 +0000 nvmecontrol: Fix a sign compare mismatch Even though mqes (uint16_t) and queue_size (u_int) are both unsigned, the expression 'mqes + 1' gets promoted to int which is signed. Keep the value unsigned by explicitly promoting mqes to u_int before incrementing the value. Reported by: GCC --- sbin/nvmecontrol/fabrics.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/nvmecontrol/fabrics.c b/sbin/nvmecontrol/fabrics.c index 6470e4062b39..c9aca088c47e 100644 --- a/sbin/nvmecontrol/fabrics.c +++ b/sbin/nvmecontrol/fabrics.c @@ -452,8 +452,8 @@ connect_nvm_queues(const struct nvmf_association_params *aparams, /* Validate I/O queue size. */ if (queue_size == 0) - queue_size = mqes + 1; - else if (queue_size > mqes + 1) { + queue_size = (u_int)mqes + 1; + else if (queue_size > (u_int)mqes + 1) { shutdown_controller(*admin); nvmf_free_association(na); warn("I/O queue size exceeds controller maximum (%u)", From nobody Tue May 7 20:54:19 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYr9l4rD5z5JftQ; Tue, 07 May 2024 20:54: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 4VYr9l2tVsz55BZ; Tue, 7 May 2024 20:54:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715115259; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CUOZJ8n9P60h/eIPoyh3jRpZ5nV80WRmNJx3HVUV8mA=; b=a6aHCXt07VNuCrGAMRGaYXDvhUqpnmcFUE4kfqlM9D8PfSMXaMwVcTBC5b878FHYgDqvb9 bjLB1WOt5bsBj4rUG8HY662Pe6lsPIwuZUEHVfsZH31HGeyGlwPs7YAFC5bN5oXlPPLEWG lSuoVoKHirwvYTIV+3NH00amjWQxifE0K9WDZNktymCe6szeFhNWl2y8ZFZuHsX4eA8iyS KcUIbwwQPzf3nw68AnB8otEp0P+6gaeiThzurPXBWqHlSEa091P9WY+l0nGs8dTPYzKjEM Gikm5y4eqI/N/2RLVvBKXHzTwzk4BKBrj8aBKQcUpnvo1rD+1o7qdfoS7Kp07Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715115259; a=rsa-sha256; cv=none; b=UYQ1DBUtPHvHQsMNirj/tDhysn0JBCnf/dl7CS/4SsvPykBMYCxN6kHVojTD8ePrZnzKDr zpm6g3kqM7vy1zM3RQrimtsgRgg85dpDrDw79xn++IO27G80vGLqiN1Lfk7GydkGOuAW2Z OrOwq+9OqwRqx2v5hErz3b2TC9lghjW6UyveBHsBkCz/51TRPE24pzOj+aYLAYJPXpwkJ7 xOMOpwEeK7te0amOiEcOjT1gxZIJpjoAwmwQPE8wkraJhuvpMxciV0Y/hQFEhoSpIQ0T8S aemqSczS8/YRLFjEHTCKyO3qATNX6SZJ4tanfKZEdAP8Aq0KnFlD4NrXJf2w0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715115259; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CUOZJ8n9P60h/eIPoyh3jRpZ5nV80WRmNJx3HVUV8mA=; b=cHzj9nfH3KhI5wvT458dy629RWxd0NalcuMjBi20xHxWhzMs+EVrqA93BURYFS78Vi52w9 PvrEqe421TqdMWPsDuvWbjzNXHH9OPmAd2JaFoWRJo2UEIJQtZz1VvR+3EwRcA2+7OMYPd fershMsqKG/s5WB+2SrqVevYl1hILuBJcIohg8LXM0iiBlXGyOHVOQsscM0RiJPOiKjZjP BfQQB6WlLi/4ugjHTicZzvpMRGNZN5hRa98Vw3q/3bJ3GApJ6MjVVoFe0vn4j+LJmauYQT tH9Jv7TCMzPqbkfuGyYL35pKVBX4FUw1WGYKHCr08LYZ+6yKfjOy2Xml/nhBqg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYr9l2SmQzwsB; Tue, 7 May 2024 20:54:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 447KsJ7x039914; Tue, 7 May 2024 20:54:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447KsJVK039911; Tue, 7 May 2024 20:54:19 GMT (envelope-from git) Date: Tue, 7 May 2024 20:54:19 GMT Message-Id: <202405072054.447KsJVK039911@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 29d7e39f5690 - main - nvme: Bump the alignment of struct nvme_health_information_page to 8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 29d7e39f5690af095b96ce2d3c9907423c7f5715 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=29d7e39f5690af095b96ce2d3c9907423c7f5715 commit 29d7e39f5690af095b96ce2d3c9907423c7f5715 Author: John Baldwin AuthorDate: 2024-05-07 20:48:06 +0000 Commit: John Baldwin CommitDate: 2024-05-07 20:54:00 +0000 nvme: Bump the alignment of struct nvme_health_information_page to 8 This ensures that embedded uint64_t values used for statistics counters are aligned when allocating a structure on the stack or as part of a containing structure. In particular this quiets -Waddress-of-packed-member warnings from GCC when compiling the code in nvmfd to update the stats. Reported by: GCC --- sys/dev/nvme/nvme.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h index a4baade7df5d..6ef7a2bd8aad 100644 --- a/sys/dev/nvme/nvme.h +++ b/sys/dev/nvme/nvme.h @@ -1601,7 +1601,7 @@ struct nvme_health_information_page { uint32_t ttftmt2; uint8_t reserved2[280]; -} __packed __aligned(4); +} __packed __aligned(8); _Static_assert(sizeof(struct nvme_health_information_page) == 512, "bad size for nvme_health_information_page"); From nobody Tue May 7 21:42:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYsFQ2RbSz5K1SY; Tue, 07 May 2024 21:42: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 4VYsFQ1Npwz59M6; Tue, 7 May 2024 21:42:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715118154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PAriXaGA7ulmjuQ/KVHlgbkPp+8BLONJT70qZfctMf0=; b=Bd4mH/GcIDQxw6QF8XLLpctyvj7nip5urj1U1Nv/5DfQx4akh9UKn4/53LTONymXIV/HqD uieEdsIRJLvfKtI5VFtrsTTI0JWGnGqT2XwySbcT4f9geJbMzw3ha/MuK0RxzFV3P4lCbR MD+Svu2mirH/gXi8TpsHnfCb//4X1cr40WkYJ0Mi/neyWy+r2rXb7KGSeXq+MLVUQjctkB 7UDyolE0KaD5QxowSr/5s0t7D9WEvjJczPkwCUNjpDbJ4BgbOb9neo/0FpEt3ZE20fmdlW gEnsUBcjVRwZfbhpAej8CCpkt6jUoGxiH9OKjw7PA6DD8+t0TZjrux9UFcCRhQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715118154; a=rsa-sha256; cv=none; b=SVsM2Ty16fy/hDML5p9QDP5ak8gW2+RzodtmsnZd0dxJ8hae/Fgwi+b4xCKSheyAMHt4gJ xgxK6tIiw/dGdpPHjswLgQm7KZ5Cvo+qSr8O3b7hU1FMLyBKBuCWcszBJpAjdt5shhq1Cf VqUKLnruK7q+SmG9FXmgBHPy6jsdHJOgtVM3G+WyItP3CUNIphlp5/E1hc+JGhTxFMwFVK 25bN1VR92kBNAqFM6T/Ne9VesuY/tM0e5t201X6PbASE6RGK5Nrx8CIhSosbCs1AnEUny0 9/M7x7BybvFXP2gANckjilsxO2CHIIGj1taKtwbeXnyc7w0qWs5WN9eRvfP9ig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715118154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PAriXaGA7ulmjuQ/KVHlgbkPp+8BLONJT70qZfctMf0=; b=UK0H7qB/J1tIp3Vv7Sqd42RPs9JDFwLAfSgMUp/aFIxHBRHOrkWG7eS9YM+KO6j8aSmJEj awlXQvY5OHiNmiplAvKQL9DyPCQEpHn49kRivd6o+LSVCfjSU939bQCM/ak2pMY2TevPJ8 AX5L762p9RYhyQXCK2ZDbd0FbnyoNL3+ALEBneOLnJ1v5MhULEyPBfifQtMdrc8yuLAE80 MwCAQj2w5gXvE1bm+sJCaLB5W8KZ5BUc9bHwNhqfcGFRZya9I6tWV4pyZue8lWSvHTnqFZ X3J7x2XQM/qIPI67Us3qnCmicXLRKv+iiSvDBIr1omIHi/KFegLV6jFzOmHjUQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYsFQ10X7zyJ1; Tue, 7 May 2024 21:42: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 447LgYVO023662; Tue, 7 May 2024 21:42:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447LgYXM023659; Tue, 7 May 2024 21:42:34 GMT (envelope-from git) Date: Tue, 7 May 2024 21:42:34 GMT Message-Id: <202405072142.447LgYXM023659@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: b925d7196782 - main - sockets: garbage collect PRCOREQUESTS and stale comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b925d719678210b76adeb105f5f4b41550eb6bb4 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=b925d719678210b76adeb105f5f4b41550eb6bb4 commit b925d719678210b76adeb105f5f4b41550eb6bb4 Author: Gleb Smirnoff AuthorDate: 2024-05-07 21:15:49 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-07 21:15:49 +0000 sockets: garbage collect PRCOREQUESTS and stale comment The code deleted predates FreeBSD history. The comment deleted is 99% outdated. Why KAME decided to use these constants instead of normal ones also lost in centuries. --- sys/netinet6/icmp6.c | 4 ++-- sys/sys/protosw.h | 24 ------------------------ 2 files changed, 2 insertions(+), 26 deletions(-) diff --git a/sys/netinet6/icmp6.c b/sys/netinet6/icmp6.c index c5e3334eca67..e0f642544327 100644 --- a/sys/netinet6/icmp6.c +++ b/sys/netinet6/icmp6.c @@ -2683,7 +2683,7 @@ icmp6_ctloutput(struct socket *so, struct sockopt *sopt) } switch (op) { - case PRCO_SETOPT: + case SOPT_SET: switch (optname) { case ICMP6_FILTER: { @@ -2708,7 +2708,7 @@ icmp6_ctloutput(struct socket *so, struct sockopt *sopt) } break; - case PRCO_GETOPT: + case SOPT_GET: switch (optname) { case ICMP6_FILTER: { diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h index 60d8ffc31362..1d691166929f 100644 --- a/sys/sys/protosw.h +++ b/sys/sys/protosw.h @@ -163,30 +163,6 @@ struct protosw { #define PR_CAPATTACH 0x80 /* socket can attach in cap mode */ #define PR_SOCKBUF 0x100 /* private implementation of buffers */ -/* - * The arguments to ctloutput are: - * (*protosw[].pr_ctloutput)(req, so, level, optname, optval, p); - * req is one of the actions listed below, so is a (struct socket *), - * level is an indication of which protocol layer the option is intended. - * optname is a protocol dependent socket option request, - * optval is a pointer to a mbuf-chain pointer, for value-return results. - * The protocol is responsible for disposal of the mbuf chain *optval - * if supplied, - * the caller is responsible for any space held by *optval, when returned. - * A non-zero return from ctloutput gives an - * UNIX error number which should be passed to higher level software. - */ -#define PRCO_GETOPT 0 -#define PRCO_SETOPT 1 - -#define PRCO_NCMDS 2 - -#ifdef PRCOREQUESTS -char *prcorequests[] = { - "GETOPT", "SETOPT", -}; -#endif - #ifdef _KERNEL struct domain *pffinddomain(int family); struct protosw *pffindproto(int family, int type, int proto); From nobody Tue May 7 21:42:35 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYsFR54hPz5K1W4; Tue, 07 May 2024 21:42: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 4VYsFR2h2bz59M7; Tue, 7 May 2024 21:42:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715118155; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ze1ctOY1aVxYtAekPGlP2p6B91zJ4FLdQ0IvIvGvViM=; b=q1Iyn7xkQHxcEeGdFBH3WAfzYLX7tq9DZPlQJvJ7x/vTCgkkyq5OjSV4rdPbyNEcn097QK g7g0ITi0GXejY4Z0cuvpPdc9NQ6yQVMAQjIGUV2P1AymWfD6msqAuLLLIsByQEskAPaiQg bRGqYyxy1NibF+qXhaZRAs0OHVepaQG4w0+S2vOrqiTsnVOxbNNlfO4lsyF9dD/yiHTZri eG0MBgGd/dV8Q5F/Kt+WxUkExRyJwZZemj+lFtf5Ed25PqmLqHRYGGDFPdhM7jtZsfX4+h 366UAjhgUl3rm/JesRcl3YND/gdWF5g4pxXEHOwKd6ERj7rnkeEP7hm2RN87DQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715118155; a=rsa-sha256; cv=none; b=SKyb8sxtrcmVZv6Lfa25AjZwxdJZNaJv/Km+sMSzM2VyZQXIUwmGtFRnP3ujGjXZJuWm+O FI21ZSZL/dVBNuT2EO2likg+jagVQntibPBtrT517SR5zEnCcxbxN/RYNnovJurh/lfVvQ x65r88706QDziganIwfjbA4K+tV0f+f2fqaQiD3PbEGQB43OekYLAV5DvULlkKqMWZogv/ Dd6QOVWa88DhnV0qUbakVtdfw4KUtethw75J7dbpRC3a+DKg0QAzBjvWOcTP30QUEoamop CSaCPu5m9d8ZHzq36VrKuuCKuCdk44BgvEXThkEapRdZr0S2F0gRqisoavb61g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715118155; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ze1ctOY1aVxYtAekPGlP2p6B91zJ4FLdQ0IvIvGvViM=; b=YJse7bjoJ6gvezArYG7EPCGVIa5WBjH+j6azx2+JxJ/CUn87QkSpi9vHRXXdjImBJCtoFQ QvhpLkXZELxqeT09n15SGEOiT3QJMF3wTf33dTu6SaH6i21zc/vmVSJU2zpBy5c2v7H1K7 9h/M7rAIknZPbHi+YAFawk9rtLoDVtkGL9i+ZNBoXX2UcBnto3AFW9rGVwcUDUk7otCW9h 1zkepEbuF2lGdRX5P6JPLAaCZSMAkR2tGXbQyeeuIW+5b7PHAXb3/Q2f0qW4KduOQjyTrU xsllRR/EH5DTOoCGKh0O2ylL9mP1KxEbs2NQBk5fF0ehLRzgxy1rbX/++wiTag== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYsFR2HZczy41; Tue, 7 May 2024 21:42: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 447LgZdT023701; Tue, 7 May 2024 21:42:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447LgZZM023698; Tue, 7 May 2024 21:42:35 GMT (envelope-from git) Date: Tue, 7 May 2024 21:42:35 GMT Message-Id: <202405072142.447LgZZM023698@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: b6b4ac2faafa - main - tcp_hostcache: remove unnecessary socketvar.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b6b4ac2faafa033563125a8d97f4a8f7b3bd185f Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=b6b4ac2faafa033563125a8d97f4a8f7b3bd185f commit b6b4ac2faafa033563125a8d97f4a8f7b3bd185f Author: Gleb Smirnoff AuthorDate: 2024-05-07 21:15:49 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-07 21:15:49 +0000 tcp_hostcache: remove unnecessary socketvar.h --- sys/netinet/tcp_hostcache.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/netinet/tcp_hostcache.c b/sys/netinet/tcp_hostcache.c index ed90a9ba7196..a42ed8dc0d15 100644 --- a/sys/netinet/tcp_hostcache.c +++ b/sys/netinet/tcp_hostcache.c @@ -80,7 +80,6 @@ #include #include #include -#include #include #include From nobody Tue May 7 21:42:36 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYsFS5LsVz5K1W7; Tue, 07 May 2024 21:42: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 4VYsFS34Wtz59FK; Tue, 7 May 2024 21:42:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715118156; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n5vqZzjrOuUA09Qt/lYxigK6cvV7lCEW553TlsW+Xbc=; b=pbADlVcTIL0RGPrJoWt/OO/UhGv+2iWnnv1o/8yfxEh0cUQ9+qd4+XkXqBDUadtwCnpKI4 9dBPUkDSFbtmoKlfcKLAqBH2GEzKJFwvhHeSeiYaTVMDFznT/OEFFFFNrCbSaEC5ZoPqea CxrcW6Jc4UuOehhLLw+UtsB4RfT/SqVglvyAMuEMY53wpeKJd2AzLMpGdxSmc6qEqT7pkK rLkv3dscB4AU4yajOyxoCRe/eL/iu1hICeUxpwP6H22L6sSOywGjwIKf/4xcxV4bQxG5dV hnEkoZsOzGxJCFW8jVL95WClVa//uG8uzAmzZYmplHHgxSOmnizRIOrMICiGgA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715118156; a=rsa-sha256; cv=none; b=O94u0WF1DaxNjYXBl0paiVtvoqgnk8nTZQT13TAbeeQpKd1+1adQbuNn192btG3apve5WO isqylSs3VA0mQthk6IQh38CGHWiuNe2YayzK2okPY/K/kxL28NiNhokhJJLTdKqux+zpw3 16ZUtmNLi2YTnoEnsCu7X0RXSVqOpL09FEYOFsDJzhuuUhX0SaVk88PupHdMg0UpOn2xtl LMOBGhaRf22ZwQiChmH+pKbrLgcRMlh2i58Jx9co1X0PMlw+W5hFFUKvhvsR2rl1AATO4U rA/MTz5JG067ytuvJspyu2IsQv+nAQIqvDjyAwDuBALtyWnZ9qJNf0wuJyblHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715118156; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n5vqZzjrOuUA09Qt/lYxigK6cvV7lCEW553TlsW+Xbc=; b=sVGCHfrETI3YKkWD1GALq4uGlfPxIYvvocDZIMXkLwXURsUUMkEJo0zFWaAqXE5MJhv7h6 D6fdJc2jOkiahlizx2HtR/LFK5Y3dZQPcGxgHFgZjfNPSAfPUowda3SyYyrVkX78p3PkwT TN+mdFhnnFjQZvqfIGulY0cnxCaIFQoDH27DQmqM7lVK2higMOZ+r7N85xJUqoQ92rQr86 Mlzj2fRVAC10bokf4kpKUVf6mRUMt5q9ANbG+FAQjj6/l6yey7H+7sWYmUs+apaKlOUdft DNxRAylRXDDfEOqVOTRMs38BMAKv7Ld/h4/MgLl/+Igbrs4RgCJhSpmhha77DA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYsFS2f7xzy8Z; Tue, 7 May 2024 21:42: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 447Lga62023745; Tue, 7 May 2024 21:42:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 447Lgaou023742; Tue, 7 May 2024 21:42:36 GMT (envelope-from git) Date: Tue, 7 May 2024 21:42:36 GMT Message-Id: <202405072142.447Lgaou023742@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: f6963113f49c - main - in6_rmx: remove unnecessary socketvar.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f6963113f49c48f30eaadf4dd8ec878f6cdd513e Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=f6963113f49c48f30eaadf4dd8ec878f6cdd513e commit f6963113f49c48f30eaadf4dd8ec878f6cdd513e Author: Gleb Smirnoff AuthorDate: 2024-05-07 21:15:56 +0000 Commit: Gleb Smirnoff CommitDate: 2024-05-07 21:15:56 +0000 in6_rmx: remove unnecessary socketvar.h --- sys/netinet6/in6_rmx.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/netinet6/in6_rmx.c b/sys/netinet6/in6_rmx.c index fb00a8ea2211..6eb61600b8df 100644 --- a/sys/netinet6/in6_rmx.c +++ b/sys/netinet6/in6_rmx.c @@ -67,7 +67,6 @@ #include #include #include -#include #include #include #include From nobody Wed May 8 02:37:06 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VYznH1cR2z5K21L; Wed, 08 May 2024 02:37: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 4VYznH0h66z4Kr3; Wed, 8 May 2024 02:37:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715135827; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4ZDGpwwuVbd1Oh+PjEdY8/2TP5eWxK336qxmxC6CoZI=; b=Wb83lKSE8plCOv+1CWgzo33bvdcfvsH4Unv+wOuEzI4bQDqr7qsC3GLqs+DKRQcRlXZUpu 0pilnkpLeD/Zxz3rETq/KsBCnIHniL1yditvuBtz2Hl0Zfr9RFJdbJmz8TxbLs9XU5zhRc YRVln1k4wgtTmN5h0/B9QiCQ3kdHulbnGA4SAlKqEVj+fX3YYXKCj6eUuo4R+4PRS2QCO3 ZiSJdFARAH5PD7HUsW99+DjX10bhbjXQOGMBnBMH3Glk7SAxJ90lTEVS3pjK1oOhr6NVH4 hnTz4ugNSeKKptr5cHA3qV8cHqI21Ynh+z09Kwrhu8QFceVzsnNG09RyrfhBnA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715135827; a=rsa-sha256; cv=none; b=YpGOREmshmMVAhCdIRUeWl7Xyy+8Zy/kIpbOGJJrYyc93KNPiNj1XDldk6WB0F4gnETsDj BrUO13p33nafuchwdpbHfkxw25qJVpWQ7GVki+5P6E/sYHuKRj9YV+1MCVfh+pYPGjrX2Y MJeRBLWIQD7tRic51ZBzg8+fW969TZF1tqWIf/Z9ONvJCKzYSr750ZIytX0C6tKGgvTxdB okOABvG3LG/J9eyCl7JFg9na1Oy4rUEaJqp+ICQl21hBkHJfN6JKWq03mA/Odw4dZWv8uu K1LWdkRrcm1x2OHaf9t1o75Et4hzRYSno9jojSY/GqCL7hVXEQY3Dm6dA0gQcA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715135827; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4ZDGpwwuVbd1Oh+PjEdY8/2TP5eWxK336qxmxC6CoZI=; b=CS0z9jXKKBpWkbhUQb8LLBNSbup/xaVGjbeHLjU113f1ya4kCFXpjw04lLa87EBF0mCuqJ rVFfkcxWCrOwnXXjTLZ2+mfrmvcmex9qJoF4xvAOP783GYPCZcmeIr0aGjweuOURzebIcq i9FXpIYGz+MCepwXDdUZpQ3JQqn1nXTCLJ78uQAv/SFAklvdjIM1hhgw7ohM2tOX5GT5kM NoBnGOP4Z+vozDEXNtIqR24xujHab+CbRaXMOok0qHR1MmIz5lu5MpDh4Y+EaOLvblvy9A mQbKQEc8qL+JViHm6SXH9UEolKe7uSb5xwzUelTyZUTWTIDIc1kgmMTwAwW6Gw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VYznH09Csz16Zs; Wed, 8 May 2024 02:37: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 4482b6kL013186; Wed, 8 May 2024 02:37:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4482b6JC013183; Wed, 8 May 2024 02:37:06 GMT (envelope-from git) Date: Wed, 8 May 2024 02:37:06 GMT Message-Id: <202405080237.4482b6JC013183@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alan Cox Subject: git: a803837cec6e - main - arm64 pmap: Add ATTR_CONTIGUOUS support [Part 3] List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: alc X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a803837cec6e17e04849d59afac7b6431c70cb93 Auto-Submitted: auto-generated The branch main has been updated by alc: URL: https://cgit.FreeBSD.org/src/commit/?id=a803837cec6e17e04849d59afac7b6431c70cb93 commit a803837cec6e17e04849d59afac7b6431c70cb93 Author: Alan Cox AuthorDate: 2024-04-17 16:39:46 +0000 Commit: Alan Cox CommitDate: 2024-05-08 02:31:14 +0000 arm64 pmap: Add ATTR_CONTIGUOUS support [Part 3] Introduce L3C promotion of base page mappings. When the base page size is 4KB, use ATTR_CONTIGUOUS to promote 16 aligned, contiguous base page mappings to a 64KB mapping. Alternatively, when the base page size is 16KB, use ATTR_CONTIGUOUS to promote 128 aligned, contiguous base page mappings to a 2MB mapping. Given the frequency of L3C counter updates, switch to per-CPU counters to avoid cache line ping ponging. Revise the L3C counter descriptions to reflect the fact that the size of an L3C mapping varies depending on the base page size. Co-authored-by: Eliot Solomon Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D44983 --- sys/arm64/arm64/pmap.c | 168 ++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 154 insertions(+), 14 deletions(-) diff --git a/sys/arm64/arm64/pmap.c b/sys/arm64/arm64/pmap.c index ea7ff18971e4..b1a85befa4e1 100644 --- a/sys/arm64/arm64/pmap.c +++ b/sys/arm64/arm64/pmap.c @@ -1684,15 +1684,23 @@ SYSCTL_ULONG(_vm_pmap_l2, OID_AUTO, promotions, CTLFLAG_RD, &pmap_l2_promotions, 0, "2MB page promotions"); static SYSCTL_NODE(_vm_pmap, OID_AUTO, l3c, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, - "64KB page mapping counters"); + "L3C (64KB/2MB) page mapping counters"); -static u_long pmap_l3c_demotions; -SYSCTL_ULONG(_vm_pmap_l3c, OID_AUTO, demotions, CTLFLAG_RD, - &pmap_l3c_demotions, 0, "64KB page demotions"); +static COUNTER_U64_DEFINE_EARLY(pmap_l3c_demotions); +SYSCTL_COUNTER_U64(_vm_pmap_l3c, OID_AUTO, demotions, CTLFLAG_RD, + &pmap_l3c_demotions, "L3C (64KB/2MB) page demotions"); -static u_long pmap_l3c_mappings; -SYSCTL_ULONG(_vm_pmap_l3c, OID_AUTO, mappings, CTLFLAG_RD, - &pmap_l3c_mappings, 0, "64KB page mappings"); +static COUNTER_U64_DEFINE_EARLY(pmap_l3c_mappings); +SYSCTL_COUNTER_U64(_vm_pmap_l3c, OID_AUTO, mappings, CTLFLAG_RD, + &pmap_l3c_mappings, "L3C (64KB/2MB) page mappings"); + +static COUNTER_U64_DEFINE_EARLY(pmap_l3c_p_failures); +SYSCTL_COUNTER_U64(_vm_pmap_l3c, OID_AUTO, p_failures, CTLFLAG_RD, + &pmap_l3c_p_failures, "L3C (64KB/2MB) page promotion failures"); + +static COUNTER_U64_DEFINE_EARLY(pmap_l3c_promotions); +SYSCTL_COUNTER_U64(_vm_pmap_l3c, OID_AUTO, promotions, CTLFLAG_RD, + &pmap_l3c_promotions, "L3C (64KB/2MB) page promotions"); /* * If the given value for "final_only" is false, then any cached intermediate- @@ -4547,7 +4555,7 @@ pmap_update_entry(pmap_t pmap, pd_entry_t *ptep, pd_entry_t newpte, * be cached, so we invalidate intermediate entries as well as final * entries. */ - pmap_s1_invalidate_range(pmap, va, va + size, false); + pmap_s1_invalidate_range(pmap, va, va + size, size == L3C_SIZE); /* Create the new mapping */ for (lip = ptep; lip < ptep_end; lip++) { @@ -4749,6 +4757,131 @@ setl3: pmap); return (true); } + +/* + * Tries to promote an aligned, contiguous set of base page mappings to a + * single L3C page mapping. For promotion to occur, two conditions must be + * met: (1) the base page mappings must map aligned, contiguous physical + * memory and (2) the base page mappings must have identical characteristics + * except for the accessed flag. + */ +static bool +pmap_promote_l3c(pmap_t pmap, pd_entry_t *l3p, vm_offset_t va) +{ + pd_entry_t all_l3e_AF, firstl3c, *l3, oldl3, pa; + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + + /* + * Currently, this function only supports promotion on stage 1 pmaps + * because it tests stage 1 specific fields and performs a break- + * before-make sequence that is incorrect for stage 2 pmaps. + */ + if (pmap->pm_stage != PM_STAGE1 || !pmap_ps_enabled(pmap)) + return (false); + + /* + * Compute the address of the first L3 entry in the superpage + * candidate. + */ + l3p = (pt_entry_t *)((uintptr_t)l3p & ~((L3C_ENTRIES * + sizeof(pt_entry_t)) - 1)); + + firstl3c = pmap_load(l3p); + + /* + * Examine the first L3 entry. Abort if this L3E is ineligible for + * promotion... + */ + if ((firstl3c & ATTR_SW_NO_PROMOTE) != 0) + return (false); + /* ...is not properly aligned... */ + if ((PTE_TO_PHYS(firstl3c) & L3C_OFFSET) != 0 || + (firstl3c & ATTR_DESCR_MASK) != L3_PAGE) { /* ...or is invalid. */ + counter_u64_add(pmap_l3c_p_failures, 1); + CTR2(KTR_PMAP, "pmap_promote_l3c: failure for va %#lx" + " in pmap %p", va, pmap); + return (false); + } + + /* + * If the first L3 entry is a clean read-write mapping, convert it + * to a read-only mapping. See pmap_promote_l2() for the rationale. + */ +set_first: + if ((firstl3c & (ATTR_S1_AP_RW_BIT | ATTR_SW_DBM)) == + (ATTR_S1_AP(ATTR_S1_AP_RO) | ATTR_SW_DBM)) { + /* + * When the mapping is clean, i.e., ATTR_S1_AP_RO is set, + * ATTR_SW_DBM can be cleared without a TLB invalidation. + */ + if (!atomic_fcmpset_64(l3p, &firstl3c, firstl3c & ~ATTR_SW_DBM)) + goto set_first; + firstl3c &= ~ATTR_SW_DBM; + CTR2(KTR_PMAP, "pmap_promote_l3c: protect for va %#lx" + " in pmap %p", va & ~L3C_OFFSET, pmap); + } + + /* + * Check that the rest of the L3 entries are compatible with the first, + * and convert clean read-write mappings to read-only mappings. + */ + all_l3e_AF = firstl3c & ATTR_AF; + pa = (PTE_TO_PHYS(firstl3c) | (firstl3c & ATTR_DESCR_MASK)) + + L3C_SIZE - PAGE_SIZE; + for (l3 = l3p + L3C_ENTRIES - 1; l3 > l3p; l3--) { + oldl3 = pmap_load(l3); + if ((PTE_TO_PHYS(oldl3) | (oldl3 & ATTR_DESCR_MASK)) != pa) { + counter_u64_add(pmap_l3c_p_failures, 1); + CTR2(KTR_PMAP, "pmap_promote_l3c: failure for va %#lx" + " in pmap %p", va, pmap); + return (false); + } +set_l3: + if ((oldl3 & (ATTR_S1_AP_RW_BIT | ATTR_SW_DBM)) == + (ATTR_S1_AP(ATTR_S1_AP_RO) | ATTR_SW_DBM)) { + /* + * When the mapping is clean, i.e., ATTR_S1_AP_RO is + * set, ATTR_SW_DBM can be cleared without a TLB + * invalidation. + */ + if (!atomic_fcmpset_64(l3, &oldl3, oldl3 & + ~ATTR_SW_DBM)) + goto set_l3; + oldl3 &= ~ATTR_SW_DBM; + CTR2(KTR_PMAP, "pmap_promote_l3c: protect for va %#lx" + " in pmap %p", (oldl3 & ~ATTR_MASK & L3C_OFFSET) | + (va & ~L3C_OFFSET), pmap); + } + if ((oldl3 & ATTR_PROMOTE) != (firstl3c & ATTR_PROMOTE)) { + counter_u64_add(pmap_l3c_p_failures, 1); + CTR2(KTR_PMAP, "pmap_promote_l3c: failure for va %#lx" + " in pmap %p", va, pmap); + return (false); + } + all_l3e_AF &= oldl3; + pa -= PAGE_SIZE; + } + + /* + * Unless all PTEs have ATTR_AF set, clear it from the superpage + * mapping, so that promotions triggered by speculative mappings, + * such as pmap_enter_quick(), don't automatically mark the + * underlying pages as referenced. + */ + firstl3c &= ~ATTR_AF | all_l3e_AF; + + /* + * Remake the mappings with the contiguous bit set. + */ + pmap_update_entry(pmap, l3p, firstl3c | ATTR_CONTIGUOUS, va & + ~L3C_OFFSET, L3C_SIZE); + + counter_u64_add(pmap_l3c_promotions, 1); + CTR2(KTR_PMAP, "pmap_promote_l3c: success for va %#lx in pmap %p", va, + pmap); + return (true); +} #endif /* VM_NRESERVLEVEL > 0 */ static int @@ -5161,11 +5294,18 @@ validate: #if VM_NRESERVLEVEL > 0 /* - * If both the page table page and the reservation are fully - * populated, then attempt promotion. + * First, attempt L3C promotion, if the virtual and physical addresses + * are aligned with each other and an underlying reservation has the + * neighboring L3 pages allocated. The first condition is simply an + * optimization that recognizes some eventual promotion failures early + * at a lower run-time cost. Then, if both the page table page and + * the reservation are fully populated, attempt L2 promotion. */ - if ((mpte == NULL || mpte->ref_count == NL3PG) && + if ((va & L3C_OFFSET) == (pa & L3C_OFFSET) && (m->flags & PG_FICTITIOUS) == 0 && + vm_reserv_is_populated(m, L3C_ENTRIES) && + pmap_promote_l3c(pmap, l3, va) && + (mpte == NULL || mpte->ref_count == NL3PG) && vm_reserv_level_iffullpop(m) == 0) (void)pmap_promote_l2(pmap, pde, va, mpte, &lock); #endif @@ -5630,7 +5770,7 @@ have_l3p: } dsb(ishst); - atomic_add_long(&pmap_l3c_mappings, 1); + counter_u64_add(pmap_l3c_mappings, 1); CTR2(KTR_PMAP, "pmap_enter_l3c: success for va %#lx in pmap %p", va, pmap); return (KERN_SUCCESS); @@ -6042,7 +6182,7 @@ pmap_copy_l3c(pmap_t pmap, pt_entry_t *l3p, vm_offset_t va, pt_entry_t l3e, l3e += L3_SIZE; } pmap_resident_count_inc(pmap, L3C_ENTRIES); - atomic_add_long(&pmap_l3c_mappings, 1); + counter_u64_add(pmap_l3c_mappings, 1); CTR2(KTR_PMAP, "pmap_copy_l3c: success for va %#lx in pmap %p", va, pmap); return (true); @@ -8181,7 +8321,7 @@ pmap_demote_l3c(pmap_t pmap, pt_entry_t *l3p, vm_offset_t va) pmap_kremove(tmpl3); kva_free(tmpl3, PAGE_SIZE); } - atomic_add_long(&pmap_l3c_demotions, 1); + counter_u64_add(pmap_l3c_demotions, 1); CTR2(KTR_PMAP, "pmap_demote_l3c: success for va %#lx in pmap %p", va, pmap); return (true); From nobody Wed May 8 06:39:39 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZ5974tglz5KRbP; Wed, 08 May 2024 06:39:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VZ5974HpTz4hky; Wed, 8 May 2024 06:39:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715150379; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XKrN5pSStuA0GAUu92bkQsAa59uBc/dnVjBH2rq5Ep8=; b=KgvHfVQM/eK/KDOVKDuASuEcxu1Xq3adlEaJTOuEHdaJWc0SQV719hcDnl8flO6c3E+YJU /mmw5PJ/+ZpPUY2GWd9YqSJx8tVFbGft6WJL5vjp3aeToVzVOIXc5AGhjDrnw4GVl++t/1 Y0VkR5hVtslZpiJsH2+LswjhxwDorWCbTjODomg2AEUTCuwL5aBgXQz/c6dVF/+mFCxjiT PFYLra5KDHSfs64YEB2j1c93WYh9upLk0HQgt2fxe915YWhfSzuBoh56V+UVszI+5CUhE6 HENMrFU2BbwTRjbzBGPcdYXYd0Ifpeqx4nlckLIvyifT0od662kUlqUjbKxpvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715150379; a=rsa-sha256; cv=none; b=VLcAVB6kGJQ4yP8IcZNqIrdYn26NJkMAuVacmiFXwS/0FOODmUdet9ax15UYtv7sYDtA53 u95U7esAPdfadqt2wga+auaCH0jNsyrh65QSY+EHWQp8upeymsWEmPOMldqZpVjUyZDZaT f17rLIWT8G8vth7yHCUMJWMbodgwCYEenZfejMtf2ve11CkJJCLuI1IqYlNuKgUBf5DC0Y 9fnbn61I79Xrf6Z7aT8fVkKW9vk/OefDMe9obQ9KwXVPQieunRV4h4CjdRcAN6pdo6UZTS AfczV4DIgzx5vymE1pC8sLCSbfgKVrEpXMiVXZ3bTjlXS+niZyoxqS6vCd5eUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715150379; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XKrN5pSStuA0GAUu92bkQsAa59uBc/dnVjBH2rq5Ep8=; b=pk/SrBrV1o+687KZfiI1AmrUDCPM3v6PQpr3ssnx1/0uSJX9uS/HMWWXPJPAoBBd7+mNZf UAvtrL+zo1B8MKUb302r3J1BopbdcwFLCvGDB1GzkvXgX6qHdU0bxts2SlJCfhdnH3M4i8 m7LjWIY7/lz5ADcxod5TO1X7vpMhODVQ7RCl474f2neU4a6XDL6H5gtzWBR8emq3x/DWbH 4BdvWuD8MQ7s9ksJeZJ/vFGZZnHtvEvlbBGPJGdJKLBlO9uD+cO6V0wc10c5H4Y3Ca/4hz Iu9U05Cu++hnch+nv/Wb3NcLvPVDkT6asOJD134xHbbXstAKApS2SMZ8U4o2vg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZ5973sydzDkw; Wed, 8 May 2024 06:39:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 4486ddAo020337; Wed, 8 May 2024 06:39:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4486ddM9020334; Wed, 8 May 2024 06:39:39 GMT (envelope-from git) Date: Wed, 8 May 2024 06:39:39 GMT Message-Id: <202405080639.4486ddM9020334@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: 54bbcc09a72b - main - ObsoleteFiles.inc: Remove /var/db/portsnap List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 54bbcc09a72b5d7a581f51416c9e635a33c2f884 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=54bbcc09a72b5d7a581f51416c9e635a33c2f884 commit 54bbcc09a72b5d7a581f51416c9e635a33c2f884 Author: Olivier Certner AuthorDate: 2024-05-04 11:35:46 +0000 Commit: Olivier Certner CommitDate: 2024-05-08 06:38:56 +0000 ObsoleteFiles.inc: Remove /var/db/portsnap This is a followup to commit "Remove remnants of portsnap(8)" (9b30b96c1fa4). I wasn't aware of OLD_DIRS. Approved by: markj (mentor) MFC after: 1 day MFC with: 9b30b96c1fa4 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45023 --- ObsoleteFiles.inc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 627f70ea3b0a..b84b8d917bf4 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20240508: Remove remnants of portsnap(8) +OLD_DIRS+=var/db/portsnap + # 20240507: remove gbde OLD_FILES+=boot/kernel/geom_bde.ko OLD_FILES+=etc/rc.d/gbde From nobody Wed May 8 09:04:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZ8Nq4Fpwz5KgSL; Wed, 08 May 2024 09:04: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 4VZ8Nq3lCyz3xQG; Wed, 8 May 2024 09:04:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715159099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nbhGOKq9PWdQ73fsivECqTgrXurnd4RzE5G6exq8NqA=; b=Rnpg6PT+NwjZZkEWnDNULA5/gEmHV+P/UcDA0hyhX71LS9m60BV+GXd3Yu+QtdDdP2XkX4 hnYc55+YD6a056rhSm6nuTNX7AsYQA9UniuxpQJ7OPz4AXc56Xw/5GgbYQSGK+GpndqKmI qNpAJsDfiq0KWBJlOKt9hpMoJdxfVlOLxpbzJBDA7KqLE6QKhrSEBr2bwUde5/GQl9RTRG 64PiueF/tRXiOFof77AMf5SRS8+A09dHMQISA3oMnklzdLjzwPJAKoKhTktdymVo5IpjDa 40YerjzDfYnnfjhs7PBwuAnIzNjLO1KjJXKBSVa4da/0ekdtMQrTW3UvkKigSA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715159099; a=rsa-sha256; cv=none; b=oI6JAFP4EkZYL2sNSIFG92YH51QsHdBmeoxlfP4g8KDhDBqT7Au/mw34C+iaw+i1toj6kd gdS8FLhXNP96M9kdGRFRKQMqvCv/mjZtutOsrYTEP/TlHB/R9MbjROAZqdPsb9PP34tg68 QyFqQ3qYu9zAsu3GTsNACl2ytGC/tOOFdS2qES4PTbF9OYKZ2A0yZRUPV1sn3t7nqTHfwO Y7ADl6bhXrbM1/A1mjPTiyUQyS/GMuo3Bs8LiU/f+P8ITH6jSagY/JYvDs0X2i0UBJmymA T5pUbDB/pNUAC5DVejlby4diniBGF8QeCLIqDnXpbH6/aI4GItch6c94kt65jA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715159099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nbhGOKq9PWdQ73fsivECqTgrXurnd4RzE5G6exq8NqA=; b=MwY8gWvbS7/9HBEvsFs8aK9RenssSaovjss6vWEWjSSFGUmPLXw7A5YXD6z5vYFMypNgt6 R9D0RPQyNHq/SiCmTIUxPXc/996fAnCPas+gS31rbZiZI5xgJmOfjGO6+u267Wt+/ODe4Z 1Tl2JAH0Jz6cflsVttU/O1mSBXr5KTg3m58Bm/j78RxdHn1VxPN09ixSwcyZXMvQaCa0Tt 5m8w+ucDfljmoiWROQ7M1XKpiGLewxaazUbe41pr40+0189ycWlWlKLPKKq6R4BZky1N9p smPLFHFpTP+ogw5V/of63c5DugozFwAXV0au8SmNoYPCoePJUJv4Ijb+ZGhM/g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZ8Nq3DFvzJt8; Wed, 8 May 2024 09:04: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 44894xVD073978; Wed, 8 May 2024 09:04:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44894xjh073975; Wed, 8 May 2024 09:04:59 GMT (envelope-from git) Date: Wed, 8 May 2024 09:04:59 GMT Message-Id: <202405080904.44894xjh073975@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Peter Jeremy Subject: git: b54d4a16271c - main - dtb: rockchip: Add Radxa ROCK 4C Plus to the build. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: peterj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b54d4a16271cf9e8947be04e9221e6e26a7b90b1 Auto-Submitted: auto-generated The branch main has been updated by peterj: URL: https://cgit.FreeBSD.org/src/commit/?id=b54d4a16271cf9e8947be04e9221e6e26a7b90b1 commit b54d4a16271cf9e8947be04e9221e6e26a7b90b1 Author: Peter Jeremy AuthorDate: 2024-05-08 08:06:42 +0000 Commit: Peter Jeremy CommitDate: 2024-05-08 08:06:42 +0000 dtb: rockchip: Add Radxa ROCK 4C Plus to the build. The ROCK 4C Plus is a cost-reduced variant of the ROCK Pi 4 based on the RockChip RK3399-T. Reviewed by: manu MFC after: 1 week Differential Revision: To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Peter Jeremy Subject: git: 3fe25a9bfcd9 - main - mii: Add support for Realtek RTL8211F-VD PHY List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: peterj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3fe25a9bfcd9c8afeb096828567353a84be37423 Auto-Submitted: auto-generated The branch main has been updated by peterj: URL: https://cgit.FreeBSD.org/src/commit/?id=3fe25a9bfcd9c8afeb096828567353a84be37423 commit 3fe25a9bfcd9c8afeb096828567353a84be37423 Author: Peter Jeremy AuthorDate: 2024-05-08 08:17:00 +0000 Commit: Peter Jeremy CommitDate: 2024-05-08 08:17:00 +0000 mii: Add support for Realtek RTL8211F-VD PHY The RTL8211F-VD is a replacement/upgrade for the RTL8211F. Based on https://github.com/torvalds/linux/commit/bb726b753f75a4eeda291438f89dfd9b94783569, the only difference is the lack of the PCR2 register, which FreeBSD doesn't use. This fixes autonegotiation problems using the RTL8211F with ukphy(4). Reviewed by: manu, bz MFC after: 1 month Differential Revision: mii_flags & MIIF_PHYPRIV0) == 0 && sc->mii_mpd_rev >= RGEPHY_8211B) { - if (sc->mii_mpd_rev == RGEPHY_8211F) { + if (sc->mii_mpd_rev >= RGEPHY_8211F) { reg = PHY_READ(sc, RGEPHY_F_MII_SSR); if (reg & RGEPHY_F_SSR_LINK) linkup++; @@ -338,7 +339,7 @@ rgephy_status(struct mii_softc *sc) if ((sc->mii_flags & MIIF_PHYPRIV0) == 0 && sc->mii_mpd_rev >= RGEPHY_8211B) { - if (sc->mii_mpd_rev == RGEPHY_8211F) { + if (sc->mii_mpd_rev >= RGEPHY_8211F) { ssr = PHY_READ(sc, RGEPHY_F_MII_SSR); switch (ssr & RGEPHY_F_SSR_SPD_MASK) { case RGEPHY_F_SSR_S1000: @@ -523,6 +524,7 @@ rgephy_reset(struct mii_softc *sc) switch (sc->mii_mpd_rev) { case RGEPHY_8211F: + case RGEPHY_8211FVD: pcr = PHY_READ(sc, RGEPHY_F_MII_PCR1); pcr &= ~(RGEPHY_F_PCR1_MDI_MM | RGEPHY_F_PCR1_ALDPS_EN); PHY_WRITE(sc, RGEPHY_F_MII_PCR1, pcr); diff --git a/sys/dev/mii/rgephyreg.h b/sys/dev/mii/rgephyreg.h index 205f1a836020..fef985ebe30e 100644 --- a/sys/dev/mii/rgephyreg.h +++ b/sys/dev/mii/rgephyreg.h @@ -38,6 +38,7 @@ #define RGEPHY_8211B 2 #define RGEPHY_8211C 3 #define RGEPHY_8211F 6 +#define RGEPHY_8211FVD 8 /* * RealTek 8169S/8110S gigE PHY registers From nobody Wed May 8 11:19:54 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNV31Zbz5Kspc; Wed, 08 May 2024 11:19: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 4VZCNV2Qvgz49Z2; Wed, 8 May 2024 11:19:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cwYzsY7lPwwmAB4G7KNutd7Oi0zSIwE1DP4KbXh1JGE=; b=kcTp1F1UDq5gjpJo+cOpuNSE77SGxkFI5onjERqaPRZNYtDWMtlgYfjExJ/PWVt2tnHXx2 TDubHdUnIPa8FldskYygLtsAyYaO6tvyFR1usMKERfV0vQgSao4cvDZeoze2ZwuWZmCO6s N6YZ+1/auYSmk9fhX9fZj+PnBjhvwNFjmzo7s3OfsmmPNmKBh5yk4De2mv2oxQ0IwZJHPW AINyQFx9DF3/OwahLC6mYRdqdUqtHz4N6gnpgIxiQUBMueb6W28Fh6nv/gC+acCzipvlgY hY1jz+gfsYoldb/EsUV+nkjvvW4cWNvOdp9fnQDJMPrg91xtpGqdLKVZr5NCaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167194; a=rsa-sha256; cv=none; b=jr7DlKDB9Myc/6s/aemMTb961Tz5996/76VGH/4CsGyleMJTq0yXd/oE4EJ6PJ+wO+8bZn hjdgbxcwaHDM0PFRdihzHyuAAzZg08RK9oYFBN4cfRVg64tUuGzFVVTw7HxPG75Gj7UbT5 7tZ1XaWQAgeau4Q/jm62SPnXS5I/njh76CNRAZVQueqYUHNMWMgL7aLLCYPOtAI1MrXSt0 MtOhvrA5NBs5HWiXM37sND8Cr/0n1ylGVBIOHiT+qJrAAan6F7fcJxhRURZYcqLiooRe0o nckLB0bW2vu/iIjYXdEBd4/t0jXoMkgyATsBgNpiXxJMWTsnMA2GbKAEw3aBNw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cwYzsY7lPwwmAB4G7KNutd7Oi0zSIwE1DP4KbXh1JGE=; b=ZLWlct3MkEjlMAkwta6NFxslEAuRxZzACQvHmQy5j0w9dbxNMl4JQdwp4TseEu89PCDiYs dYGfMdv+xqE52cMzF1h846+62c3MPedk0B0pcHzkenfmDSIbXLfchtqkfEbd+u3z/7NOG2 eORGxBwSiHHJQRL++n1M/tIAeylNXFTlQO12gu1ppFnVFXHuQ2Skm2Y5zTQ3waJAjMv8L9 Q53aUEW/VcG8yGwI6q3gln1ogxvFGmZp7GNagaeUqC9WSbQgLANKFQdb4y5m0mA01YqDg1 KRizd+xiMbRDeHKX/7WZ52VW08F+v9lYsS1/kzWVB1eufM3QsqK6krkQbpSQew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNV1vjRzMYH; Wed, 8 May 2024 11:19:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 448BJsZq094503; Wed, 8 May 2024 11:19:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448BJsLb094500; Wed, 8 May 2024 11:19:54 GMT (envelope-from git) Date: Wed, 8 May 2024 11:19:54 GMT Message-Id: <202405081119.448BJsLb094500@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 37115154672f - main - carp: support VRRPv3 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 37115154672f74744e8f5992a3f0953d61cb79bc Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=37115154672f74744e8f5992a3f0953d61cb79bc commit 37115154672f74744e8f5992a3f0953d61cb79bc Author: Kristof Provost AuthorDate: 2024-04-02 16:13:54 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:03 +0000 carp: support VRRPv3 Allow carp(4) to use the VRRPv3 protocol (RFC 5798). We can distinguish carp and VRRP based on the protocol version number (carp is 2, VRRPv3 is 3), and support both from the carp(4) code. Reviewed by: glebius Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D44774 --- lib/libifconfig/libifconfig.h | 3 + lib/libifconfig/libifconfig_carp.c | 6 + sbin/ifconfig/carp.c | 72 +++- sys/netinet/ip_carp.c | 654 ++++++++++++++++++++++++++++++++----- sys/netinet/ip_carp.h | 55 +++- sys/netinet/ip_carp_nl.h | 3 + 6 files changed, 690 insertions(+), 103 deletions(-) diff --git a/lib/libifconfig/libifconfig.h b/lib/libifconfig/libifconfig.h index 03a0d0b199b7..8d5ca01b0ce6 100644 --- a/lib/libifconfig/libifconfig.h +++ b/lib/libifconfig/libifconfig.h @@ -287,6 +287,9 @@ struct ifconfig_carp { uint8_t carpr_key[CARP_KEY_LEN]; struct in_addr carpr_addr; struct in6_addr carpr_addr6; + carp_version_t carpr_version; + uint8_t carpr_vrrp_prio; + uint16_t carpr_vrrp_adv_inter; }; int ifconfig_carp_get_vhid(ifconfig_handle_t *h, const char *name, diff --git a/lib/libifconfig/libifconfig_carp.c b/lib/libifconfig/libifconfig_carp.c index 40556eda813f..59faa8def496 100644 --- a/lib/libifconfig/libifconfig_carp.c +++ b/lib/libifconfig/libifconfig_carp.c @@ -56,6 +56,9 @@ static struct snl_attr_parser ap_carp_get[] = { { .type = CARP_NL_KEY, .off = _OUT(carpr_key), .cb = snl_attr_copy_string, .arg_u32 = CARP_KEY_LEN }, { .type = CARP_NL_ADDR, .off = _OUT(carpr_addr), .cb = snl_attr_get_in_addr }, { .type = CARP_NL_ADDR6, .off = _OUT(carpr_addr6), .cb = snl_attr_get_in6_addr }, + { .type = CARP_NL_VERSION, .off = _OUT(carpr_version), .cb = snl_attr_get_uint8 }, + { .type = CARP_NL_VRRP_PRIORITY, .off = _OUT(carpr_vrrp_prio), .cb = snl_attr_get_uint8 }, + { .type = CARP_NL_VRRP_ADV_INTER, .off = _OUT(carpr_vrrp_adv_inter), .cb = snl_attr_get_uint16 }, }; #undef _OUT @@ -175,6 +178,9 @@ ifconfig_carp_set_info(ifconfig_handle_t *h, const char *name, snl_add_msg_attr(&nw, CARP_NL_ADDR6, sizeof(carpr->carpr_addr6), &carpr->carpr_addr6); snl_add_msg_attr_string(&nw, CARP_NL_KEY, carpr->carpr_key); + snl_add_msg_attr_u8(&nw, CARP_NL_VERSION, carpr->carpr_version); + snl_add_msg_attr_u8(&nw, CARP_NL_VRRP_PRIORITY, carpr->carpr_vrrp_prio); + snl_add_msg_attr_u16(&nw, CARP_NL_VRRP_ADV_INTER, carpr->carpr_vrrp_adv_inter); hdr = snl_finalize_msg(&nw); if (hdr == NULL) { diff --git a/sbin/ifconfig/carp.c b/sbin/ifconfig/carp.c index dd09838b5d8b..36b5d85ab7b8 100644 --- a/sbin/ifconfig/carp.c +++ b/sbin/ifconfig/carp.c @@ -68,6 +68,9 @@ static int carpr_state = -1; static struct in_addr carp_addr; static struct in6_addr carp_addr6; static unsigned char const *carpr_key; +static carp_version_t carpr_version; +static uint8_t carpr_vrrp_prio; +static uint16_t carpr_vrrp_adv_inter; static void carp_status(if_ctx *ctx) @@ -79,19 +82,28 @@ carp_status(if_ctx *ctx) return; for (size_t i = 0; i < carpr[0].carpr_count; i++) { - printf("\tcarp: %s vhid %d advbase %d advskew %d", - carp_states[carpr[i].carpr_state], carpr[i].carpr_vhid, - carpr[i].carpr_advbase, carpr[i].carpr_advskew); - if (ctx->args->printkeys && carpr[i].carpr_key[0] != '\0') - printf(" key \"%s\"\n", carpr[i].carpr_key); - else - printf("\n"); - - inet_ntop(AF_INET6, &carpr[i].carpr_addr6, addr_buf, - sizeof(addr_buf)); - - printf("\t peer %s peer6 %s\n", - inet_ntoa(carpr[i].carpr_addr), addr_buf); + switch (carpr[i].carpr_version) { + case CARP_VERSION_CARP: + printf("\tcarp: %s vhid %d advbase %d advskew %d", + carp_states[carpr[i].carpr_state], carpr[i].carpr_vhid, + carpr[i].carpr_advbase, carpr[i].carpr_advskew); + if (ctx->args->printkeys && carpr[i].carpr_key[0] != '\0') + printf(" key \"%s\"\n", carpr[i].carpr_key); + else + printf("\n"); + + inet_ntop(AF_INET6, &carpr[i].carpr_addr6, addr_buf, + sizeof(addr_buf)); + + printf("\t peer %s peer6 %s\n", + inet_ntoa(carpr[i].carpr_addr), addr_buf); + break; + case CARP_VERSION_VRRPv3: + printf("\tvrrp: %s vrid %d prio %d interval %d\n", + carp_states[carpr[i].carpr_state], carpr[i].carpr_vhid, + carpr[i].carpr_vrrp_prio, carpr[i].carpr_vrrp_adv_inter); + break; + } } } @@ -137,6 +149,12 @@ setcarp_callback(if_ctx *ctx, void *arg __unused) if (! IN6_IS_ADDR_UNSPECIFIED(&carp_addr6)) memcpy(&carpr.carpr_addr6, &carp_addr6, sizeof(carp_addr6)); + if (carpr_version != 0) + carpr.carpr_version = carpr_version; + if (carpr_vrrp_prio != 0) + carpr.carpr_vrrp_prio = carpr_vrrp_prio; + if (carpr_vrrp_adv_inter != 0) + carpr.carpr_vrrp_adv_inter = carpr_vrrp_adv_inter; if (ifconfig_carp_set_info(lifh, ctx->ifname, &carpr)) err(1, "SIOCSVH"); @@ -226,6 +244,31 @@ setcarp_mcast6(if_ctx *ctx __unused, const char *val __unused, int dummy __unuse carp_addr6.s6_addr[15] = 0x12; } +static void +setcarp_version(if_ctx *ctx __unused, const char *val, int dummy __unused) +{ + carpr_version = atoi(val); + + if (carpr_version != CARP_VERSION_CARP && carpr_version != CARP_VERSION_VRRPv3) + errx(1, "version must be %d or %d", CARP_VERSION_CARP, + CARP_VERSION_VRRPv3); +} + +static void +setvrrp_prio(if_ctx *ctx __unused, const char *val, int dummy __unused) +{ + carpr_vrrp_prio = atoi(val); +} + +static void +setvrrp_interval(if_ctx *ctx __unused, const char *val, int dummy __unused) +{ + carpr_vrrp_adv_inter = atoi(val); + + if (carpr_vrrp_adv_inter == 0 || carpr_vrrp_adv_inter > VRRP_MAX_INTERVAL) + errx(1, "vrrpinterval must be greater than 0 and less than %d", VRRP_MAX_INTERVAL); +} + static struct cmd carp_cmds[] = { DEF_CMD_ARG("advbase", setcarp_advbase), DEF_CMD_ARG("advskew", setcarp_advskew), @@ -236,6 +279,9 @@ static struct cmd carp_cmds[] = { DEF_CMD("mcast", 0, setcarp_mcast), DEF_CMD_ARG("peer6", setcarp_peer6), DEF_CMD("mcast6", 0, setcarp_mcast6), + DEF_CMD_ARG("carpver", setcarp_version), + DEF_CMD_ARG("vrrpprio", setvrrp_prio), + DEF_CMD_ARG("vrrpinterval", setvrrp_interval), }; static struct afswtch af_carp = { .af_name = "af_carp", diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index ddbc13e7c878..cf7c8d03ca73 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -37,6 +37,7 @@ #include #include #include +#include #include #include #include @@ -95,6 +96,7 @@ static MALLOC_DEFINE(M_CARP, "CARP", "CARP addresses"); struct carp_softc { struct ifnet *sc_carpdev; /* Pointer to parent ifnet. */ struct ifaddr **sc_ifas; /* Our ifaddrs. */ + carp_version_t sc_version; /* carp or VRRPv3 */ struct sockaddr_dl sc_addr; /* Our link level address. */ struct callout sc_ad_tmo; /* Advertising timeout. */ #ifdef INET @@ -106,10 +108,17 @@ struct carp_softc { struct mtx sc_mtx; int sc_vhid; - int sc_advskew; - int sc_advbase; - struct in_addr sc_carpaddr; - struct in6_addr sc_carpaddr6; + struct { /* CARP specific context */ + int sc_advskew; + int sc_advbase; + struct in_addr sc_carpaddr; + struct in6_addr sc_carpaddr6; + }; + struct { /* VRRPv3 specific context */ + uint8_t sc_vrrp_prio; + uint16_t sc_vrrp_adv_inter; + uint16_t sc_vrrp_master_inter; + }; int sc_naddrs; int sc_naddrs6; @@ -166,6 +175,9 @@ struct carpkreq { /* Everything above this is identical to carpreq */ struct in_addr carpr_addr; struct in6_addr carpr_addr6; + carp_version_t carpr_version; + uint8_t carpr_vrrp_priority; + uint16_t carpr_vrrp_adv_inter; }; /* @@ -325,6 +337,7 @@ SYSCTL_VNET_PCPUSTAT(_net_inet_carp, OID_AUTO, stats, struct carpstats, 0 : ((sc)->sc_advskew + V_carp_demotion))) static void carp_input_c(struct mbuf *, struct carp_header *, sa_family_t, int); +static void vrrp_input_c(struct mbuf *, int, sa_family_t, int, int, uint16_t); static struct carp_softc *carp_alloc(struct ifnet *); static void carp_destroy(struct carp_softc *); @@ -339,6 +352,7 @@ static void carp_master_down_locked(struct carp_softc *, const char* reason); static void carp_send_ad(void *); static void carp_send_ad_locked(struct carp_softc *); +static void vrrp_send_ad_locked(struct carp_softc *); static void carp_addroute(struct carp_softc *); static void carp_ifa_addroute(struct ifaddr *); static void carp_delroute(struct carp_softc *); @@ -373,7 +387,7 @@ carp_is_supported_if(if_t ifp) static void carp_hmac_prepare(struct carp_softc *sc) { - uint8_t version = CARP_VERSION, type = CARP_ADVERTISEMENT; + uint8_t version = CARP_VERSION_CARP, type = CARP_ADVERTISEMENT; uint8_t vhid = sc->sc_vhid & 0xff; struct ifaddr *ifa; int i, found; @@ -478,6 +492,22 @@ carp_hmac_verify(struct carp_softc *sc, uint32_t counter[2], return (bcmp(md, md2, sizeof(md2))); } +static int +vrrp_checksum_verify(struct mbuf *m, int off, int len, uint16_t phdrcksum) +{ + uint16_t cksum; + + /* + * Note that VRRPv3 checksums are different from CARP checksums. + * Carp just calculates the checksum over the packet. + * VRRPv3 includes the pseudo-header checksum as well. + */ + cksum = in_cksum_skip(m, off + len, off); + cksum -= phdrcksum; + + return (cksum); +} + /* * process input packet. * we have rearranged checks order compared to the rfc, @@ -489,8 +519,11 @@ carp_input(struct mbuf **mp, int *offp, int proto) { struct mbuf *m = *mp; struct ip *ip = mtod(m, struct ip *); - struct carp_header *ch; - int iplen, len; + struct vrrpv3_header *vh; + int iplen; + int minlen; + int totlen; + uint16_t phdrcksum = 0; iplen = *offp; *mp = NULL; @@ -503,59 +536,93 @@ carp_input(struct mbuf **mp, int *offp, int proto) } iplen = ip->ip_hl << 2; + totlen = ntohs(ip->ip_len); - if (m->m_pkthdr.len < iplen + sizeof(*ch)) { + /* Ensure we have enough header to figure out the version. */ + if (m->m_pkthdr.len < iplen + sizeof(*vh)) { CARPSTATS_INC(carps_badlen); - CARP_DEBUG("%s: received len %zd < sizeof(struct carp_header) " + CARP_DEBUG("%s: received len %zd < sizeof(struct vrrpv3_header) " "on %s\n", __func__, m->m_len - sizeof(struct ip), if_name(m->m_pkthdr.rcvif)); m_freem(m); return (IPPROTO_DONE); } - if (iplen + sizeof(*ch) < m->m_len) { - if ((m = m_pullup(m, iplen + sizeof(*ch))) == NULL) { + if (iplen + sizeof(*vh) < m->m_len) { + if ((m = m_pullup(m, iplen + sizeof(*vh))) == NULL) { CARPSTATS_INC(carps_hdrops); - CARP_DEBUG("%s: pullup failed\n", __func__); + CARP_DEBUG("%s():%d: pullup failed\n", __func__, __LINE__); return (IPPROTO_DONE); } ip = mtod(m, struct ip *); } - ch = (struct carp_header *)((char *)ip + iplen); + vh = (struct vrrpv3_header *)((char *)ip + iplen); - /* - * verify that the received packet length is - * equal to the CARP header - */ - len = iplen + sizeof(*ch); - if (len > m->m_pkthdr.len) { + switch (vh->vrrp_version) { + case CARP_VERSION_CARP: + minlen = sizeof(struct carp_header); + break; + case CARP_VERSION_VRRPv3: + minlen = sizeof(struct vrrpv3_header); + break; + default: + CARPSTATS_INC(carps_badver); + CARP_DEBUG("%s: unsupported version %d on %s\n", __func__, + vh->vrrp_version, if_name(m->m_pkthdr.rcvif)); + m_freem(m); + return (IPPROTO_DONE); + } + + /* And now check the length again but with the real minimal length. */ + if (m->m_pkthdr.len < iplen + minlen) { CARPSTATS_INC(carps_badlen); - CARP_DEBUG("%s: packet too short %d on %s\n", __func__, - m->m_pkthdr.len, + CARP_DEBUG("%s: received len %zd < %d " + "on %s\n", __func__, m->m_len - sizeof(struct ip), + iplen + minlen, if_name(m->m_pkthdr.rcvif)); m_freem(m); return (IPPROTO_DONE); } - if ((m = m_pullup(m, len)) == NULL) { - CARPSTATS_INC(carps_hdrops); - return (IPPROTO_DONE); + if (iplen + minlen < m->m_len) { + if ((m = m_pullup(m, iplen + minlen)) == NULL) { + CARPSTATS_INC(carps_hdrops); + CARP_DEBUG("%s():%d: pullup failed\n", __func__, __LINE__); + return (IPPROTO_DONE); + } + ip = mtod(m, struct ip *); + vh = (struct vrrpv3_header *)((char *)ip + iplen); } - ip = mtod(m, struct ip *); - ch = (struct carp_header *)((char *)ip + iplen); - /* verify the CARP checksum */ - m->m_data += iplen; - if (in_cksum(m, len - iplen)) { - CARPSTATS_INC(carps_badsum); - CARP_DEBUG("%s: checksum failed on %s\n", __func__, - if_name(m->m_pkthdr.rcvif)); - m_freem(m); - return (IPPROTO_DONE); + phdrcksum = in_pseudo(ip->ip_src.s_addr, ip->ip_dst.s_addr, + htonl((u_short)(totlen - iplen) + ip->ip_p)); + + if (vh->vrrp_version == CARP_VERSION_CARP) { + /* verify the CARP checksum */ + m->m_data += iplen; + if (in_cksum(m, totlen - iplen)) { + CARPSTATS_INC(carps_badsum); + CARP_DEBUG("%s: checksum failed on %s\n", __func__, + if_name(m->m_pkthdr.rcvif)); + m_freem(m); + return (IPPROTO_DONE); + } + m->m_data -= iplen; + } + + switch (vh->vrrp_version) { + case CARP_VERSION_CARP: { + struct carp_header *ch = (struct carp_header *)((char *)ip + iplen); + carp_input_c(m, ch, AF_INET, ip->ip_ttl); + break; + } + case CARP_VERSION_VRRPv3: + vrrp_input_c(m, iplen, AF_INET, ip->ip_ttl, totlen - iplen, phdrcksum); + break; + default: + KASSERT(false, ("Unsupported version %d", vh->vrrp_version)); } - m->m_data -= iplen; - carp_input_c(m, ch, AF_INET, ip->ip_ttl); return (IPPROTO_DONE); } #endif @@ -566,8 +633,9 @@ carp6_input(struct mbuf **mp, int *offp, int proto) { struct mbuf *m = *mp; struct ip6_hdr *ip6 = mtod(m, struct ip6_hdr *); - struct carp_header *ch; - u_int len; + struct vrrpv3_header *vh; + u_int len, minlen; + uint16_t phdrcksum = 0; CARPSTATS_INC(carps_ipackets6); @@ -585,10 +653,9 @@ carp6_input(struct mbuf **mp, int *offp, int proto) return (IPPROTO_DONE); } - /* verify that we have a complete carp packet */ - if (m->m_len < *offp + sizeof(*ch)) { + if (m->m_len < *offp + sizeof(*vh)) { len = m->m_len; - m = m_pullup(m, *offp + sizeof(*ch)); + m = m_pullup(m, *offp + sizeof(*vh)); if (m == NULL) { CARPSTATS_INC(carps_badlen); CARP_DEBUG("%s: packet size %u too small\n", __func__, len); @@ -596,20 +663,72 @@ carp6_input(struct mbuf **mp, int *offp, int proto) } ip6 = mtod(m, struct ip6_hdr *); } - ch = (struct carp_header *)(mtod(m, char *) + *offp); + vh = (struct vrrpv3_header *)(mtod(m, char *) + *offp); - /* verify the CARP checksum */ - m->m_data += *offp; - if (in_cksum(m, sizeof(*ch))) { - CARPSTATS_INC(carps_badsum); - CARP_DEBUG("%s: checksum failed, on %s\n", __func__, + switch (vh->vrrp_version) { + case CARP_VERSION_CARP: + minlen = sizeof(struct carp_header); + break; + case CARP_VERSION_VRRPv3: + minlen = sizeof(struct vrrpv3_header); + break; + default: + CARPSTATS_INC(carps_badver); + CARP_DEBUG("%s: unsupported version %d on %s\n", __func__, + vh->vrrp_version, if_name(m->m_pkthdr.rcvif)); + m_freem(m); + return (IPPROTO_DONE); + } + + /* And now check the length again but with the real minimal length. */ + if (m->m_pkthdr.len < sizeof(*ip6) + minlen) { + CARPSTATS_INC(carps_badlen); + CARP_DEBUG("%s: received len %zd < %zd " + "on %s\n", __func__, m->m_len - sizeof(struct ip), + sizeof(*ip6) + minlen, if_name(m->m_pkthdr.rcvif)); m_freem(m); return (IPPROTO_DONE); } - m->m_data -= *offp; - carp_input_c(m, ch, AF_INET6, ip6->ip6_hlim); + if (sizeof (*ip6) + minlen < m->m_len) { + if ((m = m_pullup(m, sizeof(*ip6) + minlen)) == NULL) { + CARPSTATS_INC(carps_hdrops); + CARP_DEBUG("%s():%d: pullup failed\n", __func__, __LINE__); + return (IPPROTO_DONE); + } + ip6 = mtod(m, struct ip6_hdr *); + vh = (struct vrrpv3_header *)mtodo(m, sizeof(*ip6)); + } + + phdrcksum = in6_cksum_pseudo(ip6, ntohs(ip6->ip6_plen), ip6->ip6_nxt, 0); + + /* verify the CARP checksum */ + if (vh->vrrp_version == CARP_VERSION_CARP) { + m->m_data += *offp; + if (in_cksum(m, sizeof(struct carp_header))) { + CARPSTATS_INC(carps_badsum); + CARP_DEBUG("%s: checksum failed, on %s\n", __func__, + if_name(m->m_pkthdr.rcvif)); + m_freem(m); + return (IPPROTO_DONE); + } + m->m_data -= *offp; + } + + switch (vh->vrrp_version) { + case CARP_VERSION_CARP: { + struct carp_header *ch = (struct carp_header *)((char *)ip6 + sizeof(*ip6)); + carp_input_c(m, ch, AF_INET6, ip6->ip6_hlim); + break; + } + case CARP_VERSION_VRRPv3: + vrrp_input_c(m, sizeof(*ip6), AF_INET6, ip6->ip6_hlim, ntohs(ip6->ip6_plen), + phdrcksum); + break; + default: + KASSERT(false, ("Unsupported version %d", vh->vrrp_version)); + } return (IPPROTO_DONE); } #endif /* INET6 */ @@ -629,7 +748,7 @@ carp6_input(struct mbuf **mp, int *offp, int proto) * The VHID test is outside this mini-function. */ static int -carp_source_is_self(struct mbuf *m, struct ifaddr *ifa, sa_family_t af) +carp_source_is_self(const struct mbuf *m, struct ifaddr *ifa, sa_family_t af) { #ifdef INET struct ip *ip4; @@ -659,16 +778,12 @@ carp_source_is_self(struct mbuf *m, struct ifaddr *ifa, sa_family_t af) return (0); } -static void -carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) +static struct ifaddr * +carp_find_ifa(const struct mbuf *m, sa_family_t af, uint8_t vhid) { struct ifnet *ifp = m->m_pkthdr.rcvif; struct ifaddr *ifa, *match; - struct carp_softc *sc; - uint64_t tmp_counter; - struct timeval sc_tv, ch_tv; int error; - bool multicast = false; NET_EPOCH_ASSERT(); @@ -688,9 +803,9 @@ carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) IFNET_FOREACH_IFA(ifp, ifa) { if (match == NULL && ifa->ifa_carp != NULL && ifa->ifa_addr->sa_family == af && - ifa->ifa_carp->sc_vhid == ch->carp_vhid) + ifa->ifa_carp->sc_vhid == vhid) match = ifa; - if (ch->carp_vhid == 0 && carp_source_is_self(m, ifa, af)) + if (vhid == 0 && carp_source_is_self(m, ifa, af)) error = ELOOP; } ifa = error ? NULL : match; @@ -705,12 +820,37 @@ carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) } else { CARPSTATS_INC(carps_badvhid); } + } + + return (ifa); +} + +static void +carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) +{ + struct ifnet *ifp = m->m_pkthdr.rcvif; + struct ifaddr *ifa; + struct carp_softc *sc; + uint64_t tmp_counter; + struct timeval sc_tv, ch_tv; + bool multicast = false; + + NET_EPOCH_ASSERT(); + + ifa = carp_find_ifa(m, af, ch->carp_vhid); + if (ifa == NULL) { m_freem(m); return; } + sc = ifa->ifa_carp; + CARP_LOCK(sc); + /* verify the CARP version. */ - if (ch->carp_version != CARP_VERSION) { + if (ch->carp_version != CARP_VERSION_CARP || + sc->sc_version != CARP_VERSION_CARP) { + CARP_UNLOCK(sc); + CARPSTATS_INC(carps_badver); CARP_DEBUG("%s: invalid version %d\n", if_name(ifp), ch->carp_version); @@ -719,8 +859,6 @@ carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) return; } - sc = ifa->ifa_carp; - CARP_LOCK(sc); if (ifa->ifa_addr->sa_family == AF_INET) { multicast = IN_MULTICAST(sc->sc_carpaddr.s_addr); } else { @@ -809,11 +947,130 @@ out: m_freem(m); } +static void +vrrp_input_c(struct mbuf *m, int off, sa_family_t af, int ttl, + int len, uint16_t phdrcksum) +{ + struct vrrpv3_header *vh = mtodo(m, off); + struct ifnet *ifp = m->m_pkthdr.rcvif; + struct ifaddr *ifa; + struct carp_softc *sc; + + NET_EPOCH_ASSERT(); + + ifa = carp_find_ifa(m, af, vh->vrrp_vrtid); + if (ifa == NULL) { + m_freem(m); + return; + } + + sc = ifa->ifa_carp; + CARP_LOCK(sc); + + ifa_free(ifa); + + /* verify the CARP version. */ + if (vh->vrrp_version != CARP_VERSION_VRRPv3 || sc->sc_version != CARP_VERSION_VRRPv3) { + CARP_UNLOCK(sc); + + CARPSTATS_INC(carps_badver); + CARP_DEBUG("%s: invalid version %d\n", if_name(ifp), + vh->vrrp_version); + m_freem(m); + return; + } + + /* verify that the IP TTL is 255. */ + if (ttl != CARP_DFLTTL) { + CARPSTATS_INC(carps_badttl); + CARP_DEBUG("%s: received ttl %d != 255 on %s\n", __func__, + ttl, if_name(m->m_pkthdr.rcvif)); + goto out; + } + + if (vrrp_checksum_verify(m, off, len, phdrcksum)) { + CARPSTATS_INC(carps_badsum); + CARP_DEBUG("%s: incorrect checksum for VRID %u@%s\n", __func__, + sc->sc_vhid, if_name(ifp)); + goto out; + } + + /* RFC9568, 7.1 Receiving VRRP packets. */ + if (sc->sc_vrrp_prio == 255) { + CARP_DEBUG("%s: our priority is 255. Ignore peer announcement.\n", + __func__); + goto out; + } + + /* XXX TODO Check IP address payload. */ + + sc->sc_vrrp_master_inter = ntohs(vh->vrrp_max_adver_int); + + switch (sc->sc_state) { + case INIT: + break; + case MASTER: + /* + * If we receive an advertisement from a master who's going to + * be more frequent than us, go into BACKUP state. + * Same if the peer has a higher priority than us. + */ + if (ntohs(vh->vrrp_max_adver_int) < sc->sc_vrrp_adv_inter || + vh->vrrp_priority > sc->sc_vrrp_prio) { + callout_stop(&sc->sc_ad_tmo); + carp_set_state(sc, BACKUP, + "more frequent advertisement received"); + carp_setrun(sc, 0); + carp_delroute(sc); + } + break; + case BACKUP: + /* + * If we're pre-empting masters who advertise slower than us, + * and this one claims to be slower, treat him as down. + */ + if (V_carp_preempt && (ntohs(vh->vrrp_max_adver_int) > sc->sc_vrrp_adv_inter + || vh->vrrp_priority < sc->sc_vrrp_prio)) { + carp_master_down_locked(sc, + "preempting a slower master"); + break; + } + + /* + * Otherwise, we reset the counter and wait for the next + * advertisement. + */ + carp_setrun(sc, af); + break; + } + +out: + CARP_UNLOCK(sc); + m_freem(m); +} + static int -carp_prepare_ad(struct mbuf *m, struct carp_softc *sc, struct carp_header *ch) +carp_tag(struct carp_softc *sc, struct mbuf *m) { struct m_tag *mtag; + /* Tag packet for carp_output */ + if ((mtag = m_tag_get(PACKET_TAG_CARP, sizeof(struct carp_softc *), + M_NOWAIT)) == NULL) { + m_freem(m); + CARPSTATS_INC(carps_onomem); + return (ENOMEM); + } + bcopy(&sc, mtag + 1, sizeof(sc)); + m_tag_prepend(m, mtag); + + return (0); +} + +static int +carp_prepare_ad(struct mbuf *m, struct carp_softc *sc, struct carp_header *ch) +{ + if (sc->sc_init_counter) { /* this could also be seconds since unix epoch */ sc->sc_counter = arc4random(); @@ -827,17 +1084,7 @@ carp_prepare_ad(struct mbuf *m, struct carp_softc *sc, struct carp_header *ch) carp_hmac_generate(sc, ch->carp_counter, ch->carp_md); - /* Tag packet for carp_output */ - if ((mtag = m_tag_get(PACKET_TAG_CARP, sizeof(struct carp_softc *), - M_NOWAIT)) == NULL) { - m_freem(m); - CARPSTATS_INC(carps_onomem); - return (ENOMEM); - } - bcopy(&sc, mtag + 1, sizeof(sc)); - m_tag_prepend(m, mtag); - - return (0); + return (carp_tag(sc, m)); } /* @@ -959,11 +1206,16 @@ carp_send_ad_locked(struct carp_softc *sc) NET_EPOCH_ASSERT(); CARP_LOCK_ASSERT(sc); + if (sc->sc_version == CARP_VERSION_VRRPv3) { + vrrp_send_ad_locked(sc); + return; + } + advskew = DEMOTE_ADVSKEW(sc); tv.tv_sec = sc->sc_advbase; tv.tv_usec = advskew * 1000000 / 256; - ch.carp_version = CARP_VERSION; + ch.carp_version = CARP_VERSION_CARP; ch.carp_type = CARP_ADVERTISEMENT; ch.carp_vhid = sc->sc_vhid; ch.carp_advbase = sc->sc_advbase; @@ -1090,6 +1342,187 @@ resched: callout_reset(&sc->sc_ad_tmo, tvtohz(&tv), carp_send_ad, sc); } +static void +vrrp_send_ad_locked(struct carp_softc *sc) +{ + struct vrrpv3_header *vh_ptr; + struct ifaddr *ifa; + struct mbuf *m; + int len; + struct vrrpv3_header vh = { + .vrrp_version = CARP_VERSION_VRRPv3, + .vrrp_type = VRRP_TYPE_ADVERTISEMENT, + .vrrp_vrtid = sc->sc_vhid, + .vrrp_priority = sc->sc_vrrp_prio, + .vrrp_count_addr = 0, + .vrrp_max_adver_int = htons(sc->sc_vrrp_adv_inter), + .vrrp_checksum = 0, + }; + + NET_EPOCH_ASSERT(); + CARP_LOCK_ASSERT(sc); + MPASS(sc->sc_version == CARP_VERSION_VRRPv3); + +#ifdef INET + if (sc->sc_naddrs) { + struct ip *ip; + + m = m_gethdr(M_NOWAIT, MT_DATA); + if (m == NULL) { + CARPSTATS_INC(carps_onomem); + goto resched; + } + len = sizeof(*ip) + sizeof(vh); + m->m_pkthdr.len = len; + m->m_pkthdr.rcvif = NULL; + m->m_len = len; + M_ALIGN(m, m->m_len); + m->m_flags |= M_MCAST; + ip = mtod(m, struct ip *); + ip->ip_v = IPVERSION; + ip->ip_hl = sizeof(*ip) >> 2; + ip->ip_tos = V_carp_dscp << IPTOS_DSCP_OFFSET; + ip->ip_off = htons(IP_DF); + ip->ip_ttl = CARP_DFLTTL; + ip->ip_p = IPPROTO_CARP; + ip->ip_sum = 0; + ip_fillid(ip); + + ifa = carp_best_ifa(AF_INET, sc->sc_carpdev); + if (ifa != NULL) { + ip->ip_src.s_addr = + ifatoia(ifa)->ia_addr.sin_addr.s_addr; + ifa_free(ifa); + } else + ip->ip_src.s_addr = 0; + ip->ip_dst.s_addr = htonl(INADDR_CARP_GROUP); + + /* Include the IP addresses in the announcement. */ + for (int i = 0; i < (sc->sc_naddrs + sc->sc_naddrs6); i++) { + struct sockaddr_in *in; + + MPASS(sc->sc_ifas[i] != NULL); + if (sc->sc_ifas[i]->ifa_addr->sa_family != AF_INET) + continue; + + in = (struct sockaddr_in *)sc->sc_ifas[i]->ifa_addr; + + if (m_append(m, sizeof(in->sin_addr), + (caddr_t)&in->sin_addr) != 1) { + m_freem(m); + goto resched; + } + + vh.vrrp_count_addr++; + len += sizeof(in->sin_addr); + } + ip->ip_len = htons(len); + + vh_ptr = (struct vrrpv3_header *)mtodo(m, sizeof(*ip)); + bcopy(&vh, vh_ptr, sizeof(vh)); + + vh_ptr->vrrp_checksum = in_pseudo(ip->ip_src.s_addr, + ip->ip_dst.s_addr, + htonl((uint16_t)(len - sizeof(*ip)) + ip->ip_p)); + vh_ptr->vrrp_checksum = in_cksum_skip(m, len, sizeof(*ip)); + + if (carp_tag(sc, m)) + goto resched; + + CARPSTATS_INC(carps_opackets); + + carp_send_ad_error(sc, ip_output(m, NULL, NULL, IP_RAWOUTPUT, + &sc->sc_carpdev->if_carp->cif_imo, NULL)); + } +#endif +#ifdef INET6 + if (sc->sc_naddrs6) { + struct ip6_hdr *ip6; + + m = m_gethdr(M_NOWAIT, MT_DATA); + if (m == NULL) { + CARPSTATS_INC(carps_onomem); + goto resched; + } + len = sizeof(*ip6) + sizeof(vh); + m->m_pkthdr.len = len; + m->m_pkthdr.rcvif = NULL; + m->m_len = len; + M_ALIGN(m, m->m_len); + m->m_flags |= M_MCAST; + ip6 = mtod(m, struct ip6_hdr *); + bzero(ip6, sizeof(*ip6)); + ip6->ip6_vfc |= IPV6_VERSION; + /* Traffic class isn't defined in ip6 struct instead + * it gets offset into flowid field */ + ip6->ip6_flow |= htonl(V_carp_dscp << (IPV6_FLOWLABEL_LEN + + IPTOS_DSCP_OFFSET)); + ip6->ip6_hlim = CARP_DFLTTL; + ip6->ip6_nxt = IPPROTO_CARP; + + /* set the source address */ + ifa = carp_best_ifa(AF_INET6, sc->sc_carpdev); + if (ifa != NULL) { + bcopy(IFA_IN6(ifa), &ip6->ip6_src, + sizeof(struct in6_addr)); + ifa_free(ifa); + } else + /* This should never happen with IPv6. */ + bzero(&ip6->ip6_src, sizeof(struct in6_addr)); + + /* Set the multicast destination. */ + bzero(&ip6->ip6_dst, sizeof(ip6->ip6_dst)); + ip6->ip6_dst.s6_addr16[0] = IPV6_ADDR_INT16_MLL; + ip6->ip6_dst.s6_addr8[15] = 0x12; + + /* Include the IP addresses in the announcement. */ + len = sizeof(vh); + for (int i = 0; i < (sc->sc_naddrs + sc->sc_naddrs6); i++) { + struct sockaddr_in6 *in6; + + MPASS(sc->sc_ifas[i] != NULL); + if (sc->sc_ifas[i]->ifa_addr->sa_family != AF_INET6) + continue; + + in6 = (struct sockaddr_in6 *)sc->sc_ifas[i]->ifa_addr; + + if (m_append(m, sizeof(in6->sin6_addr), + (char *)&in6->sin6_addr) != 1) { + m_freem(m); + goto resched; + } + + vh.vrrp_count_addr++; + len += sizeof(in6->sin6_addr); + } + ip6->ip6_plen = htonl(len); + + vh_ptr = (struct vrrpv3_header *)mtodo(m, sizeof(*ip6)); + bcopy(&vh, vh_ptr, sizeof(vh)); + + vh_ptr->vrrp_checksum = in6_cksum_pseudo(ip6, len, ip6->ip6_nxt, 0); + vh_ptr->vrrp_checksum = in_cksum_skip(m, len + sizeof(*ip6), sizeof(*ip6)); + + if (in6_setscope(&ip6->ip6_dst, sc->sc_carpdev, NULL) != 0) { + m_freem(m); + CARP_DEBUG("%s: in6_setscope failed\n", __func__); + goto resched; + } + + if (carp_tag(sc, m)) + goto resched; + CARPSTATS_INC(carps_opackets6); + + carp_send_ad_error(sc, ip6_output(m, NULL, NULL, 0, + &sc->sc_carpdev->if_carp->cif_im6o, NULL, NULL)); + } +#endif + +resched: + callout_reset(&sc->sc_ad_tmo, sc->sc_vrrp_adv_inter * hz / 100, + carp_send_ad, sc); +} + static void carp_addroute(struct carp_softc *sc) { @@ -1357,6 +1790,7 @@ static void carp_setrun(struct carp_softc *sc, sa_family_t af) { struct timeval tv; + int timeout; CARP_LOCK_ASSERT(sc); @@ -1373,40 +1807,57 @@ carp_setrun(struct carp_softc *sc, sa_family_t af) break; case BACKUP: callout_stop(&sc->sc_ad_tmo); - tv.tv_sec = 3 * sc->sc_advbase; - tv.tv_usec = sc->sc_advskew * 1000000 / 256; + + if (sc->sc_version == CARP_VERSION_CARP) { + tv.tv_sec = 3 * sc->sc_advbase; + tv.tv_usec = sc->sc_advskew * 1000000 / 256; + timeout = tvtohz(&tv); + } else { + /* skew time */ + timeout = (256 - sc->sc_vrrp_prio) * sc->sc_vrrp_master_inter / 256; *** 265 LINES SKIPPED *** From nobody Wed May 8 11:19:55 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNW6D0Lz5Kt50; Wed, 08 May 2024 11:19:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VZCNW3Kddz49Kx; Wed, 8 May 2024 11:19:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167195; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v8cr11eYikXzFY63sz+4A/bgpQ+e4NCAOVcc9h9j5ac=; b=VCnGy8lK2iGs3yVV4fltWbKPuCRlhJyGiI1jwzcwwDZuiV11vpT3wbAiIiAvzKr5g+AyIA 0wWLOfY7JmGZMofFBmdvAztgIWg4ENrMDvL89PreAEEh87xFpFRQs/nnDAM5C32HUBsvzu u2rl17e7TA84V3V/UrliB0eV5xyODMKMld/eh3Op5QR3hGYcm6Q0+J6DmkE9cgLZkgqtzY A+aYhXlBVTZ38W1bZCBj9aF4AGthl83S0+V9W/YMXutIKeJoFB0vqNTkQ3z6WVHenNQssB 6WWMiNqJ1xkNdCgpJSL3wULCnJG+F1B01cdNpdzP+gK5qrvw27mQXtDQEPFC2A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167195; a=rsa-sha256; cv=none; b=eZZv3Za7El1+qOcEIX+Z2zGx7DpN/Tk8ElsAunektQl+dDKshWMWoO1yybeLPRHpFKYgWG FwbrDAG1aGYeMDl8JFqtIoXI7SGe2QvEC0DM71FNePqofS5SB70MKdFAXm/LQyOcAI/dIH poofSJMVzl1vOITSyr7gBB0Wdf/tl08fa7oC7kvWAfvy7kEOcJOHW8EKBKzvkxMU0jX7LW GksPkgNizttTpWkgURFcwz2k0GtKinAkQgA3tynC2G7lmCI2iab4gCzf8h0H0WzlcHqLmH Xa6hBQ3byxiRKKY+X0NANnHIs3Cv069V54QliBPJIoCux+JIpdQF6tSVJn3SzQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167195; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v8cr11eYikXzFY63sz+4A/bgpQ+e4NCAOVcc9h9j5ac=; b=vCdti3MA7Dkax/C53RoNcVJzczznEuoRjZkNwWC+aOFkwglPAEHC4djyeYzLcQI7rPAjQo sCYMhvowrMuGpHmUtJNRqKVdAdh+RT/qQNuQfSuD/EDuE8VONJt+ERkLqL4wMhNgKVQsMV JCajk/FdSI910Wf1+ahtRwdy8e0j7pMpPukkwhbrZgfqbDpCb9dl/i9QtI5U5ADOMXLtsZ G/qS21wfmc0Cj30NZW5HCVYEH7n0XxaWBnVWMTo5ZqToKDl+v08NWPg5UMlGnEoSDNxovd YitkDg+MJJLVF5YvlLtuCcjoF9aw6jXA41ghGuHWI8wNTr8qYazl9AX2mvWL4g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNW2ww0zMYJ; Wed, 8 May 2024 11:19:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 448BJtYv094551; Wed, 8 May 2024 11:19:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448BJtiZ094548; Wed, 8 May 2024 11:19:55 GMT (envelope-from git) Date: Wed, 8 May 2024 11:19:55 GMT Message-Id: <202405081119.448BJtiZ094548@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 5ee92cbd82d0 - main - carp: don't chain call vrrp_send_ad via carp_send_ad List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5ee92cbd82d0afb65bc5feabf29d8417307d38ad Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=5ee92cbd82d0afb65bc5feabf29d8417307d38ad commit 5ee92cbd82d0afb65bc5feabf29d8417307d38ad Author: Gleb Smirnoff AuthorDate: 2024-04-29 22:33:51 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:04 +0000 carp: don't chain call vrrp_send_ad via carp_send_ad Provide inline send_ad_locked() that switches between protocol specific sending function. Rename carp_send_ad() to carp_callout() to avoid getting lost in all these multiple foo_send_ad. No functional change intended. Reviewed by: kp Differential Revision: https://reviews.freebsd.org/D45036 --- sys/netinet/ip_carp.c | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index cf7c8d03ca73..332e76b492fa 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -350,7 +350,6 @@ static void carp_setrun(struct carp_softc *, sa_family_t); static void carp_master_down(void *); static void carp_master_down_locked(struct carp_softc *, const char* reason); -static void carp_send_ad(void *); static void carp_send_ad_locked(struct carp_softc *); static void vrrp_send_ad_locked(struct carp_softc *); static void carp_addroute(struct carp_softc *); @@ -1087,6 +1086,19 @@ carp_prepare_ad(struct mbuf *m, struct carp_softc *sc, struct carp_header *ch) return (carp_tag(sc, m)); } +static inline void +send_ad_locked(struct carp_softc *sc) +{ + switch (sc->sc_version) { + case CARP_VERSION_CARP: + carp_send_ad_locked(sc); + break; + case CARP_VERSION_VRRPv3: + vrrp_send_ad_locked(sc); + break; + } +} + /* * To avoid LORs and possible recursions this function shouldn't * be called directly, but scheduled via taskqueue. @@ -1103,7 +1115,7 @@ carp_send_ad_all(void *ctx __unused, int pending __unused) if (sc->sc_state == MASTER) { CARP_LOCK(sc); CURVNET_SET(sc->sc_carpdev->if_vnet); - carp_send_ad_locked(sc); + send_ad_locked(sc); CURVNET_RESTORE(); CARP_UNLOCK(sc); } @@ -1113,7 +1125,7 @@ carp_send_ad_all(void *ctx __unused, int pending __unused) /* Send a periodic advertisement, executed in callout context. */ static void -carp_send_ad(void *v) +carp_callout(void *v) { struct carp_softc *sc = v; struct epoch_tracker et; @@ -1121,7 +1133,7 @@ carp_send_ad(void *v) NET_EPOCH_ENTER(et); CARP_LOCK_ASSERT(sc); CURVNET_SET(sc->sc_carpdev->if_vnet); - carp_send_ad_locked(sc); + send_ad_locked(sc); CURVNET_RESTORE(); CARP_UNLOCK(sc); NET_EPOCH_EXIT(et); @@ -1205,11 +1217,7 @@ carp_send_ad_locked(struct carp_softc *sc) NET_EPOCH_ASSERT(); CARP_LOCK_ASSERT(sc); - - if (sc->sc_version == CARP_VERSION_VRRPv3) { - vrrp_send_ad_locked(sc); - return; - } + MPASS(sc->sc_version == CARP_VERSION_CARP); advskew = DEMOTE_ADVSKEW(sc); tv.tv_sec = sc->sc_advbase; @@ -1339,7 +1347,7 @@ carp_send_ad_locked(struct carp_softc *sc) #endif /* INET6 */ resched: - callout_reset(&sc->sc_ad_tmo, tvtohz(&tv), carp_send_ad, sc); + callout_reset(&sc->sc_ad_tmo, tvtohz(&tv), carp_callout, sc); } static void @@ -1520,7 +1528,7 @@ vrrp_send_ad_locked(struct carp_softc *sc) resched: callout_reset(&sc->sc_ad_tmo, sc->sc_vrrp_adv_inter * hz / 100, - carp_send_ad, sc); + carp_callout, sc); } static void @@ -1760,7 +1768,7 @@ carp_master_down_locked(struct carp_softc *sc, const char *reason) switch (sc->sc_state) { case BACKUP: carp_set_state(sc, MASTER, reason); - carp_send_ad_locked(sc); + send_ad_locked(sc); #ifdef INET carp_send_arp(sc); #endif @@ -1852,11 +1860,11 @@ carp_setrun(struct carp_softc *sc, sa_family_t af) tv.tv_sec = sc->sc_advbase; tv.tv_usec = sc->sc_advskew * 1000000 / 256; callout_reset(&sc->sc_ad_tmo, tvtohz(&tv), - carp_send_ad, sc); + carp_callout, sc); } else { callout_reset(&sc->sc_ad_tmo, sc->sc_vrrp_adv_inter * hz / 100, - carp_send_ad, sc); + carp_callout, sc); } break; } From nobody Wed May 8 11:19:56 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNY1VnNz5KsvC; Wed, 08 May 2024 11: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 4VZCNX4ckWz49Z9; Wed, 8 May 2024 11:19:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PLaPY+QeyfiWzjKHbAhJ47wSsbt1xryHBllCuRHfHgM=; b=mVdUv8OSKmZXJLH9aGWx8Z3EFTd9FlIx4CG6gh4/r1odp4PxYYjIJa4M3o4Bfk6n7M1QWu irP1Ok44HKdPqYudM4tulQAHb+ySjfgFt5/fmBUxshkF2ecYwVQrHw2KX3OMhOnM0tJiAI gB1hE1zZXbr1s0R9unVdVNztMxhLk4Qc5VAklVGqFz8ehMQwJykDbVDK0eefLYbc5IJjKt IV7kgHGbjrTy+1B5eqIM1xk5q13MBVAeMeDUiN6mVzTGRk1RomPIY7fpKzhfrK9rxJSlP5 fuGCJf3VnxIs4cYrizPHrPT2c+Uvzhrs78HQt1OGLvEGN7lMnr3QFI5cAS/vRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167196; a=rsa-sha256; cv=none; b=WJufMoQYvf88fvg8XT0bwc3Yyb8eNOGDGPt80O95KLdReZ+9vlOUkxs36n0Zj7fgskfAZK i2VY14POjP7SPKs0gwZRND2h6deYpVf1Orm59YvwPfFqi45zG9N2gF4t7NT02AsJgJ76nh 6Uq0klQ4nj77Om60QwNneq3RkrszQWH8YV9972DCQMVDOsqrjgboETFH8dzYSlYSUh18b9 65yCXm8xpsZZFBkyupNTb8B++idHNJk5ngqn11RXTWUng5rF0Tx3C4dkbhP5KPuzdjrl4j Bm6AlkyVOeI8CzNZgSbAzHtYoIte9Wy87JpIAp0Cr8azWVfRS2uwyJ+z4u1tFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PLaPY+QeyfiWzjKHbAhJ47wSsbt1xryHBllCuRHfHgM=; b=issHK+KVsSqXjff2/Luc3DSLSmjelDEBJiT/KnFqx1LVcN4JvtyxouILDslr4G/RP0PN83 GI3UrQPi738EuOaYxie1vE2u0E6rpaOl0XcuntdQGTIaRMjUdj9jKIiOl4VXisnJi4PDrc pZBn22nVGoWlj63eLw+upb2imyi6w4pV9+8uhRENqSwZtHC6V4yB8HRgBJ+kQeRkPTOeD5 sjG/dkQc94F62xIJ7wrmjS6NHTUjZRU/jLOWEWBK6I3n+nHWWNXgAwSWGWDdOVgsDFRSRW 7Orb3jf38jxVrgzMc3CjlCtinnaOXTNZNmpS9vT4+ngcbaVyKmf/P5xNgeH5WA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNX424QzN38; Wed, 8 May 2024 11:19:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 448BJuZq094613; Wed, 8 May 2024 11:19:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448BJuTB094610; Wed, 8 May 2024 11:19:56 GMT (envelope-from git) Date: Wed, 8 May 2024 11:19:56 GMT Message-Id: <202405081119.448BJuTB094610@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: cda57d955b25 - main - carp: assert that we are calling correct input function. We are. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cda57d955b250b538233117aad6443a907d6c109 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=cda57d955b250b538233117aad6443a907d6c109 commit cda57d955b250b538233117aad6443a907d6c109 Author: Gleb Smirnoff AuthorDate: 2024-04-29 22:54:57 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:04 +0000 carp: assert that we are calling correct input function. We are. Reviewed by: kp Differential Revision: https://reviews.freebsd.org/D45037 --- sys/netinet/ip_carp.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index 332e76b492fa..de439df97c59 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -835,6 +835,7 @@ carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) bool multicast = false; NET_EPOCH_ASSERT(); + MPASS(ch->carp_version == CARP_VERSION_CARP); ifa = carp_find_ifa(m, af, ch->carp_vhid); if (ifa == NULL) { @@ -846,8 +847,7 @@ carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) CARP_LOCK(sc); /* verify the CARP version. */ - if (ch->carp_version != CARP_VERSION_CARP || - sc->sc_version != CARP_VERSION_CARP) { + if (sc->sc_version != CARP_VERSION_CARP) { CARP_UNLOCK(sc); CARPSTATS_INC(carps_badver); @@ -956,6 +956,7 @@ vrrp_input_c(struct mbuf *m, int off, sa_family_t af, int ttl, struct carp_softc *sc; NET_EPOCH_ASSERT(); + MPASS(vh->vrrp_version == CARP_VERSION_VRRPv3); ifa = carp_find_ifa(m, af, vh->vrrp_vrtid); if (ifa == NULL) { @@ -969,7 +970,7 @@ vrrp_input_c(struct mbuf *m, int off, sa_family_t af, int ttl, ifa_free(ifa); /* verify the CARP version. */ - if (vh->vrrp_version != CARP_VERSION_VRRPv3 || sc->sc_version != CARP_VERSION_VRRPv3) { + if (sc->sc_version != CARP_VERSION_VRRPv3) { CARP_UNLOCK(sc); CARPSTATS_INC(carps_badver); From nobody Wed May 8 11:19:57 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNZ1L8yz5KsvD; Wed, 08 May 2024 11: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 4VZCNY5sMrz49Lk; Wed, 8 May 2024 11: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=1715167197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oaWDFoI/4u79AwWqfpsX5XYy4hyAIvGjO9XlaggLDsc=; b=tWl39qWCxfp0M7+g700MYWshVDUhKWB5CaA9Aio7//ehVy6sg6At6OzV3/1XDB4T5aEyYF 1kQ5UvoS62WIjKm6tcCA4Rz3gzUHqtY6JDbfc/r5H2hmmzmIOwWQkAadwgsIDfZnlHgI73 P0hP+6CcTLdAMMEKqTfY0ltnKp9qLc3BCphzw0GfBbUBDC93wmwaJFmCASYiVaiMI+THIu L4qYousNrg0uMcF0JT2uivLSHbC4fWsG2Rm+q1d7msb973VW7KQPnyRtis4QjC506ohN8K Cha75J0e0fwA+yDODnjnWtSxGG06EY3uBpBo3QEDUFKpUhdeu7+rGwpF2VL01A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167197; a=rsa-sha256; cv=none; b=AUM2TI9gQKHd+nWDXQWWn/U1V4kIRmIbgQvhRaFcCxP0V8TMbpxJNwP6tZf/kh2yPnezxh J5e2bVjDqtxeaJLYUQ95DMIByy/Q6vlthj8Fn5kjZWo9ItCYLpL4NE60abjNAsMOQ13yLA U6haq3cnzrB8dWt2W5LN/2mnYqv/cWqBZ+Q6xCYQVXHWVXlHjNt8ILxk1/KO1b2+W+4HMo 1CPDuvjPCN10483OVqIqLrrpLTDeq4wPQChCMy8dkDCaC8i4Xs9o/PWCxAudTWihsMEWcj HmnfHHCCD15KrTYUzf70Pr9OTR4Uioc2ZHJNmnDd14yMghp596Jebf1MggxQ9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oaWDFoI/4u79AwWqfpsX5XYy4hyAIvGjO9XlaggLDsc=; b=dNlWMgWCu52Wzcjwpcgq6s3s3E9HKtjHJ7ypy1r+Yt9LFGcmGdFXSt9yjeiJQccbwbQhwW CSr2nd7ryvYy6MpTrIa1TsHkDB1PedP+OmoZBORW6098CqOJ26RbRsaV6IV8fdpyJCp+KV rs/zbi39dlZGjNpPvwLyYrj7G1E38z83atATotAQJ8iJ4LFEHDaFTUeHxts58Vz7lJ6qOE 2GiEsyjHHX8O3bxCOsfvRdcLF8llK7xji+asXnAppF/RdzpsnzRIJDbu0rMOIBtO2DEKqo ae6aVbXW6TTU/aget40/xmXDNKKpRsmOmzG5o/kIZmOFN75GJGVfJGx294NiwQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNY4gZszM6d; Wed, 8 May 2024 11: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 448BJvO4094664; Wed, 8 May 2024 11: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 448BJvWS094661; Wed, 8 May 2024 11:19:57 GMT (envelope-from git) Date: Wed, 8 May 2024 11:19:57 GMT Message-Id: <202405081119.448BJvWS094661@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 601438fbfa8e - main - carp: refactor packet tagging for ether_output() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 601438fbfa8e5aa47b6e3417b253c10cd9b34d1d Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=601438fbfa8e5aa47b6e3417b253c10cd9b34d1d commit 601438fbfa8e5aa47b6e3417b253c10cd9b34d1d Author: Gleb Smirnoff AuthorDate: 2024-04-30 02:36:42 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:04 +0000 carp: refactor packet tagging for ether_output() - Separate HMAC preparation (CARP specific) from tagging. - In unicast mode (CARP specific) don't put tag at all. - Don't put pointer to software context into the tag. Putting just vhid, an integer value, is a safer design. Reviewed by: kp Differential Revision: https://reviews.freebsd.org/D45038 --- sys/netinet/ip_carp.c | 37 ++++++++++++++----------------------- 1 file changed, 14 insertions(+), 23 deletions(-) diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index de439df97c59..d7dd6ced2e44 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -1055,22 +1055,24 @@ carp_tag(struct carp_softc *sc, struct mbuf *m) struct m_tag *mtag; /* Tag packet for carp_output */ - if ((mtag = m_tag_get(PACKET_TAG_CARP, sizeof(struct carp_softc *), + if ((mtag = m_tag_get(PACKET_TAG_CARP, sizeof(sc->sc_vhid), M_NOWAIT)) == NULL) { m_freem(m); CARPSTATS_INC(carps_onomem); return (ENOMEM); } - bcopy(&sc, mtag + 1, sizeof(sc)); + bcopy(&sc->sc_vhid, mtag + 1, sizeof(sc->sc_vhid)); m_tag_prepend(m, mtag); return (0); } -static int +static void carp_prepare_ad(struct mbuf *m, struct carp_softc *sc, struct carp_header *ch) { + MPASS(sc->sc_version == CARP_VERSION_CARP); + if (sc->sc_init_counter) { /* this could also be seconds since unix epoch */ sc->sc_counter = arc4random(); @@ -1083,8 +1085,6 @@ carp_prepare_ad(struct mbuf *m, struct carp_softc *sc, struct carp_header *ch) ch->carp_counter[1] = htonl(sc->sc_counter&0xffffffff); carp_hmac_generate(sc, ch->carp_counter, ch->carp_md); - - return (carp_tag(sc, m)); } static inline void @@ -1273,7 +1273,9 @@ carp_send_ad_locked(struct carp_softc *sc) ch_ptr = (struct carp_header *)(&ip[1]); bcopy(&ch, ch_ptr, sizeof(ch)); - if (carp_prepare_ad(m, sc, ch_ptr)) + carp_prepare_ad(m, sc, ch_ptr); + if (IN_MULTICAST(ntohl(sc->sc_carpaddr.s_addr)) && + carp_tag(sc, m) != 0) goto resched; m->m_data += sizeof(*ip); @@ -1333,7 +1335,9 @@ carp_send_ad_locked(struct carp_softc *sc) ch_ptr = (struct carp_header *)(&ip6[1]); bcopy(&ch, ch_ptr, sizeof(ch)); - if (carp_prepare_ad(m, sc, ch_ptr)) + carp_prepare_ad(m, sc, ch_ptr); + if (IN6_IS_ADDR_MULTICAST(&sc->sc_carpaddr6) && + carp_tag(sc, m) != 0) goto resched; m->m_data += sizeof(*ip6); @@ -2019,7 +2023,7 @@ int carp_output(struct ifnet *ifp, struct mbuf *m, const struct sockaddr *sa) { struct m_tag *mtag; - struct carp_softc *sc; + int vhid; if (!sa) return (0); @@ -2041,20 +2045,7 @@ carp_output(struct ifnet *ifp, struct mbuf *m, const struct sockaddr *sa) if (mtag == NULL) return (0); - bcopy(mtag + 1, &sc, sizeof(sc)); - - switch (sa->sa_family) { - case AF_INET: - if (! IN_MULTICAST(ntohl(sc->sc_carpaddr.s_addr))) - return (0); - break; - case AF_INET6: - if (! IN6_IS_ADDR_MULTICAST(&sc->sc_carpaddr6)) - return (0); - break; - default: - panic("Unknown af"); - } + bcopy(mtag + 1, &vhid, sizeof(vhid)); /* Set the source MAC address to the Virtual Router MAC Address. */ switch (ifp->if_type) { @@ -2069,7 +2060,7 @@ carp_output(struct ifnet *ifp, struct mbuf *m, const struct sockaddr *sa) eh->ether_shost[2] = 0x5e; eh->ether_shost[3] = 0; eh->ether_shost[4] = 1; - eh->ether_shost[5] = sc->sc_vhid; + eh->ether_shost[5] = vhid; } break; default: From nobody Wed May 8 11:19:58 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNb0CfQz5Kt56; Wed, 08 May 2024 11:19: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 4VZCNZ631Fz49XJ; Wed, 8 May 2024 11: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=1715167198; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u3P+hrdm1zIYB5zDpxszVsLWXq/SskAa7bj21WeYTgY=; b=fnfrZVSCTxbdQjA146aMZqNbqLUCpmCtJvnJtqZAHkddwqbtYPOgwrwslUZBm+JpIKrtXP 2dEjRU/L692th7M648cj0YnmE9bhsuBVANrfRGE/f5TuZTVJjKwUPS71DsA+01naHeie01 8u0e8E4GWUHtFItnJBwjefcE7p2ulbURNj+Umd0QNSz/9GsTBH1ZBpAbCGhdArFLHHzoSO c/N9Dugjn//Z7jhYCOC5XhJOpgghlsbjg+KpOSQr2NczpjdilQwM/gO5s/7TuNg2Ux+qct pFeGYkHAF+wFsul4IXVWrwcgoEP7rvQ8SQCMZg6UkqacdxPIVLl7KtKvKWb3Gg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167198; a=rsa-sha256; cv=none; b=Wm1qwmzqSMOswwfkEJUa9A2YD7Ac0f5IB1xbP3pozQes8vq1phQqCfOXNBuzD6hR9sL1sU JZEWBp/wtQj7v8y/jg130Pdmhs4GRA5UVTBuBV+3ACbx38R/Vc+cF760LBGsPY/eTLz2/n RiFiVKd1AVteQEy07KWM72I/Pj7lGpQy/fjeP+I74Ls3C1tZXLKpMm92E2+oI9xLwmFYyn kSssSRTLIsfQHwev5mqaOilAobwD/lbZn6fpN5l1KuJ30cd2EOGakhxRQdsWTyOOQuE1YI 0+aZpYhnZCKh2V9CcD+7F41cPBbYAdMvq3O3Mf6P++oH2K09WNdvPX2CRataLA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167198; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u3P+hrdm1zIYB5zDpxszVsLWXq/SskAa7bj21WeYTgY=; b=ycnrih+aJhb466IfbI4tw3+D3ljyGdtil6WYcA4g1GCXCn7Waz9M0WXxAV/01W6+IJl9RJ Qe2XvRIjlIbk+LAAgYUeHzKsV8rvuXaiuCSHHSky0yft19pdKGLJrhT7j4b/Y8iaOe8L3L K2j3aR+4H+63n87v81FYU21j/GgPR1fYtGPldZVDoIfaLYehE1iZ4COeYz2qduWmAYan/8 YpSp6sit9kx7F1mR7rHDn6nUZcQNuTd0XBn9zyJZlQ/lOWpj8kDZYFvFa1IjRhZS1KRfzx NIxHk9gkmXE5b3RdLVwk7NRHmZJcpngb3DKTKyUyL7xZrLbu8HWpjitNX+LmlQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNZ5dyyzN39; Wed, 8 May 2024 11: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 448BJw6B094707; Wed, 8 May 2024 11: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 448BJwFM094704; Wed, 8 May 2024 11:19:58 GMT (envelope-from git) Date: Wed, 8 May 2024 11:19:58 GMT Message-Id: <202405081119.448BJwFM094704@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: a254d6870e88 - main - carp: isolate VRRP from CARP List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a254d6870e88d4194390d822ab6a2dff59a83892 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=a254d6870e88d4194390d822ab6a2dff59a83892 commit a254d6870e88d4194390d822ab6a2dff59a83892 Author: Gleb Smirnoff AuthorDate: 2024-04-30 02:58:25 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:04 +0000 carp: isolate VRRP from CARP There is only one functional change here - we don't allow SIOCSVH (or netlink request) to change sc->sc_version. I'm convinced that allowing such a change doesn't brings any practical value, but creates enless minefields in front of both developers and end users (sysadmins). If you want to switch from VRRP to CARP or vice versa, you'd need to recreate the VHID. Oh, one tiny funtional change: carp_ioctl_set() won't modify any fields if it returns EINVAL. Previously you could provide valid advbase with invalid advskew - that used to modify advbase and return EINVAL. All other changes is a sweep around not ever using CARP fields when we are in VRRP mode and vice versa. Also adding assertions on sc_version where necessary. Do not send VRRP vars in CARP mode via NetLink and vice versa. However in compat ioctl SIOCGVH for VRRP mode the CARP fields would be zeroes. This allows to declare softc as union and thus prevent any future logic deterioration wrt to mixing VRRP and CARP. Reviewed by: kp Differential Revision: https://reviews.freebsd.org/D45039 --- sys/netinet/ip_carp.c | 358 ++++++++++++++++++++++++++++---------------------- 1 file changed, 199 insertions(+), 159 deletions(-) diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index d7dd6ced2e44..9f163c1097ba 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -97,7 +97,7 @@ struct carp_softc { struct ifnet *sc_carpdev; /* Pointer to parent ifnet. */ struct ifaddr **sc_ifas; /* Our ifaddrs. */ carp_version_t sc_version; /* carp or VRRPv3 */ - struct sockaddr_dl sc_addr; /* Our link level address. */ + uint8_t sc_addr[ETHER_ADDR_LEN]; /* Our link level address. */ struct callout sc_ad_tmo; /* Advertising timeout. */ #ifdef INET struct callout sc_md_tmo; /* Master down timeout. */ @@ -108,18 +108,25 @@ struct carp_softc { struct mtx sc_mtx; int sc_vhid; - struct { /* CARP specific context */ - int sc_advskew; - int sc_advbase; - struct in_addr sc_carpaddr; - struct in6_addr sc_carpaddr6; - }; - struct { /* VRRPv3 specific context */ - uint8_t sc_vrrp_prio; - uint16_t sc_vrrp_adv_inter; - uint16_t sc_vrrp_master_inter; + union { + struct { /* sc_version == CARP_VERSION_CARP */ + int sc_advskew; + int sc_advbase; + struct in_addr sc_carpaddr; + struct in6_addr sc_carpaddr6; + uint64_t sc_counter; + bool sc_init_counter; +#define CARP_HMAC_PAD 64 + unsigned char sc_key[CARP_KEY_LEN]; + unsigned char sc_pad[CARP_HMAC_PAD]; + SHA1_CTX sc_sha1; + }; + struct { /* sc_version == CARP_VERSION_VRRPv3 */ + uint8_t sc_vrrp_prio; + uint16_t sc_vrrp_adv_inter; + uint16_t sc_vrrp_master_inter; + }; }; - int sc_naddrs; int sc_naddrs6; int sc_ifasiz; @@ -130,15 +137,6 @@ struct carp_softc { int sc_sendad_success; #define CARP_SENDAD_MIN_SUCCESS 3 - int sc_init_counter; - uint64_t sc_counter; - - /* authentication */ -#define CARP_HMAC_PAD 64 - unsigned char sc_key[CARP_KEY_LEN]; - unsigned char sc_pad[CARP_HMAC_PAD]; - SHA1_CTX sc_sha1; - TAILQ_ENTRY(carp_softc) sc_list; /* On the carp_if list. */ LIST_ENTRY(carp_softc) sc_next; /* On the global list. */ }; @@ -339,7 +337,7 @@ SYSCTL_VNET_PCPUSTAT(_net_inet_carp, OID_AUTO, stats, struct carpstats, static void carp_input_c(struct mbuf *, struct carp_header *, sa_family_t, int); static void vrrp_input_c(struct mbuf *, int, sa_family_t, int, int, uint16_t); static struct carp_softc - *carp_alloc(struct ifnet *); + *carp_alloc(struct ifnet *, carp_version_t, int); static void carp_destroy(struct carp_softc *); static struct carp_if *carp_alloc_if(struct ifnet *); @@ -398,6 +396,7 @@ carp_hmac_prepare(struct carp_softc *sc) #endif CARP_LOCK_ASSERT(sc); + MPASS(sc->sc_version == CARP_VERSION_CARP); /* Compute ipad from key. */ bzero(sc->sc_pad, sizeof(sc->sc_pad)); @@ -522,7 +521,6 @@ carp_input(struct mbuf **mp, int *offp, int proto) int iplen; int minlen; int totlen; - uint16_t phdrcksum = 0; iplen = *offp; *mp = NULL; @@ -593,10 +591,10 @@ carp_input(struct mbuf **mp, int *offp, int proto) vh = (struct vrrpv3_header *)((char *)ip + iplen); } - phdrcksum = in_pseudo(ip->ip_src.s_addr, ip->ip_dst.s_addr, - htonl((u_short)(totlen - iplen) + ip->ip_p)); + switch (vh->vrrp_version) { + case CARP_VERSION_CARP: { + struct carp_header *ch; - if (vh->vrrp_version == CARP_VERSION_CARP) { /* verify the CARP checksum */ m->m_data += iplen; if (in_cksum(m, totlen - iplen)) { @@ -604,20 +602,22 @@ carp_input(struct mbuf **mp, int *offp, int proto) CARP_DEBUG("%s: checksum failed on %s\n", __func__, if_name(m->m_pkthdr.rcvif)); m_freem(m); - return (IPPROTO_DONE); + break; } m->m_data -= iplen; - } - - switch (vh->vrrp_version) { - case CARP_VERSION_CARP: { - struct carp_header *ch = (struct carp_header *)((char *)ip + iplen); + ch = (struct carp_header *)((char *)ip + iplen); carp_input_c(m, ch, AF_INET, ip->ip_ttl); break; } - case CARP_VERSION_VRRPv3: - vrrp_input_c(m, iplen, AF_INET, ip->ip_ttl, totlen - iplen, phdrcksum); + case CARP_VERSION_VRRPv3: { + uint16_t phdrcksum; + + phdrcksum = in_pseudo(ip->ip_src.s_addr, ip->ip_dst.s_addr, + htonl((u_short)(totlen - iplen) + ip->ip_p)); + vrrp_input_c(m, iplen, AF_INET, ip->ip_ttl, totlen - iplen, + phdrcksum); break; + } default: KASSERT(false, ("Unsupported version %d", vh->vrrp_version)); } @@ -634,7 +634,6 @@ carp6_input(struct mbuf **mp, int *offp, int proto) struct ip6_hdr *ip6 = mtod(m, struct ip6_hdr *); struct vrrpv3_header *vh; u_int len, minlen; - uint16_t phdrcksum = 0; CARPSTATS_INC(carps_ipackets6); @@ -700,31 +699,33 @@ carp6_input(struct mbuf **mp, int *offp, int proto) vh = (struct vrrpv3_header *)mtodo(m, sizeof(*ip6)); } - phdrcksum = in6_cksum_pseudo(ip6, ntohs(ip6->ip6_plen), ip6->ip6_nxt, 0); + switch (vh->vrrp_version) { + case CARP_VERSION_CARP: { + struct carp_header *ch; - /* verify the CARP checksum */ - if (vh->vrrp_version == CARP_VERSION_CARP) { + /* verify the CARP checksum */ m->m_data += *offp; if (in_cksum(m, sizeof(struct carp_header))) { CARPSTATS_INC(carps_badsum); CARP_DEBUG("%s: checksum failed, on %s\n", __func__, if_name(m->m_pkthdr.rcvif)); m_freem(m); - return (IPPROTO_DONE); + break; } m->m_data -= *offp; - } - - switch (vh->vrrp_version) { - case CARP_VERSION_CARP: { - struct carp_header *ch = (struct carp_header *)((char *)ip6 + sizeof(*ip6)); + ch = (struct carp_header *)((char *)ip6 + sizeof(*ip6)); carp_input_c(m, ch, AF_INET6, ip6->ip6_hlim); break; } - case CARP_VERSION_VRRPv3: - vrrp_input_c(m, sizeof(*ip6), AF_INET6, ip6->ip6_hlim, ntohs(ip6->ip6_plen), - phdrcksum); + case CARP_VERSION_VRRPv3: { + uint16_t phdrcksum; + + phdrcksum = in6_cksum_pseudo(ip6, ntohs(ip6->ip6_plen), + ip6->ip6_nxt, 0); + vrrp_input_c(m, sizeof(*ip6), AF_INET6, ip6->ip6_hlim, + ntohs(ip6->ip6_plen), phdrcksum); break; + } default: KASSERT(false, ("Unsupported version %d", vh->vrrp_version)); } @@ -886,7 +887,7 @@ carp_input_c(struct mbuf *m, struct carp_header *ch, sa_family_t af, int ttl) /* XXX Replay protection goes here */ - sc->sc_init_counter = 0; + sc->sc_init_counter = false; sc->sc_counter = tmp_counter; sc_tv.tv_sec = sc->sc_advbase; @@ -1624,7 +1625,7 @@ carp_send_arp(struct carp_softc *sc) if (ifa->ifa_addr->sa_family != AF_INET) continue; addr = ((struct sockaddr_in *)ifa->ifa_addr)->sin_addr; - arp_announce_ifaddr(sc->sc_carpdev, addr, LLADDR(&sc->sc_addr)); + arp_announce_ifaddr(sc->sc_carpdev, addr, sc->sc_addr); } } @@ -1634,7 +1635,7 @@ carp_iamatch(struct ifaddr *ifa, uint8_t **enaddr) struct carp_softc *sc = ifa->ifa_carp; if (sc->sc_state == MASTER) { - *enaddr = LLADDR(&sc->sc_addr); + *enaddr = sc->sc_addr; return (1); } @@ -1705,12 +1706,12 @@ carp_macmatch6(struct ifnet *ifp, struct mbuf *m, const struct in6_addr *taddr) sizeof(struct carp_softc *), M_NOWAIT); if (mtag == NULL) /* Better a bit than nothing. */ - return (LLADDR(&sc->sc_addr)); + return (sc->sc_addr); bcopy(&sc, mtag + 1, sizeof(sc)); m_tag_prepend(m, mtag); - return (LLADDR(&sc->sc_addr)); + return (sc->sc_addr); } return (NULL); @@ -1732,7 +1733,7 @@ carp_forus(struct ifnet *ifp, u_char *dhost) * CARP_LOCK() is not here, since would protect nothing, but * cause deadlock with if_bridge, calling this under its lock. */ - if (sc->sc_state == MASTER && !bcmp(dhost, LLADDR(&sc->sc_addr), + if (sc->sc_state == MASTER && !bcmp(dhost, sc->sc_addr, ETHER_ADDR_LEN)) { CIF_UNLOCK(ifp->if_carp); return (1); @@ -1821,18 +1822,21 @@ carp_setrun(struct carp_softc *sc, sa_family_t af) case BACKUP: callout_stop(&sc->sc_ad_tmo); - if (sc->sc_version == CARP_VERSION_CARP) { + switch (sc->sc_version) { + case CARP_VERSION_CARP: tv.tv_sec = 3 * sc->sc_advbase; tv.tv_usec = sc->sc_advskew * 1000000 / 256; timeout = tvtohz(&tv); - } else { + break; + case CARP_VERSION_VRRPv3: /* skew time */ - timeout = (256 - sc->sc_vrrp_prio) * sc->sc_vrrp_master_inter / 256; + timeout = (256 - sc->sc_vrrp_prio) * + sc->sc_vrrp_master_inter / 256; timeout += (3 * sc->sc_vrrp_master_inter); timeout *= hz; - timeout /= 100; /* master interval is in centiseconds. */ + timeout /= 100; /* master interval is in centiseconds */ + break; } - switch (af) { #ifdef INET case AF_INET: @@ -1861,15 +1865,18 @@ carp_setrun(struct carp_softc *sc, sa_family_t af) } break; case MASTER: - if (sc->sc_version == CARP_VERSION_CARP) { + switch (sc->sc_version) { + case CARP_VERSION_CARP: tv.tv_sec = sc->sc_advbase; tv.tv_usec = sc->sc_advskew * 1000000 / 256; callout_reset(&sc->sc_ad_tmo, tvtohz(&tv), carp_callout, sc); - } else { + break; + case CARP_VERSION_VRRPv3: callout_reset(&sc->sc_ad_tmo, sc->sc_vrrp_adv_inter * hz / 100, carp_callout, sc); + break; } break; } @@ -2073,7 +2080,7 @@ carp_output(struct ifnet *ifp, struct mbuf *m, const struct sockaddr *sa) } static struct carp_softc* -carp_alloc(struct ifnet *ifp) +carp_alloc(struct ifnet *ifp, carp_version_t version, int vhid) { struct carp_softc *sc; struct carp_if *cif; @@ -2083,25 +2090,31 @@ carp_alloc(struct ifnet *ifp) if ((cif = ifp->if_carp) == NULL) cif = carp_alloc_if(ifp); - sc = malloc(sizeof(*sc), M_CARP, M_WAITOK|M_ZERO); - - sc->sc_version = CARP_VERSION_CARP; - sc->sc_advbase = CARP_DFLTINTV; - sc->sc_vhid = -1; /* required setting */ - sc->sc_init_counter = 1; - sc->sc_state = INIT; - - sc->sc_ifasiz = sizeof(struct ifaddr *); + sc = malloc(sizeof(*sc), M_CARP, M_WAITOK); + *sc = (struct carp_softc ){ + .sc_vhid = vhid, + .sc_version = version, + .sc_state = INIT, + .sc_carpdev = ifp, + .sc_ifasiz = sizeof(struct ifaddr *), + .sc_addr = { 0, 0, 0x5e, 0, 1, vhid }, + }; sc->sc_ifas = malloc(sc->sc_ifasiz, M_CARP, M_WAITOK|M_ZERO); - sc->sc_carpdev = ifp; - sc->sc_carpaddr.s_addr = htonl(INADDR_CARP_GROUP); - sc->sc_carpaddr6.s6_addr16[0] = IPV6_ADDR_INT16_MLL; - sc->sc_carpaddr6.s6_addr8[15] = 0x12; - - sc->sc_vrrp_adv_inter = 100; - sc->sc_vrrp_master_inter = sc->sc_vrrp_adv_inter; - sc->sc_vrrp_prio = 100; + switch (version) { + case CARP_VERSION_CARP: + sc->sc_advbase = CARP_DFLTINTV; + sc->sc_init_counter = true; + sc->sc_carpaddr.s_addr = htonl(INADDR_CARP_GROUP); + sc->sc_carpaddr6.s6_addr16[0] = IPV6_ADDR_INT16_MLL; + sc->sc_carpaddr6.s6_addr8[15] = 0x12; + break; + case CARP_VERSION_VRRPv3: + sc->sc_vrrp_adv_inter = 100; + sc->sc_vrrp_master_inter = sc->sc_vrrp_adv_inter; + sc->sc_vrrp_prio = 100; + break; + } CARP_LOCK_INIT(sc); #ifdef INET @@ -2226,12 +2239,19 @@ carp_carprcp(void *arg, struct carp_softc *sc, int priv) CARP_LOCK(sc); carpr->carpr_state = sc->sc_state; carpr->carpr_vhid = sc->sc_vhid; - carpr->carpr_advbase = sc->sc_advbase; - carpr->carpr_advskew = sc->sc_advskew; - if (priv) - bcopy(sc->sc_key, carpr->carpr_key, sizeof(carpr->carpr_key)); - else - bzero(carpr->carpr_key, sizeof(carpr->carpr_key)); + switch (sc->sc_version) { + case CARP_VERSION_CARP: + carpr->carpr_advbase = sc->sc_advbase; + carpr->carpr_advskew = sc->sc_advskew; + if (priv) + bcopy(sc->sc_key, carpr->carpr_key, + sizeof(carpr->carpr_key)); + else + bzero(carpr->carpr_key, sizeof(carpr->carpr_key)); + break; + case CARP_VERSION_VRRPv3: + break; + } CARP_UNLOCK(sc); return (true); @@ -2244,10 +2264,21 @@ carp_ioctl_set(if_t ifp, struct carpkreq *carpr) struct carp_softc *sc = NULL; int error = 0; - if (carpr->carpr_vhid <= 0 || carpr->carpr_vhid > CARP_MAXVHID || - carpr->carpr_advbase < 0 || carpr->carpr_advskew < 0 || - (carpr->carpr_version != CARP_VERSION_CARP && - carpr->carpr_version != CARP_VERSION_VRRPv3)) { + if (carpr->carpr_vhid <= 0 || carpr->carpr_vhid > CARP_MAXVHID) + return (EINVAL); + + switch (carpr->carpr_version) { + case CARP_VERSION_CARP: + if (carpr->carpr_advbase != 0 && (carpr->carpr_advbase > 255 || + carpr->carpr_advbase < CARP_DFLTINTV)) + return (EINVAL); + if (carpr->carpr_advskew < 0 || carpr->carpr_advskew >= 255) + return (EINVAL); + break; + case CARP_VERSION_VRRPv3: + /* XXXGL: shouldn't we check anything? */ + break; + default: return (EINVAL); } @@ -2256,46 +2287,36 @@ carp_ioctl_set(if_t ifp, struct carpkreq *carpr) if (sc->sc_vhid == carpr->carpr_vhid) break; } - if (sc == NULL) { - sc = carp_alloc(ifp); - CARP_LOCK(sc); - sc->sc_vhid = carpr->carpr_vhid; - LLADDR(&sc->sc_addr)[0] = 0; - LLADDR(&sc->sc_addr)[1] = 0; - LLADDR(&sc->sc_addr)[2] = 0x5e; - LLADDR(&sc->sc_addr)[3] = 0; - LLADDR(&sc->sc_addr)[4] = 1; - LLADDR(&sc->sc_addr)[5] = sc->sc_vhid; - } else - CARP_LOCK(sc); - sc->sc_version = carpr->carpr_version; - if (carpr->carpr_advbase > 0) { - if (carpr->carpr_advbase > 255 || - carpr->carpr_advbase < CARP_DFLTINTV) { - error = EINVAL; - goto out; + + if (sc == NULL) + sc = carp_alloc(ifp, carpr->carpr_version, carpr->carpr_vhid); + else if (sc->sc_version != carpr->carpr_version) + return (EINVAL); + + CARP_LOCK(sc); + switch (sc->sc_version) { + case CARP_VERSION_CARP: + if (carpr->carpr_advbase != 0) + sc->sc_advbase = carpr->carpr_advbase; + sc->sc_advskew = carpr->carpr_advskew; + if (carpr->carpr_addr.s_addr != INADDR_ANY) + sc->sc_carpaddr = carpr->carpr_addr; + if (!IN6_IS_ADDR_UNSPECIFIED(&carpr->carpr_addr6)) { + memcpy(&sc->sc_carpaddr6, &carpr->carpr_addr6, + sizeof(sc->sc_carpaddr6)); } - sc->sc_advbase = carpr->carpr_advbase; - } - if (carpr->carpr_advskew >= 255) { - error = EINVAL; - goto out; - } - sc->sc_advskew = carpr->carpr_advskew; - if (carpr->carpr_addr.s_addr != INADDR_ANY) - sc->sc_carpaddr = carpr->carpr_addr; - if (! IN6_IS_ADDR_UNSPECIFIED(&carpr->carpr_addr6)) { - memcpy(&sc->sc_carpaddr6, &carpr->carpr_addr6, - sizeof(sc->sc_carpaddr6)); - } - if (carpr->carpr_key[0] != '\0') { - bcopy(carpr->carpr_key, sc->sc_key, sizeof(sc->sc_key)); - carp_hmac_prepare(sc); + if (carpr->carpr_key[0] != '\0') { + bcopy(carpr->carpr_key, sc->sc_key, sizeof(sc->sc_key)); + carp_hmac_prepare(sc); + } + break; + case CARP_VERSION_VRRPv3: + if (carpr->carpr_vrrp_priority != 0) + sc->sc_vrrp_prio = carpr->carpr_vrrp_priority; + if (carpr->carpr_vrrp_adv_inter) + sc->sc_vrrp_adv_inter = carpr->carpr_vrrp_adv_inter; + break; } - if (carpr->carpr_vrrp_priority != 0) - sc->sc_vrrp_prio = carpr->carpr_vrrp_priority; - if (carpr->carpr_vrrp_adv_inter) - sc->sc_vrrp_adv_inter = carpr->carpr_vrrp_adv_inter; if (sc->sc_state != INIT && carpr->carpr_state != sc->sc_state) { @@ -2317,8 +2338,6 @@ carp_ioctl_set(if_t ifp, struct carpkreq *carpr) break; } } - -out: CARP_UNLOCK(sc); return (error); @@ -2373,7 +2392,9 @@ int carp_ioctl(struct ifreq *ifr, u_long cmd, struct thread *td) { struct carpreq carpr; - struct carpkreq carprk = { }; + struct carpkreq carprk = { + .carpr_version = CARP_VERSION_CARP, + }; struct ifnet *ifp; int error = 0; @@ -2497,7 +2518,8 @@ carp_attach(struct ifaddr *ifa, int vhid) CARP_LOCK(sc); sc->sc_ifas[index - 1] = ifa; ifa->ifa_carp = sc; - carp_hmac_prepare(sc); + if (sc->sc_version == CARP_VERSION_CARP) + carp_hmac_prepare(sc); carp_sc_state(sc); CARP_UNLOCK(sc); @@ -2550,7 +2572,8 @@ carp_detach(struct ifaddr *ifa, bool keep_cif) ifa->ifa_carp = NULL; ifa_free(ifa); - carp_hmac_prepare(sc); + if (sc->sc_version == CARP_VERSION_CARP) + carp_hmac_prepare(sc); carp_sc_state(sc); if (!keep_cif && sc->sc_naddrs == 0 && sc->sc_naddrs6 == 0) @@ -2742,16 +2765,23 @@ carp_nl_send(void *arg, struct carp_softc *sc, int priv) nlattr_add_u32(nw, CARP_NL_VHID, sc->sc_vhid); nlattr_add_u32(nw, CARP_NL_STATE, sc->sc_state); - nlattr_add_s32(nw, CARP_NL_ADVBASE, sc->sc_advbase); - nlattr_add_s32(nw, CARP_NL_ADVSKEW, sc->sc_advskew); - nlattr_add_in_addr(nw, CARP_NL_ADDR, &sc->sc_carpaddr); - nlattr_add_in6_addr(nw, CARP_NL_ADDR6, &sc->sc_carpaddr6); nlattr_add_u8(nw, CARP_NL_VERSION, sc->sc_version); - nlattr_add_u8(nw, CARP_NL_VRRP_PRIORITY, sc->sc_vrrp_prio); - nlattr_add_u16(nw, CARP_NL_VRRP_ADV_INTER, sc->sc_vrrp_adv_inter); - - if (priv) - nlattr_add(nw, CARP_NL_KEY, sizeof(sc->sc_key), sc->sc_key); + switch (sc->sc_version) { + case CARP_VERSION_CARP: + nlattr_add_s32(nw, CARP_NL_ADVBASE, sc->sc_advbase); + nlattr_add_s32(nw, CARP_NL_ADVSKEW, sc->sc_advskew); + nlattr_add_in_addr(nw, CARP_NL_ADDR, &sc->sc_carpaddr); + nlattr_add_in6_addr(nw, CARP_NL_ADDR6, &sc->sc_carpaddr6); + if (priv) + nlattr_add(nw, CARP_NL_KEY, sizeof(sc->sc_key), + sc->sc_key); + break; + case CARP_VERSION_VRRPv3: + nlattr_add_u8(nw, CARP_NL_VRRP_PRIORITY, sc->sc_vrrp_prio); + nlattr_add_u16(nw, CARP_NL_VRRP_ADV_INTER, + sc->sc_vrrp_adv_inter); + break; + } CARP_UNLOCK(sc); @@ -2865,19 +2895,24 @@ carp_nl_set(struct nlmsghdr *hdr, struct nl_pstate *npt) return (EINVAL); if (attrs.state > CARP_MAXSTATE) return (EINVAL); - if (attrs.advbase < 0 || attrs.advskew < 0) - return (EINVAL); - if (attrs.advbase > 255) - return (EINVAL); - if (attrs.advskew >= 255) - return (EINVAL); - if (attrs.version == 0) + if (attrs.version == 0) /* compat with pre-VRRPv3 */ attrs.version = CARP_VERSION_CARP; - if (attrs.version != CARP_VERSION_CARP && - attrs.version != CARP_VERSION_VRRPv3) - return (EINVAL); - if (attrs.vrrp_adv_inter > VRRP_MAX_INTERVAL) + switch (attrs.version) { + case CARP_VERSION_CARP: + if (attrs.advbase < 0 || attrs.advskew < 0) + return (EINVAL); + if (attrs.advbase > 255) + return (EINVAL); + if (attrs.advskew >= 255) + return (EINVAL); + break; + case CARP_VERSION_VRRPv3: + if (attrs.vrrp_adv_inter > VRRP_MAX_INTERVAL) + return (EINVAL); + break; + default: return (EINVAL); + } NET_EPOCH_ENTER(et); if (attrs.ifname != NULL) @@ -2897,15 +2932,20 @@ carp_nl_set(struct nlmsghdr *hdr, struct nl_pstate *npt) carpr.carpr_count = 1; carpr.carpr_vhid = attrs.vhid; carpr.carpr_state = attrs.state; - carpr.carpr_advbase = attrs.advbase; - carpr.carpr_advskew = attrs.advskew; - carpr.carpr_addr = attrs.addr; - carpr.carpr_addr6 = attrs.addr6; carpr.carpr_version = attrs.version; - carpr.carpr_vrrp_priority = attrs.vrrp_prio; - carpr.carpr_vrrp_adv_inter = attrs.vrrp_adv_inter; - - memcpy(&carpr.carpr_key, &attrs.key, sizeof(attrs.key)); + switch (attrs.version) { + case CARP_VERSION_CARP: + carpr.carpr_advbase = attrs.advbase; + carpr.carpr_advskew = attrs.advskew; + carpr.carpr_addr = attrs.addr; + carpr.carpr_addr6 = attrs.addr6; + memcpy(&carpr.carpr_key, &attrs.key, sizeof(attrs.key)); + break; + case CARP_VERSION_VRRPv3: + carpr.carpr_vrrp_priority = attrs.vrrp_prio; + carpr.carpr_vrrp_adv_inter = attrs.vrrp_adv_inter; + break; + } sx_xlock(&carp_sx); error = carp_ioctl_set(ifp, &carpr); From nobody Wed May 8 11:19:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNc5Wpdz5Kt5B; Wed, 08 May 2024 11: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 4VZCNb6ycyz49Zc; Wed, 8 May 2024 11: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=1715167200; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KLhxBtyAwxfDIjJuQtwbX/6KzNCKdJrXCYpHIdklGZk=; b=xEIfH+Q1kb7wg5pWQPa5HR9bU4yFuo6HeZCh3GcnZwnnm5wTYfgzBsE1r2Oe32m/98Tk8P dUIaOO4TnRjT2sMw03qcU/pCjpEuztd0V9OqlUnZ6uO0fyg4wUk2Qs8tkpy6xEBbMjLTwV abUVD/Q39AMwPOls5kGOGahbCYvxQs/Se6EOWgtO1m1NufWxd3pOC/cOtSDScaVni1AP5P GBUSEv+oVdsi/NHhp1sEZrdUqefIYX6RBjoUUGZmcwa3fHbNdCrHCF/zlWFWFeBzCNFUNa Z+CUQ9iBEu9lMNZ1cfLIm3s1zGI3LwgVx8d4RzQu+HL3trfpg2GVq9SXLsQeSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167200; a=rsa-sha256; cv=none; b=n+eFdV9Bo5AJufl52XaONhPBoDsThaVU1W8/vPNH2NyBglfQDSLAcI1hmwbopBXIs7GdyC Vd1sG5iFF8vQvzs7Q48DangUN+H4cYLiSqGoOvIx7JZ9O0pBOx4OlN21YFjsistSsxAiyD etHlMkgSzXVlYCQNEdjTJokjUgUKid/wCy+QLkYSyCg00BcVvyUbL8DKp3uIzzdQYaGO4p +ILlLIy/n8XUA8K+UMVpOjisECfuQb4Rr0cAcX+n7IK4606u2Si0uatdkgd9Cbz9OnQnyZ gUUmQl4XhQGHtJOmmo9O85kw8lkaYdNfcWoPMrbKK6blPoRzmP3Q/xnunFfNew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167200; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KLhxBtyAwxfDIjJuQtwbX/6KzNCKdJrXCYpHIdklGZk=; b=yfMeufwrfKd3vNGc6PoGKLhyMIW7uSRnIgzmLvP2lb2V6/f0bYC1JWF1WE5idBioBozUmT 9tsJrDA4AwcinXg66G/efvg0X+STQSVEaLr9vPeednf6qtxiy2PW7UCb+1GptmrwMjzxk0 LvWcNT6BmhYaNr2fHHddTD3L/PhBWwEIpGj+72KbWzboskz2uFayeSdf3SJ/VCtCcLH5Ez eQb2HXncV/tucRrHyprOEcB09xblg5NkZTRRuBdjhLEVqVvMbF32mV2Dd5PbFwgnNtbaoV DVRhi9JhdtXmPFDjRkQq+ojuvRvecctIWVe+dfl8YfzXY7U/cIuLW81NFnDQKw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNb6XsRzN55; Wed, 8 May 2024 11: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 448BJxhM094751; Wed, 8 May 2024 11: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 448BJxT6094748; Wed, 8 May 2024 11:19:59 GMT (envelope-from git) Date: Wed, 8 May 2024 11:19:59 GMT Message-Id: <202405081119.448BJxT6094748@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 5311e7333714 - main - netinet tests: basic VRRP tests List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5311e73337143b2a32e06bd68fb125089c827323 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=5311e73337143b2a32e06bd68fb125089c827323 commit 5311e73337143b2a32e06bd68fb125089c827323 Author: Kristof Provost AuthorDate: 2024-04-11 16:40:19 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:04 +0000 netinet tests: basic VRRP tests Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D44775 --- tests/sys/netinet/carp.py | 14 +++++++ tests/sys/netinet/carp.sh | 98 ++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 111 insertions(+), 1 deletion(-) diff --git a/tests/sys/netinet/carp.py b/tests/sys/netinet/carp.py index ac2c5547fe97..0db31e79ba84 100644 --- a/tests/sys/netinet/carp.py +++ b/tests/sys/netinet/carp.py @@ -51,3 +51,17 @@ class TestCarp(VnetTestTemplate): carp_pkts = sc.sniff(iface=if1.name, stop_filter=filter_f, timeout=5) self.check_carp_src_mac(carp_pkts) + + def test_source_mac_vrrp(self): + "Test VRRP packets source address" + + if1 = self.vnet.iface_alias_map["if1"] + + ToolsHelper.print_output( + "ifconfig {} add vhid 1 carpver 3 192.0.2.203/24".format(if1.name) + ) + + carp_pkts = sc.sniff(iface=if1.name, stop_filter=filter_f, timeout=5) + + self.check_carp_src_mac(carp_pkts) + diff --git a/tests/sys/netinet/carp.sh b/tests/sys/netinet/carp.sh index d08940d433d7..e10e24747c2d 100755 --- a/tests/sys/netinet/carp.sh +++ b/tests/sys/netinet/carp.sh @@ -31,7 +31,7 @@ is_master() jail=$1 itf=$2 - jexec ${jail} ifconfig ${itf} | grep carp | grep MASTER + jexec ${jail} ifconfig ${itf} | grep -E '(carp|vrrp)' | grep MASTER } wait_for_carp() @@ -105,6 +105,51 @@ basic_v4_cleanup() vnet_cleanup } +atf_test_case "vrrp_v4" "cleanup" +vrrp_v4_head() +{ + atf_set descr 'Basic VRRP test (IPv4)' + atf_set require.user root +} + +vrrp_v4_body() +{ + carp_init + + j=vrrp_basic_v4 + + bridge=$(vnet_mkbridge) + epair_one=$(vnet_mkepair) + epair_two=$(vnet_mkepair) + + vnet_mkjail ${j}_one ${bridge} ${epair_one}a ${epair_two}a + vnet_mkjail ${j}_two ${epair_one}b + vnet_mkjail ${j}_three ${epair_two}b + + jexec ${j}_one ifconfig ${bridge} 192.0.2.4/29 up + jexec ${j}_one ifconfig ${bridge} addm ${epair_one}a \ + addm ${epair_two}a + jexec ${j}_one ifconfig ${epair_one}a up + jexec ${j}_one ifconfig ${epair_two}a up + + jexec ${j}_two ifconfig ${epair_one}b 192.0.2.202/29 up + jexec ${j}_two ifconfig ${epair_one}b add vhid 1 carpver 3 192.0.2.1/29 + + jexec ${j}_three ifconfig ${epair_two}b 192.0.2.203/29 up + jexec ${j}_three ifconfig ${epair_two}b add vhid 1 carpver 3 \ + 192.0.2.1/29 + + wait_for_carp ${j}_two ${epair_one}b \ + ${j}_three ${epair_two}b + + atf_check -s exit:0 -o ignore jexec ${j}_one \ + ping -c 3 192.0.2.1 +} + +vrrp_v4_cleanup() +{ + vnet_cleanup +} atf_test_case "unicast_v4" "cleanup" unicast_v4_head() @@ -210,6 +255,55 @@ basic_v6_cleanup() vnet_cleanup } +atf_test_case "vrrp_v6" "cleanup" +vrrp_v6_head() +{ + atf_set descr 'Basic VRRP test (IPv6)' + atf_set require.user root +} + +vrrp_v6_body() +{ + carp_init + + j=carp_basic_v6 + + bridge=$(vnet_mkbridge) + epair_one=$(vnet_mkepair) + epair_two=$(vnet_mkepair) + + vnet_mkjail ${j}_one ${bridge} ${epair_one}a ${epair_two}a + vnet_mkjail ${j}_two ${epair_one}b + vnet_mkjail ${j}_three ${epair_two}b + + jexec ${j}_one ifconfig ${bridge} inet6 2001:db8::0:4/64 up \ + no_dad + jexec ${j}_one ifconfig ${bridge} addm ${epair_one}a \ + addm ${epair_two}a + jexec ${j}_one ifconfig ${epair_one}a up + jexec ${j}_one ifconfig ${epair_two}a up + + jexec ${j}_two ifconfig ${epair_one}b inet6 \ + 2001:db8::1:2/64 up no_dad + jexec ${j}_two ifconfig ${epair_one}b inet6 add vhid 1 carpver 3 \ + 2001:db8::0:1/64 + + jexec ${j}_three ifconfig ${epair_two}b inet6 2001:db8::1:3/64 up no_dad + jexec ${j}_three ifconfig ${epair_two}b inet6 add vhid 1 carpver 3 \ + 2001:db8::0:1/64 + + wait_for_carp ${j}_two ${epair_one}b \ + ${j}_three ${epair_two}b + + atf_check -s exit:0 -o ignore jexec ${j}_one \ + ping -6 -c 3 2001:db8::0:1 +} + +vrrp_v6_cleanup() +{ + vnet_cleanup +} + atf_test_case "unicast_v6" "cleanup" unicast_v6_head() { @@ -469,8 +563,10 @@ switch_cleanup() atf_init_test_cases() { atf_add_test_case "basic_v4" + atf_add_test_case "vrrp_v4" atf_add_test_case "unicast_v4" atf_add_test_case "basic_v6" + atf_add_test_case "vrrp_v6" atf_add_test_case "unicast_v6" atf_add_test_case "unicast_ll_v6" atf_add_test_case "negative_demotion" From nobody Wed May 8 11:20:00 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNd2XDkz5Kt0k; Wed, 08 May 2024 11:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VZCNd157hz49Rv; Wed, 8 May 2024 11: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=1715167201; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iWR5LOCYm6K/crt+Tbpe1Q82bnfLCUE906fcHYfJRZA=; b=ygxUrNX9rB1+TxmPFdML14gmhxELzuNJYtSUvX1q0Mgq+mfVn+MkjWy2zHR4jFp318XWDW SGdADN1c5l3CtsI84aVkath82nSQjDjQYjIuoALHPfg/otpNapwRdEl1hV+jUSNBgCyU58 HsQykdJifa5kJc8Zfst/rc/3zEwltBpwzJYURbsDJqwuOkCtQryHgSgsY3EbloOwnHXcvl quFAboX3yJ9WFiVaW5ywuUDGqzi/5ZJVyR0S67DDCZQBVI/b+ZXQimp8RUmGYKQ2EK0XMZ wNyjXbdtAyCgXY+Tm9s2pw7OaEbAxDgL8yierkVYqtWc0+igVST/1F6TjxgQbw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167201; a=rsa-sha256; cv=none; b=Xg558qmyTNzeUpBOwgSkFn34PWXmAcCzyHvuSYGqSluydJlHxEHyFsegIndkrTEwvTvPvI V92cMFnLpQfeNrU5DhKgp5u4BQSFxX3Jaq73vlM5T4x0ZGN964r6lwSGBT7cpGqeLT/KS4 PthTc7bEC0ye8uJl6QJ7kdA/vnMan17MuLnb51fDTmTOtvv3WcO21P6QWpxauswIVuAd33 dOapWrs9TaKGZ4HsULS5Zzj9ujv3F+M/6JGteSTVakEf097f4hP3+TqhlkMZLeJAne/1Dl TTLbMM8HZIRdArDeZ27Q4Ftr0XZzBV7M9m4/zx1qCQd9cdSGwcIQLFp5SoE/JA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167201; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iWR5LOCYm6K/crt+Tbpe1Q82bnfLCUE906fcHYfJRZA=; b=x4HuGZGmqnT36X51YAAVpvJOrMeniR6HPBm3DMFpY288BhrLucycnPIz8Rjw3xkQdYQl/u AOsurqEqxp5KhRzV0K+5JlYGNmhSJRkykZorLua0jWM2kBt49G6lb0dsraUAz0NNn0KlCY u4q6dKIi5W611+kdwz5KnQwpPug51dxmKsXZ6E0LgLbMQP0jNtC0wi0Uz0Tqy0BMJoh0vT OEfXBInmmwSgv2M5KHX2e+7JUhwGv99SkhzIUZy5sMXYTJau4QyzB0z5C7+7TCpu+pG27X vYB0wNl+F4FJ892aJnyXIASsIlMmbAvM2yT5js6G6ZffTFPI936jgsbnhPxGgw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNd02jmzN00; Wed, 8 May 2024 11: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 448BK0gU096532; Wed, 8 May 2024 11: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 448BK0jS096510; Wed, 8 May 2024 11:20:00 GMT (envelope-from git) Date: Wed, 8 May 2024 11:20:00 GMT Message-Id: <202405081120.448BK0jS096510@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 0d446a4303a8 - main - carp: document the new VRRPv3 support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0d446a4303a8444c5ba9c7d4a3caee846579d101 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=0d446a4303a8444c5ba9c7d4a3caee846579d101 commit 0d446a4303a8444c5ba9c7d4a3caee846579d101 Author: Kristof Provost AuthorDate: 2024-04-12 14:09:04 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:04 +0000 carp: document the new VRRPv3 support Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D44776 --- sbin/ifconfig/ifconfig.8 | 16 +++++++++++++++- share/man/man4/carp.4 | 13 ++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/sbin/ifconfig/ifconfig.8 b/sbin/ifconfig/ifconfig.8 index e8a18d08635b..99a4cf8c9751 100644 --- a/sbin/ifconfig/ifconfig.8 +++ b/sbin/ifconfig/ifconfig.8 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd November 08, 2023 +.Dd May 1, 2024 .Dt IFCONFIG 8 .Os .Sh NAME @@ -3151,6 +3151,20 @@ announcements to. Restore the default destination address for (IPv4) .Xr carp 4 announcements, which is ff02::12. +.It Cm carpver +Set the protocol version. +Valid choices are 2 (for +.Xr carp 4) +and 3 (for VRRPv3). +This can only be set when +.Xr carp 4 +is initiated. +.It Cm vrrpprio +Set the VRRPv3 priority. +Valid values are 1-255. +.It Cm vrrpinterval +Set the VRRPv3 Master Advertisement Interval. +Values are in centiseconds. .El .Sh ENVIRONMENT The following environment variables affect the execution of diff --git a/share/man/man4/carp.4 b/share/man/man4/carp.4 index 19079a2cc97e..c972e0288791 100644 --- a/share/man/man4/carp.4 +++ b/share/man/man4/carp.4 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 6, 2023 +.Dd April 12, 2024 .Dt CARP 4 .Os .Sh NAME @@ -93,6 +93,17 @@ or through the .Dv SIOCSPEER .Xr ioctl 2 . .Pp +.Xr carp 4 +can be configured to use either the non-standard CARP protocol, or VRRPv3 (RFC 5798). +Use the +.Cm carpver +parameter to select either 2 (CARP) or 3 (VRRPv3). +VRRPv3 specific parameters can be configured using the +.Cm vrrpprio +and +.Cm vrrpinterval +parameters. +.Pp CARP virtual hosts can be configured on multicast-capable interfaces: Ethernet, layer 2 VLAN, FDDI and Token Ring. An arbitrary number of virtual host IDs can be configured on an interface. From nobody Wed May 8 11:20:01 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZCNf3Kt3z5KsmD; Wed, 08 May 2024 11: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 4VZCNf11g6z49Zq; Wed, 8 May 2024 11: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=1715167202; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JAj0U1siOFzHL2z991jFmn2R48X/PnRixq7cyBOgGnc=; b=ZwSs1ckEsJBJmO9rmajl1C0LzImwb9cgMHGvT9aJTX0TIMpDiVscCiknFM5hNSig4MDLvA aNqso/tyClDBGCMPRax0ek/euMDk1aPXExNJOMKHRwVx5OoonYWyddWfKkm/JUvVjKOsyy 7tjbd6twJXQDtQ8m7Ohgmrhyzt7FGZIo2NM7OMFjL2NMlxOqJdhevJfyBVe2lWBy+sR/T5 0QhUlTqvV+UntgjXtSn5Xj3r11QiMM12O5AXxXz6V/FW+G69rPecs6JcBifyvb9bg8j1Vb o8c0zGqPhIquaWIPgGhJXZZUoP7HKS7b2zxJRbFkh9sOfnzf6lC0ryL6wS/LyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715167202; a=rsa-sha256; cv=none; b=JBkiHYrqBzIbTa6QErJy/vsQ8XF4Bwa+7vW+OUGdjbWZomqTVq6zc3a8FeeRHyVcquuTYz 9UkdhNNSrduy/KKzybbHGZJwlGPGaVyB4xGLDZFoG+haNtMEI8pCn1HzeCHturgUsa4WGG r3jcLG89L5nqKVMxA+ypDhzjwrYbW51CTfPdj2wa0Yfj39XsEXmABKXPmlCurqlgLjONMN aqOFjJbZuzramN2S94zcDzzJ47XD69hcymsji5mSQmrhw88lJCJVcMS0s++9XwY2KiqD81 6v/TB0UvgnMeNASXgyxWWnpMbFWSb0ULFYAZXK20H1spsNJchTgioq14TAb9Dg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715167202; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JAj0U1siOFzHL2z991jFmn2R48X/PnRixq7cyBOgGnc=; b=AswD/zGo/4p1bvRHdCxDXNEh8jee7+Av/IR8L/9+M6jAg3BgSLRFvmC+lxvZDuDOhBQiRP DThZgsnzrKHGEApjep925RZwpg2LxL8liszcL7+a9EQI3C7cPVx/NxjUIinld6SJAZPbwl GUm07eCtD4xVBj8Ey/dO5s9XyNfuGMXs6+bVAhkabKmUIBjXseNEafJlLlWICu0H7Ul0vN BL/qywisONFB0W6Jj9hnmpQJ+pvFJympLOQqLFOLba5RuYkhEyPrAFv2ZHdALQnwDKvDZH MBvG+Vwu0BuO3eeCA3P9mWSWnG6sccEZZx73v1VLamfivOnWQhQn5Avxh0yggQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZCNf0dxdzN01; Wed, 8 May 2024 11: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 448BK1Yr096839; Wed, 8 May 2024 11: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 448BK1Ru096835; Wed, 8 May 2024 11:20:01 GMT (envelope-from git) Date: Wed, 8 May 2024 11:20:01 GMT Message-Id: <202405081120.448BK1Ru096835@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 301ec2cebb6a - main - pf: always mark states as unlinked before detaching them List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 301ec2cebb6a3e472af39eb7b98c3b7ff88e04b0 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=301ec2cebb6a3e472af39eb7b98c3b7ff88e04b0 commit 301ec2cebb6a3e472af39eb7b98c3b7ff88e04b0 Author: Kristof Provost AuthorDate: 2024-05-06 07:43:49 +0000 Commit: Kristof Provost CommitDate: 2024-05-08 11:19:05 +0000 pf: always mark states as unlinked before detaching them Users have reported crashes in pf_test_state_udp() where at least one state key is NULL. That suggests that pf_detach_state() ran concurrently with pf_test_state_udp(). pf_test_state_udp() holds the state lock (aka the id lock), but pf_detach_state() does not. The intent is that detached states are not returned by STATE_LOOKUP/ pf_find_state(), as the state's timeout is set to PFTM_UNLINKED and thus pf_find_state() does not find the state. There are other paths to pf_detach_state() (outside of pf_unlink_state()) though, where we did not set the timeout to PFTM_UNLINKED. Fix those, and assert that the timeout is set correctly when we enter pf_detach_state(). MFC after: 1 week See also: https://redmine.pfsense.org/issues/15413 Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D45101 --- sys/netpfil/pf/pf.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 0dd4da5f271a..195b5d49db7a 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -1353,6 +1353,7 @@ keyattach: sk : NULL); printf("\n"); } + s->timeout = PFTM_UNLINKED; PF_HASHROW_UNLOCK(ih); KEYS_UNLOCK(); uma_zfree(V_pf_state_key_z, sk); @@ -1421,6 +1422,7 @@ pf_detach_state(struct pf_kstate *s) struct pf_keyhash *kh; NET_EPOCH_ASSERT(); + MPASS(s->timeout >= PFTM_MAX); pf_sctp_multihome_detach_addr(s); @@ -1552,6 +1554,7 @@ pf_state_insert(struct pfi_kkif *kif, struct pfi_kkif *orig_kif, break; if (cur != NULL) { + s->timeout = PFTM_UNLINKED; PF_HASHROW_UNLOCK(ih); if (V_pf_status.debug >= PF_DEBUG_MISC) { printf("pf: state ID collision: " From nobody Wed May 8 12:31:22 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZDyy41Fxz5J2C1; Wed, 08 May 2024 12:31: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 4VZDyy3RH7z4M4n; Wed, 8 May 2024 12:31:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715171482; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bn/rDQDFMR18c1RBQkCdvRC5iI6w4EJApTGu2ouDacY=; b=MDuPkn0M1oE8uxqWzlfUbhb0gJv4pmvzDNV1FscjEv0UlfnV9wnYkyv0U5nlDSAuPrakuP nlWrLjpJfDvxde59bkJA/kmHQn/HV64V4fSTwLFH3ZB1ne0YGjyQJyYpG6aHh5JInsK8jB HHK1Yt71OtYjrcY1WMUqjtX2Zf1NAN0mHw8FZIwP3ysRTkKhtQJiYHF3jYLegPeBsnT8g5 cnrAeEEBtMpO3TGoDsC69Wnv27JkbJtXlhIqK0W0T3qdZqmHotQqoW57dAK8GdFg8NcPp/ 9CdOj5s2MV41A5+jDMEWO5h8z9ByAUtmgO5F96+BAna4+hml5JJHnDCmdrz80A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715171482; a=rsa-sha256; cv=none; b=Ri5zvroj8ripPOgMNsrQY+uIyxRmbFhXCm82Xsm0uFF0o1YGlgYV4X5+oGLBhL18MePVWP obeRaJ5jUJ3+tBAPnJUUk+eAGcyd9ycWYGVqi/vyyxuYFiZZadR4NE/Fcd9uqVOT5ucEwA gXvJlvmRceXp29DdKdzErlB9/gTKQkvE9iDg1WqfDHVqpc+FNvxEOfBBhiRuRBNF68CjjL FEpDFWVRG97RgywOG23diewJm+zaLULYAsSLF8WnPQm80ybzgEsfJvf5OQ4h4BNdjUWqg2 vVauU0Tg0g11XoDXxKwyXngTjrLhnovH58CUTpNTUUfeIYyp1f0J/K7n32h06A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715171482; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bn/rDQDFMR18c1RBQkCdvRC5iI6w4EJApTGu2ouDacY=; b=KGzO7ZPqYbkwTvPAcsIJuhJFC/DLoEKe8RoWuKPfrlqQtwIy9B9aqxpDzD/gBDuwlZvyP3 /RDJ/ZR4yfhTHgYpBXE0ukLpt259YfclhJSMMT1lo8e5ES7NcduA33tamiQRxAg7wgAsK5 G5x/gFk/l5cyOGxq5tsr3so014oTK3UfHWo7Qoqd9xh2cBbpAf2uWleFZw1kUHuTBKXhlN Sq58ot26mowUk2DWekQrVYrvzODpIT2bre7rkbQVCvUmZrUAz76xF8GAsZKV4/Wnluueq+ Rtz/enfAYkpNVBLYlibf452/kqZWG89tmcZVFSOb4qjuT+39GsxobeJWQb07mg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZDyy32zszQ0G; Wed, 8 May 2024 12:31: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 448CVMcH024662; Wed, 8 May 2024 12:31:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448CVMSg024659; Wed, 8 May 2024 12:31:22 GMT (envelope-from git) Date: Wed, 8 May 2024 12:31:22 GMT Message-Id: <202405081231.448CVMSg024659@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Richard Scheffenegger Subject: git: cbf3575aa3c2 - main - tcp: filter small SACK blocks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rscheff X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cbf3575aa3c2e3d0d9eb7fafb445c783489ab9d9 Auto-Submitted: auto-generated The branch main has been updated by rscheff: URL: https://cgit.FreeBSD.org/src/commit/?id=cbf3575aa3c2e3d0d9eb7fafb445c783489ab9d9 commit cbf3575aa3c2e3d0d9eb7fafb445c783489ab9d9 Author: Richard Scheffenegger AuthorDate: 2024-05-04 19:47:29 +0000 Commit: Richard Scheffenegger CommitDate: 2024-05-08 12:00:10 +0000 tcp: filter small SACK blocks While the SACK Scoreboard in the base stack limits the number of holes by default to only 128 per connection in order to prevent CPU load attacks by splitting SACKs, filtering out SACK blocks of unusually small size can further improve the actual processing of SACK loss recovery. Reviewed By: tuexen, #transport Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D45075 --- sys/netinet/tcp_sack.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/netinet/tcp_sack.c b/sys/netinet/tcp_sack.c index f59cc5fe0d0b..a8cc84397d34 100644 --- a/sys/netinet/tcp_sack.c +++ b/sys/netinet/tcp_sack.c @@ -558,6 +558,7 @@ tcp_sack_doack(struct tcpcb *tp, struct tcpopt *to, tcp_seq th_ack) int i, j, num_sack_blks; sackstatus_t sack_changed; int delivered_data, left_edge_delta; + int maxseg = tp->t_maxseg - MAX_TCPOPTLEN; tcp_seq loss_hiack = 0; int loss_thresh = 0; @@ -604,7 +605,9 @@ tcp_sack_doack(struct tcpcb *tp, struct tcpopt *to, tcp_seq th_ack) SEQ_GT(sack.start, th_ack) && SEQ_LT(sack.start, tp->snd_max) && SEQ_GT(sack.end, tp->snd_una) && - SEQ_LEQ(sack.end, tp->snd_max)) { + SEQ_LEQ(sack.end, tp->snd_max) && + ((sack.end - sack.start) >= maxseg || + SEQ_GEQ(sack.end, tp->snd_max))) { sack_blocks[num_sack_blks++] = sack; } else if (SEQ_LEQ(sack.start, th_ack) && SEQ_LEQ(sack.end, th_ack)) { From nobody Wed May 8 12:55:22 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZFVg1gJjz5J4Bl; Wed, 08 May 2024 12:55: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 4VZFVf4wW0z4Pcv; Wed, 8 May 2024 12:55:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715172922; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AC2zNT52eG7R64FGojJUElNpQdrOB1VKwIW4Pp2EZWs=; b=MCkK+M/iK/48JZtlxehXIzzSeZkQRrlFxg07e/HFPzjwERM11D/C4J5e3WGvhYn2oghZC3 0LO7eFewb+fMEm1maeUQydmDxfxiyWR81n1Dk3LQj5MF6SuYNs3gLtg354O6dfzHxoPX9q 2FzwpDadhxKQQqd6VSONxT5DtIbvaP5BxeGZe3yOLtw0qO3bwX06NMkmOK2OY44ZQwtqmW t9fSKa/2ClYdq9IB9VNLi4B1W5t5oCZuQsFsfb1rPn2lIaW4SLTFfu0qmA/QDcWDK/Srj5 g/L8Xa27L5a7Rxto+caQeYTWquWTs7d0skJJ0XtD6/jye+TXHC6IzKQhMrEu/w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715172922; a=rsa-sha256; cv=none; b=O9wUZhxBCeTYvgrdh25WK33ehrq/VHIA0hmEVkKTnkYqn2HPD5p26GcyraO1+He8jaMNPV Oc+U1HHoxJonXuDS8a6gOXgjgdiY77+gfCPPESQZlS/kB16j+G8XG2CJdY5Hsllf0JDiC4 cpodnZeA1MyFTqVtgXpKjprKFYDlu/X8mJJ0CAY2/oNrrt4edHFu5tL/hLHEb5TJQTRtmO jQsCOQ03I/AuPWY5frmw3QpFeEuMbFCKrvuAIz7KYJrmIvxt40lDR5akChGh9CrzGiVp7V x9LWvkpn1BhfwV7n9m65yDpfQxWEgvqwD6hFZ2IArO/iDgMlS84o4y2V1A6RUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715172922; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AC2zNT52eG7R64FGojJUElNpQdrOB1VKwIW4Pp2EZWs=; b=Z6WmVQWIUVXsqotIN+WDa76nhg476qS7f/C6oFnwYhCmlvUAp02cZcih2LoJD/I9FzTlZd VW22yDKSyMgpqJNr3kcBm7vnfjfvfFz1V9rg3+TVYOQnGMnL7MrqQBG/u09G5LRDSv44Hc /AJNeB/lkp+MeUqhozS3XZ0kaM/XdLad/gc58iZN+seHQCtd0nWtvHKExXyKOSkm2bFyUw 3SWCGQgvrGHozXbedtaUhmnQGMOb84OoAQrhTDn0hx/v6vT/5zvEW1jP67VlDTU5POI5up c90LBZb3NY+SAfyvZkNIw/+Q0unn9QXLTXgdzpnnuEAaM662+sLtApgn4J6+Ag== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZFVf4F5vzQJ2; Wed, 8 May 2024 12:55: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 448CtMta061856; Wed, 8 May 2024 12:55:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448CtMlp061853; Wed, 8 May 2024 12:55:22 GMT (envelope-from git) Date: Wed, 8 May 2024 12:55:22 GMT Message-Id: <202405081255.448CtMlp061853@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Richard Scheffenegger Subject: git: dcdfe44901ec - main - tcp: add sysctl to allow/disallow TSO during SACK loss recovery List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rscheff X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dcdfe44901eca56254ac41b11b6c7b730a276935 Auto-Submitted: auto-generated The branch main has been updated by rscheff: URL: https://cgit.FreeBSD.org/src/commit/?id=dcdfe44901eca56254ac41b11b6c7b730a276935 commit dcdfe44901eca56254ac41b11b6c7b730a276935 Author: Richard Scheffenegger AuthorDate: 2024-05-08 12:33:12 +0000 Commit: Richard Scheffenegger CommitDate: 2024-05-08 12:33:20 +0000 tcp: add sysctl to allow/disallow TSO during SACK loss recovery Introduce net.inet.tcp.sack.tso for future use when TSO is ready to be used during loss recovery. Reviewed By: tuexen, #transport Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D45068 --- sys/netinet/tcp_output.c | 2 +- sys/netinet/tcp_sack.c | 5 +++++ sys/netinet/tcp_var.h | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index 2bbc9414197c..e64b7701c453 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -560,7 +560,7 @@ after_sack_rexmit: if ((tp->t_flags & TF_TSO) && V_tcp_do_tso && len > tp->t_maxseg && (tp->t_port == 0) && ((tp->t_flags & TF_SIGNATURE) == 0) && - tp->rcv_numsacks == 0 && sack_rxmit == 0 && + tp->rcv_numsacks == 0 && ((sack_rxmit == 0) || V_tcp_sack_tso) && ipoptlen == 0 && !(flags & TH_SYN)) tso = 1; diff --git a/sys/netinet/tcp_sack.c b/sys/netinet/tcp_sack.c index a8cc84397d34..53a181703fe9 100644 --- a/sys/netinet/tcp_sack.c +++ b/sys/netinet/tcp_sack.c @@ -137,6 +137,11 @@ SYSCTL_INT(_net_inet_tcp_sack, OID_AUTO, lrd, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_do_lrd), 1, "Perform Lost Retransmission Detection"); +VNET_DEFINE(int, tcp_sack_tso) = 0; +SYSCTL_INT(_net_inet_tcp_sack, OID_AUTO, tso, CTLFLAG_VNET | CTLFLAG_RW, + &VNET_NAME(tcp_sack_tso), 0, + "Allow TSO during SACK loss recovery"); + VNET_DEFINE(int, tcp_sack_maxholes) = 128; SYSCTL_INT(_net_inet_tcp_sack, OID_AUTO, maxholes, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_sack_maxholes), 0, diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index f0a034bd1ea7..6d60c21e64e9 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -1291,6 +1291,7 @@ VNET_DECLARE(int, tcp_retries); VNET_DECLARE(int, tcp_sack_globalholes); VNET_DECLARE(int, tcp_sack_globalmaxholes); VNET_DECLARE(int, tcp_sack_maxholes); +VNET_DECLARE(int, tcp_sack_tso); VNET_DECLARE(int, tcp_sc_rst_sock_fail); VNET_DECLARE(int, tcp_sendspace); VNET_DECLARE(int, tcp_udp_tunneling_overhead); @@ -1337,6 +1338,7 @@ VNET_DECLARE(struct inpcbinfo, tcbinfo); #define V_tcp_sack_globalholes VNET(tcp_sack_globalholes) #define V_tcp_sack_globalmaxholes VNET(tcp_sack_globalmaxholes) #define V_tcp_sack_maxholes VNET(tcp_sack_maxholes) +#define V_tcp_sack_tso VNET(tcp_sack_tso) #define V_tcp_sc_rst_sock_fail VNET(tcp_sc_rst_sock_fail) #define V_tcp_sendspace VNET(tcp_sendspace) #define V_tcp_udp_tunneling_overhead VNET(tcp_udp_tunneling_overhead) From nobody Wed May 8 12:55:23 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZFVh0s65z5J4N3; Wed, 08 May 2024 12:55: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 4VZFVg6J0Kz4Ps0; Wed, 8 May 2024 12:55:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715172923; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uIH83jZ860ez4WWzUqFSQLAv/97aOlqNfxIw/O7UY7s=; b=BTWqMcOKnBHiJm7TPH889VA3E9gKVwPdat18yLec81x2Q11KsgrwQj3eC2WL7VHyWU9J2e UYiySPa8ZifhuIe4tuG1gycs36LqwIcxZYMqDeUv3XM5B75zEj7sDj3NYOa5I7Ts+itz5f x0oUXCzDlR6EUGIpcdaZGoGz8GGKjRgYIhtEWeRhm0z13DiKBQErlVQ00KCHMNLewkmuwE fjb50bSyaUSN8+F6RX1oYE/ElJZb8d02dKBLheKPdEy0g5JUzRmVfGrGZ4LnZMP5BXFjRK MWsge4qop63oBbyshNLEd5jIWMLGB1mTHHxmsemtD/p0t+TBM3x3Yjpr1sQDzQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715172923; a=rsa-sha256; cv=none; b=OyGVvmFdghtmfs/9Vn7SihhpKQe51+WMX5JyNo7c3A5iGDVHpXeYbvZXg1vs8RKn+haziD y+7nzaV5tncJWP+oJfOqqlj+x/UM3eQF8f3JV6XexQkvj8XayasaMgkfnDVbixEZwbISef oVK9K5bK6zKH0k6uaEDlf2kFalCahVecxpW86mTWjAfA+2BolBbb+LdVg+vQKJvCq0b0rY BCU9ygZXZjoVYuH4m7d3Psg/gH7jGCBlGNVCaf7wXRPobWl14H+py6WN2wVoo18JBcYUUD +JvxJRdPjGSjBsm2XTtDDqB6lo5dF08JwPyAiI6YmueDDTItq8wwGOm3D4of1w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715172923; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uIH83jZ860ez4WWzUqFSQLAv/97aOlqNfxIw/O7UY7s=; b=ZMvnJToDCyBYhL6ToOeIZS4ujAg5R0I9bi7PIhgr+ACFfCMVc1ay/eKusroLS7b5QKxZws NyqzbgBSmuygknkmJ0QJzMBno0AAnkxBWLYcZpGHK6qnE9LaEJT39CvFXjhB87K3cALmp5 D5AaNZmvHbjbN9NrHtERvxjkuuT0GrNHPjlU0FBigD3LmfeUXIuVHb3BChb82JbvuEQddH Wam2xUJSCqc8LEy4eqnnZU378qL3SS+9ZXE+S3SVCwlnVc40i8WDrNGEA4n7k1KUISetGX onX3BxJMj9gEzz36SYlb4GIyel3WdC4ZFv2/nbIOMl+t8Une46/Dp0MRnBgMYg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZFVg5KtdzQ2F; Wed, 8 May 2024 12:55: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 448CtNjj061916; Wed, 8 May 2024 12:55:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448CtNWE061913; Wed, 8 May 2024 12:55:23 GMT (envelope-from git) Date: Wed, 8 May 2024 12:55:23 GMT Message-Id: <202405081255.448CtNWE061913@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Richard Scheffenegger Subject: git: 2a9aae9e5f7a - main - tcp: add counter to track when SACK loss recovery uses TSO List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rscheff X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2a9aae9e5f7a1a218b2c05ed28d811e533912118 Auto-Submitted: auto-generated The branch main has been updated by rscheff: URL: https://cgit.FreeBSD.org/src/commit/?id=2a9aae9e5f7a1a218b2c05ed28d811e533912118 commit 2a9aae9e5f7a1a218b2c05ed28d811e533912118 Author: Richard Scheffenegger AuthorDate: 2024-05-08 12:36:53 +0000 Commit: Richard Scheffenegger CommitDate: 2024-05-08 12:37:33 +0000 tcp: add counter to track when SACK loss recovery uses TSO Add a counter to track how frequently SACK has transmitted more than one MSS using TSO. Instances when this will be beneficial is the use of PRR, or when ACK thinning due to GRO/LRO or ACK discards by the network are present. Reviewed By: tuexen, #transport Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D45070 --- sys/netinet/in_kdtrace.c | 1 + sys/netinet/in_kdtrace.h | 1 + sys/netinet/tcp_output.c | 3 +++ sys/netinet/tcp_var.h | 3 ++- usr.bin/netstat/inet.c | 8 +++++--- 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/sys/netinet/in_kdtrace.c b/sys/netinet/in_kdtrace.c index 2a53b11c3be2..8491a4d49d91 100644 --- a/sys/netinet/in_kdtrace.c +++ b/sys/netinet/in_kdtrace.c @@ -294,6 +294,7 @@ MIB_PROBE_TCP(tcps_finwait2_drops); MIB_PROBE_TCP(tcps_sack_recovery_episode); MIB_PROBE_TCP(tcps_sack_rexmits); +MIB_PROBE_TCP(tcps_sack_rexmits_tso); MIB_PROBE_TCP(tcps_sack_rexmit_bytes); MIB_PROBE_TCP(tcps_sack_rcv_blocks); MIB_PROBE_TCP(tcps_sack_send_blocks); diff --git a/sys/netinet/in_kdtrace.h b/sys/netinet/in_kdtrace.h index 780839299993..9896af96eb84 100644 --- a/sys/netinet/in_kdtrace.h +++ b/sys/netinet/in_kdtrace.h @@ -286,6 +286,7 @@ SDT_PROBE_DECLARE(mib, tcp, count, tcps_finwait2_drops); SDT_PROBE_DECLARE(mib, tcp, count, tcps_sack_recovery_episode); SDT_PROBE_DECLARE(mib, tcp, count, tcps_sack_rexmits); +SDT_PROBE_DECLARE(mib, tcp, count, tcps_sack_rexmits_tso); SDT_PROBE_DECLARE(mib, tcp, count, tcps_sack_rexmit_bytes); SDT_PROBE_DECLARE(mib, tcp, count, tcps_sack_rcv_blocks); SDT_PROBE_DECLARE(mib, tcp, count, tcps_sack_send_blocks); diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index e64b7701c453..c318e8517c2e 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -1037,6 +1037,9 @@ send: TCPSTAT_ADD(tcps_sndrexmitbyte, len); if (sack_rxmit) { TCPSTAT_INC(tcps_sack_rexmits); + if (tso) { + TCPSTAT_INC(tcps_sack_rexmits_tso); + } TCPSTAT_ADD(tcps_sack_rexmit_bytes, len); } #ifdef STATS diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index 6d60c21e64e9..01dd7198511c 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -1030,6 +1030,7 @@ struct tcpstat { /* SACK related stats */ uint64_t tcps_sack_recovery_episode; /* SACK recovery episodes */ uint64_t tcps_sack_rexmits; /* SACK rexmit segments */ + uint64_t tcps_sack_rexmits_tso; /* SACK rexmit TSO chunks */ uint64_t tcps_sack_rexmit_bytes; /* SACK rexmit bytes */ uint64_t tcps_sack_rcv_blocks; /* SACK blocks (options) received */ uint64_t tcps_sack_send_blocks; /* SACK blocks (options) sent */ @@ -1088,7 +1089,7 @@ struct tcpstat { uint64_t tcps_tlpresend_bytes; /* number of bytes resent by tlp */ - uint64_t _pad[4]; /* 4 TBD placeholder for STABLE */ + uint64_t _pad[3]; /* 3 TBD placeholder for STABLE */ }; #define tcps_rcvmemdrop tcps_rcvreassfull /* compat */ diff --git a/usr.bin/netstat/inet.c b/usr.bin/netstat/inet.c index 0657926eab80..5d7fd0e46cf1 100644 --- a/usr.bin/netstat/inet.c +++ b/usr.bin/netstat/inet.c @@ -783,11 +783,13 @@ tcp_stats(u_long off, const char *name, int af1 __unused, int proto __unused) p(tcps_sack_recovery_episode, "\t{:recovery-episodes/%ju} " "{N:/SACK recovery episode%s}\n"); - p(tcps_sack_rexmits, "\t{:segment-retransmits/%ju} " + p(tcps_sack_rexmits, "\t{:segment-retransmits/%ju} " "{N:/segment rexmit%s in SACK recovery episodes}\n"); - p(tcps_sack_rexmit_bytes, "\t{:byte-retransmits/%ju} " + p(tcps_sack_rexmits_tso, "\t{:tso-chunk-retransmits/%ju} " + "{N:/tso chunk rexmit%s in SACK recovery episodes}\n"); + p(tcps_sack_rexmit_bytes, "\t{:byte-retransmits/%ju} " "{N:/byte rexmit%s in SACK recovery episodes}\n"); - p(tcps_sack_rcv_blocks, "\t{:received-blocks/%ju} " + p(tcps_sack_rcv_blocks, "\t{:received-blocks/%ju} " "{N:/SACK option%s (SACK blocks) received}\n"); p(tcps_sack_send_blocks, "\t{:sent-option-blocks/%ju} " "{N:/SACK option%s (SACK blocks) sent}\n"); From nobody Wed May 8 14:49:45 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZJ2d6V6Cz5JHdZ; Wed, 08 May 2024 14:49: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 4VZJ2d48w3z4dw9; Wed, 8 May 2024 14:49:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715179785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nt8fcMizQ1yjiZXxdb3R1tqxifwlqlE/XCJSxBUk3f4=; b=k+m/9ugh4ppbHYxFEaYR72F4wOYcDiWWhy0FuVAt/G+x8PWmN6HGko1dJ1B0lX0TfI6yFQ wsydk5DMAChimSgoMQTFaejJOGZ+q5sGNjMA1NnmKgSXUIX7mMvrdGnLSFFSNrgo8tv00q Tb6HWf+rBpSMD2EctUb0SQGYNvY+Xnf69JlDxJjoSjJC9CWU/QHNI4JdSDw4R7j/HgrgI3 tB8u7biQVRP+Jv2otejpx1Y8cxPetKZ/i6lUsOK5+lLlywyjJzOC+pYnmEj1IcX9od5iS6 ZpXWPrOXhmaZJ8cSDh4VtBeb3pwYC/z5xEdhmd6KDHwJYXDhZvpuJR8k4hdtYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715179785; a=rsa-sha256; cv=none; b=WKQfWJYlaQny7PP2gLiKRaO935Z2WvXJmi68j37txGIARL+xJv43ze8qNtpPV5TVz+6s9i QWsct4CNTDYq3x8mWZ+k0qC7R3n8w20iBz1CGnc7H1XDNDjVeClQWjU3YTnSkhyHWbYvQS KhcejGCxceC+HMt3UJyMUYp33Wr0TCCaPpfhnzlw3yecAxCfBFZGLQ5Agt64RgYcvxip7T Fvr9mGykb4wUE9RgBbXbpBe5kH/j5sqW4YeuhFdF6OFAMcGoJE2621QiRlKUNQH9KcBY++ 2UyqTmor4pfBdEcHVfohx+1YS1YEuHG5+vvHkLXmTuRqtuxU5B7nN7OkKh899g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715179785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nt8fcMizQ1yjiZXxdb3R1tqxifwlqlE/XCJSxBUk3f4=; b=aQdlFe+g71M49uDe9i6guG09KJXZmSbCLqdqtRKjG8xtRqGLfKR1LNs5NFr03PWJ0nt33B LuFUZPskC+yQX2jWfaJ5cMOeNkm7t5gr1zap94GmXTeQo9oFwTkwPo8W2VuXTKziltOXJc ui6YQSaPFb2OamGlG5Z9qQ1xXUFGixbpSJIfiGIvB5ZOMe2dqNKGj+Ig964W/tNbCERZBu lDBaKPCVKbth8M41Tv+Fn8u0yLwFJEWnu3Jac5f42DMzPgiQd0O5I7md7Jlt1i6qHrk6+t PhcRcV/YK6VoQ2NlTE+croUsCJKNu80hFvL0ApDVvHFnZxxJeTm/P8opFx/iJA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZJ2d3S0VzTD7; Wed, 8 May 2024 14:49: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 448Enjct048960; Wed, 8 May 2024 14:49:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448Enj7l048957; Wed, 8 May 2024 14:49:45 GMT (envelope-from git) Date: Wed, 8 May 2024 14:49:45 GMT Message-Id: <202405081449.448Enj7l048957@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: ec2b6b16aac4 - main - libthr: avoid varargs in fcntl and openat interposers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ec2b6b16aac4d2873a856658d4cd6001ec255dc7 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=ec2b6b16aac4d2873a856658d4cd6001ec255dc7 commit ec2b6b16aac4d2873a856658d4cd6001ec255dc7 Author: Brooks Davis AuthorDate: 2024-05-08 14:49:13 +0000 Commit: Brooks Davis CommitDate: 2024-05-08 14:49:13 +0000 libthr: avoid varargs in fcntl and openat interposers Align these signatures with the ones in syscalls.master (and thus libsys.h). There's no reason to do va_args twice and in some ABIs (e.g,, CheriABI) you can't access fixed arguments as varargs if you weren't called with varargs signature. Reviewed by: imp, kib, jhibbits Obtained from: CheriBSD Differential Revision: https://reviews.freebsd.org/D45126 --- lib/libthr/thread/thr_private.h | 4 ++-- lib/libthr/thread/thr_syscalls.c | 25 +++++-------------------- 2 files changed, 7 insertions(+), 22 deletions(-) diff --git a/lib/libthr/thread/thr_private.h b/lib/libthr/thread/thr_private.h index f89941f96c78..de65e8e7353d 100644 --- a/lib/libthr/thread/thr_private.h +++ b/lib/libthr/thread/thr_private.h @@ -864,8 +864,8 @@ int _pthread_mutexattr_setrobust(pthread_mutexattr_t * _Nonnull, int); /* #include */ #ifdef _SYS_FCNTL_H_ #ifndef _LIBC_PRIVATE_H_ -int __sys_fcntl(int, int, ...); -int __sys_openat(int, const char *, int, ...); +int __sys_fcntl(int, int, intptr_t); +int __sys_openat(int, const char *, int, int); #endif /* _LIBC_PRIVATE_H_ */ #endif /* _SYS_FCNTL_H_ */ diff --git a/lib/libthr/thread/thr_syscalls.c b/lib/libthr/thread/thr_syscalls.c index ba07c92576c2..22f9c1f68ec2 100644 --- a/lib/libthr/thread/thr_syscalls.c +++ b/lib/libthr/thread/thr_syscalls.c @@ -188,22 +188,19 @@ __thr_connect(int fd, const struct sockaddr *name, socklen_t namelen) * if it is canceled. */ static int -__thr_fcntl(int fd, int cmd, ...) +__thr_fcntl(int fd, int cmd, __intptr_t arg) { struct pthread *curthread; int ret; - va_list ap; curthread = _get_curthread(); - va_start(ap, cmd); if (cmd == F_OSETLKW || cmd == F_SETLKW) { _thr_cancel_enter(curthread); - ret = __sys_fcntl(fd, cmd, (intptr_t)va_arg(ap, void *)); + ret = __sys_fcntl(fd, cmd, arg); _thr_cancel_leave(curthread, ret == -1); } else { - ret = __sys_fcntl(fd, cmd, (intptr_t)va_arg(ap, void *)); + ret = __sys_fcntl(fd, cmd, arg); } - va_end(ap); return (ret); } @@ -294,23 +291,11 @@ __thr_nanosleep(const struct timespec *time_to_sleep, * If the thread is canceled, file is not opened. */ static int -__thr_openat(int fd, const char *path, int flags, ...) +__thr_openat(int fd, const char *path, int flags, int mode) { struct pthread *curthread; - int mode, ret; - va_list ap; + int ret; - - /* Check if the file is being created: */ - if ((flags & O_CREAT) != 0) { - /* Get the creation mode: */ - va_start(ap, flags); - mode = va_arg(ap, int); - va_end(ap); - } else { - mode = 0; - } - curthread = _get_curthread(); _thr_cancel_enter(curthread); ret = __sys_openat(fd, path, flags, mode); From nobody Wed May 8 14:54:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZJ8C1cRFz5JJ8Y; Wed, 08 May 2024 14:54: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 4VZJ8C18rLz4fdJ; Wed, 8 May 2024 14:54:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715180075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vwZT1fOOWz1H8F93rOaVzhiRuSxNx3eAM4ACrIq+eqU=; b=OCdTR7vSSydQRZlLuoatdiQ8n6gUqK7m65OSGg8Zux6SVruNH0usxqgQFeuS9faC5lUGiI fcdl55m5GhkMtTd+JBDhZdaUblp9sSot9o7NhbPG8WfQSgjXdUpZ5ffsS/twVVLuahX9iP HTrsAWtgJ/9Hi3DmjOLNH4EPQHApVkUquIiwuEjLoAnhtVmHw2QuLXMB7nOzk0kxMDwCq2 agcgeF+l+Xotoh3JBx8MlZbrcEwzS6QcNMhBCq9hxfbP3aBTw22+qb9/htyKAbD6K5cknU +E29BrEju8wxY1QuHWuuktzIXaL7HCywt0FB24bWCBu1FOLHqnT7Ei1x1YvFZQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715180075; a=rsa-sha256; cv=none; b=ntyjLzIQnuKX74A2fo2vTwd3kN9yroxZBGolMgU2PDjWtUqWs5gkR0g5LqzqT9snj+NuVc dkJhFvZIPaHjfWj206cuOOn/qWr13kejWW9OXg9Ssdpr4s7IFahicNr+4C3Pi6W2b+j/aM Gumj+ANZmZs08w+dSdy6oWDsDn7aHE0kkhu6EA9EC4RdMRcYpfMsppqACsDMYJYlZQAYzV aiqUPpsJhNQKUWjCqWJ/BKuAGqg+lIYG7HUMmJU5lphYIML36EVqGvR/0+SkJzZ5ure4ws zzTa+UT/GrzvBB3iG+ILyNfyPbSYYS1ij5O5nwbN+WfgBVvk7yzKI3DHvtctgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715180075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vwZT1fOOWz1H8F93rOaVzhiRuSxNx3eAM4ACrIq+eqU=; b=LsYgMGAJ4uyVDeUFf65dsXUtNO5rxpZx2l/JLBuoUQaDqlgracj3UtEDn6s9oqlDiG+bAk v4UEj/XO5BNhHUIg2IlCHYlM1JgWonD+ZjSNiD4HHz1mc0TSNHnBKsZpnxV3Zu9+lb5X3N w+H37LSvQKvU1o3I0Nwu9Bh8mkD4zaumXZRi8zor7aMY95weA8PQ9kOBgmceMUX835InxQ McOFSu/WLAK2ZYVpYrvpCkzwz1OZRkjkBdBBn5aKOH1DR7QMMNK3evQ1oCOam62pouBBcF MnasTeatfJ6rMoBnP8dPquT7aoT3Ghf/fdY7KZFSIG3PtrBjkxEn7sOAsOylPg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZJ8C0b2bzSk7; Wed, 8 May 2024 14:54: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 448EsYSk065590; Wed, 8 May 2024 14:54:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448EsYNl065587; Wed, 8 May 2024 14:54:34 GMT (envelope-from git) Date: Wed, 8 May 2024 14:54:34 GMT Message-Id: <202405081454.448EsYNl065587@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: eb5fd01b53a6 - main - soxstack: slience 32-bit gcc warning List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: eb5fd01b53a6579f3bd5769ed41964683335a7fc Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=eb5fd01b53a6579f3bd5769ed41964683335a7fc commit eb5fd01b53a6579f3bd5769ed41964683335a7fc Author: Brooks Davis AuthorDate: 2024-05-08 14:51:17 +0000 Commit: Brooks Davis CommitDate: 2024-05-08 14:51:17 +0000 soxstack: slience 32-bit gcc warning Modern GCC complains when casting pointers to integers of a different size (even a larger one). Switch from uint64_t to uintptr_t which will always be the right size for a stack address instead of maybe being too big. Reviewed by: dchagin, emaste Differential Revision: https://reviews.freebsd.org/D45087 --- tests/sys/vm/soxstack/soxstack.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/sys/vm/soxstack/soxstack.c b/tests/sys/vm/soxstack/soxstack.c index ac7c9cf03746..ecb672c1b6dc 100644 --- a/tests/sys/vm/soxstack/soxstack.c +++ b/tests/sys/vm/soxstack/soxstack.c @@ -23,7 +23,7 @@ checkstack(void) struct kinfo_vmentry *freep, *kve; struct kinfo_proc *p; struct procstat *prstat; - uint64_t stack; + uintptr_t stack; int i, cnt; prstat = procstat_open_sysctl(); @@ -33,7 +33,7 @@ checkstack(void) freep = procstat_getvmmap(prstat, p, &cnt); assert(freep != NULL); - stack = (uint64_t)&i; + stack = (uintptr_t)&i; for (i = 0; i < cnt; i++) { kve = &freep[i]; if (stack < kve->kve_start || stack > kve->kve_end) From nobody Wed May 8 14:54:36 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZJ8D2C4fz5JJB1; Wed, 08 May 2024 14:54: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 4VZJ8D1cyGz4flh; Wed, 8 May 2024 14:54:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715180076; h=from:from:reply-to:subject:subject: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/EGuzDwnuQ21cpDpuYp8S2sFxgjqk/LdBLZapRVNGc=; b=iomTozfJ/5yXwp5x6Xh5EALMZcqS7lfeOmOb3tTkZvdaFzLkNmEdj8j8kRuEDeNHcp1BwJ fe0FZWlKYPXVuXyaMPZ5jIQ8vVhdykK3LfVl5Zi0W5TRa9bZipB3wUgGn35jGcDNTrJR2y ggo/eHSSGpk9yGr3ikgrKldxXCzy43I2tk/EfA35gHZW80LJdbQADEbmTQ2uVrC+qqfkMI 53DY9ZFTg6f80GBz8+p8oaGKzRLEKIDEChWZTDNc1u7Malfj6kFqU559vvoDxMIAo9r0Qd BbMDsZooeFV51DOKgVjPLSr3voeQAeUGbZH3VJTTEoaZaENApl4APHntCvASlQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715180076; a=rsa-sha256; cv=none; b=mxkfOHQX+te0iALBDIrZxH/yZOmasgLEyKx71Rtl4/OY3fP4cM2Cq92RWIzLZ/c6154MGa hHtG0FJmDwqS5xMOsAYeT78V2/SO0yKHSW62t5qdZjf/q57UuIBTWCO2GpNsFr4QySPwVX fXZKLoM6Orm7x7RnbI51FJK1R8T3ukdB/1kZdwsJmCL5PY118s57VBmGtkChlyCJbJdEU9 DQk24IuXkXjwffUq661tufq+3FRJGVUll0Adaze9y/DbT21RtGyzSsS0q4qjp7ZOdKT1jo w05X+0SqkZwIvjVb642hxGDeIbg0Q4edFbqGbgdgK5vwtmW3KYoXyEIK0+5ZsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715180076; h=from:from:reply-to:subject:subject: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/EGuzDwnuQ21cpDpuYp8S2sFxgjqk/LdBLZapRVNGc=; b=HSeJP8liseTNhq0q8Sex9693JEuVY6P22UWvxCc5KXUAPbjVWFF1a5uTJOa0wvLxWnXxJE Dxki9ChOs5dFd20v5B0MHPD7Y0JmrWjJsxsURNKmTzeBW3FU+PlwLnTT4eEof/+UowWGNk P829Mhhsqtjqd+4LU6E6xARy+IbtV4GAc+flHpndzFSJ/6+9ueKDN6Nt9oDfi/QoExPdyP Zk/0WfXIGLfaM26w8Pm9DlKoA6pTcu4LzGnP/gUZnTVD9pdEbF6W1DP8CGjnSEjaxkrU5I xULAbbDvqC6EjTXzOnWzLXQREE+t/PLinva7z27dZUiYP7218XWWp6bqfDf5GQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZJ8D1Cx6zV2Y; Wed, 8 May 2024 14:54: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 448EsabM065635; Wed, 8 May 2024 14:54:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448EsaxX065632; Wed, 8 May 2024 14:54:36 GMT (envelope-from git) Date: Wed, 8 May 2024 14:54:36 GMT Message-Id: <202405081454.448EsaxX065632@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 2a32b54a5774 - main - ofed: don't expose symbols twice List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2a32b54a5774b1015ae155a58a363b1f56f8fc0a Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=2a32b54a5774b1015ae155a58a363b1f56f8fc0a commit 2a32b54a5774b1015ae155a58a363b1f56f8fc0a Author: Brooks Davis AuthorDate: 2024-05-08 14:52:00 +0000 Commit: Brooks Davis CommitDate: 2024-05-08 14:52:00 +0000 ofed: don't expose symbols twice ibv_init_wq and ibv_cleanup_wq are made visible with the default_symver which puts them in the IBVERBS_1.1 ABI. Don't try to expose them as IBVERBS_PRIVATE_14 symbols as GNU ld complains with --no-undefined-symbol. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D45090 --- contrib/ofed/libibverbs/libibverbs.map | 2 -- 1 file changed, 2 deletions(-) diff --git a/contrib/ofed/libibverbs/libibverbs.map b/contrib/ofed/libibverbs/libibverbs.map index d94743389f47..52b7f2efd495 100644 --- a/contrib/ofed/libibverbs/libibverbs.map +++ b/contrib/ofed/libibverbs/libibverbs.map @@ -137,6 +137,4 @@ IBVERBS_PRIVATE_14 { verbs_register_driver; verbs_init_cq; verbs_cleanup_cq; - ibv_init_wq; - ibv_cleanup_wq; }; From nobody Wed May 8 16:11:17 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZKrk63D5z5JRJx; Wed, 08 May 2024 16:11: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 4VZKrj6B3yz4pKT; Wed, 8 May 2024 16:11:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715184677; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u/BIZW16mhBCaaLicNA5uXil7K8WzEdjYg8YiXv2MT8=; b=P6cZg35suELzaCNNd0+0kHcPObHEzqqewMtH5bT2NRQJP5cAu8pjLvyu1FuLhEzL7Q5qtW GREnKfa2YXIQ66Grzqas/gTdzofN32wV9eCHp2nh4Gr8JPx4ambjmHjlOAOY957yAQ+Ank YoXiOgS9H4TNDQQCBfI4zzk7UzUEkQK5fid8tfqtvMGA98roqT+REDZR6swDHu03qOIH61 DFpptOFygU2ei24C6w0uxf//Cbu5vbHGUzmUP84/A90/gYC6//LEMi7Vm/2v1FOH2f9mGn /FlK0TwRdzNp6J+QKCcthH37nGGBHFJRQr6817xrc0kBXJ/7cJXZQa6BiOT7bg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715184677; a=rsa-sha256; cv=none; b=nKaDLwUd8FWGAuhlYkMIQKJJm2K9DSm0cH7pRso+zWkPFhdre5kRBAJ+y4AsBD0tT5kfxd h3q5He5/DpYr5JlNFOKa/FY3U96z4F1+uCFWekijHB42VFUTem4gN4YCcP2dXn35icowr7 w1QKOndV7phGD7EfdQdFo25jIPnXh8DvyEhFkEYfO4EANUcopgsGpLP9mueU9NNfIVE8O4 uh4E+Q2YqLkxxeo4SSk/IiXBVfX87x2QDjcVzoCqMKAZvcuBsYaIbUmeEXklPgV4Yg6ycM v/GTgbRhT06E4UoaLqNvayXJvtIuI+mqMhAFYJ53JrTeXqe6jGl7nuR9grFO9A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715184677; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u/BIZW16mhBCaaLicNA5uXil7K8WzEdjYg8YiXv2MT8=; b=JnYqcMN8ICPm3D9ByNAqC35ejhf0QGGAkR9xxcAUcCMjZ9k+jI4amW+cmVez8AJSiUX62k dPdItvn5JlY+IWlaM/oIR2mjC8HgPd2Cbkp3yVGHEBdnqJ13xrMiz897OWJl/9aYpFhlUd AP5eaUIVFQYUwN+Dx+cfo4MuJHWcVGF3XXyYaLK/1M+L+yGTUY3Vem5EbKnjCdt66sETZJ 3hqUduXdiQEQPexOROWi6GY+dTl3e/VupbhDFCweAq9QlDryJ+NnjkSOOFe6spmS+SczPc /0T9sl+tYUAY6TfaQn+iWm9i0kPC/A3GADriCr2ha4YbUnuqGdOEhkMjIn71qg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZKrj5nSLzX9y; Wed, 8 May 2024 16:11: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 448GBHui093803; Wed, 8 May 2024 16:11:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448GBH0J093800; Wed, 8 May 2024 16:11:17 GMT (envelope-from git) Date: Wed, 8 May 2024 16:11:17 GMT Message-Id: <202405081611.448GBH0J093800@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: ffbaa453c191 - main - bsdinstall: Stop loading cryptodev for ZFS installations List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ffbaa453c1914846ede99d9b8499eb9b52b77e9a Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=ffbaa453c1914846ede99d9b8499eb9b52b77e9a commit ffbaa453c1914846ede99d9b8499eb9b52b77e9a Author: Mark Johnston AuthorDate: 2024-05-08 16:01:52 +0000 Commit: Mark Johnston CommitDate: 2024-05-08 16:01:52 +0000 bsdinstall: Stop loading cryptodev for ZFS installations - zfs depends on the crypto module, not cryptodev, and most arm64 kernel configs include std.dev, which includes "device crypto" anyway. - This config works around a problem with kldxref lacking cross-target support, but that has since been fixed. - Loading cryptodev creates /dev/crypto, which gives unprivileged users access to the kernel's opencrypto framework. Very few applications need it, so we're needlessly increasing the kernel's surface area. Thus, stop auto-loading cryptodev. Reviewed by: kevans, allanjude, des Differential Revision: https://reviews.freebsd.org/D45127 --- usr.sbin/bsdinstall/scripts/config | 3 --- 1 file changed, 3 deletions(-) diff --git a/usr.sbin/bsdinstall/scripts/config b/usr.sbin/bsdinstall/scripts/config index 093d38ee0a59..ba39b8bdf305 100755 --- a/usr.sbin/bsdinstall/scripts/config +++ b/usr.sbin/bsdinstall/scripts/config @@ -43,9 +43,6 @@ cp $BSDINSTALL_TMPETC/* $BSDINSTALL_CHROOT/etc cat $BSDINSTALL_TMPBOOT/loader.conf.* >> $BSDINSTALL_TMPBOOT/loader.conf rm $BSDINSTALL_TMPBOOT/loader.conf.* -# The 'cryptodev_load' line is a workaround for arm64, which does not -# automatically load cryptodev.ko with zfs.ko. -df -t zfs $BSDINSTALL_CHROOT > /dev/null && echo "cryptodev_load=\"YES\"" >> $BSDINSTALL_TMPBOOT/loader.conf df -t zfs $BSDINSTALL_CHROOT > /dev/null && echo "zfs_load=\"YES\"" >> $BSDINSTALL_TMPBOOT/loader.conf cp $BSDINSTALL_TMPBOOT/* $BSDINSTALL_CHROOT/boot From nobody Wed May 8 16:11:19 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZKrm6RHsz5JRK1; Wed, 08 May 2024 16:11: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 4VZKrm169zz4pgh; Wed, 8 May 2024 16:11:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715184680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mXbQ4tY93MINS4DyHfnB7z/S3q4hK/P7gpnHtwnT6wo=; b=JPV0kY5GfO7cD08Fdz7ahB4GxZQ1RYb4xqAl6el9KS0yxgXIU2IJow7spvXj8aaVcqxhNc IO/9Tm3kN+XyBv3glhDRlEi2ik7ZK84GVAm8UZx1uNo3mlQohBwdwZR6FiNTTNYj38qrd6 LD21JOQ/wmxUFINtU4jpCPRvj44VpqSGqZH5Vpv0wVEEyrjdQESnHiCjHGWuLYYiGom/bE YMRoRUV9xQPZxndevHrSP1t0JgcYFFTmrnOBhFkk6fiJy2iiu05DbFMc0zzTLybOBesu3E LkHQlkuXp59LHCQsB4YqnjB9BxXQR3V4EGbyg5s+hsgKFpyeH1yWjaDLDl6NRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715184680; a=rsa-sha256; cv=none; b=NUHpJxKsSmaYQn/bqEWiV2GMxAz0DKQnmVrU8DrffIt/mdcOWhQ+K4a2+tIfYnGTQwLfLS lth/ke8bTlbxmv/Am3YitlqRM3HYl4Vzd85morTyUSqSwGR1LxgQIG5yLumbdZPYLCNw4j IIyorzqzY5eBukcR+W7USdplbxRo/93sM4t6S5BdnmfdG0eeP7FE+5ZAqTmwj2iH/OmIBO FfoaA0eynRDp9pxNARvMmTx6WiWU2FG3N+aMaEE4K3DOWR7KyesTaj/0XkE8i+APh6VEMs QHYwisCOse0xJ2ruq7EEh19h7jFXcBUFbjl8D1lE+5sE1U4DK4WcnQZYGmeASg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715184680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mXbQ4tY93MINS4DyHfnB7z/S3q4hK/P7gpnHtwnT6wo=; b=Jjl+muFeWci1vOK3dREpixdQ0kZ16Nw9fWSBhDmbHX54v9yTVUVbSV39foLrNZUqcoJ3Zk MfE10zWbHyxvYOpAUdVPmY9jTQRoT3fq9Yrg9cwftXSSQBnmO0lzpPfwU3mIC4LFfeR+F0 7eUYfKUcnFes1jgZlfkAfAHVp86SwLL5ZZcZ+Rq+sP1eYO+7uuykofzOPZv/Xu1TxoJDTe pK4sj8HsEt/sPCWycTKnVckM61txNt9IbbsH0PVtyL6hJy3s8whU9uwBogam/jw+J51bgC vUZ6Nylp4bzDcnVt+84NZoWDjIhIPZZmigIlNOjXlgX8aTUe5MQA34B3z5ffhg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZKrm0jhpzXVC; Wed, 8 May 2024 16:11: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 448GBJwg093899; Wed, 8 May 2024 16:11:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448GBJfO093896; Wed, 8 May 2024 16:11:19 GMT (envelope-from git) Date: Wed, 8 May 2024 16:11:19 GMT Message-Id: <202405081611.448GBJfO093896@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 5d62025d82a0 - main - bhyve: Do not define GDB_LOG List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5d62025d82a0be928f98778d54b25ad89edbb835 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=5d62025d82a0be928f98778d54b25ad89edbb835 commit 5d62025d82a0be928f98778d54b25ad89edbb835 Author: Mark Johnston AuthorDate: 2024-05-08 16:06:22 +0000 Commit: Mark Johnston CommitDate: 2024-05-08 16:11:09 +0000 bhyve: Do not define GDB_LOG This had been added for debugging and shouldn't have been committed. Fixes: f81cdf24ba54 ("bhyve: Add support for XML register definitions") MFC after: 3 days --- usr.sbin/bhyve/gdb.c | 1 - 1 file changed, 1 deletion(-) diff --git a/usr.sbin/bhyve/gdb.c b/usr.sbin/bhyve/gdb.c index fbd62413e2c2..479ad407dbef 100644 --- a/usr.sbin/bhyve/gdb.c +++ b/usr.sbin/bhyve/gdb.c @@ -192,7 +192,6 @@ static const struct gdb_reg { { .id = VM_REG_GUEST_EFER, .size = 8 }, }; -#define GDB_LOG #ifdef GDB_LOG #include #include From nobody Wed May 8 16:11:18 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZKrl5Fztz5JRMZ; Wed, 08 May 2024 16:11: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 4VZKrl067fz4p2y; Wed, 8 May 2024 16:11:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715184679; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ceIFne8FXdZCEQ5a80vTsrZBTlV63AoCpFxHuG/YlDs=; b=QqYsc8fPYwBygn+RQBWkGwEB5LGgOdh9cFC7ZNal0BFXV4J+s9PuTvsjGqy1FvIdFxvoDw SseZ9QllH2TDvzsCSEM2vlaVCliftThkdVcSRnc6Llgd9DiVznojnjrlXim24XwqSvdGo6 scu8dNMQeVmeuXuFNhKgAtpufF1LGnbUBO59wYvfuq+Tr+pNZaRqNapPKC0KZP8PCNgxTm fWliWnn663nQzgIvMo1yo8GE4RLefR8eFWrBvkRQr+OsM+TOZ6MQk4A1dH4icYVB8g04mD TT3lEGYcCZIQDyALYF/qAiYTazciPNMiH4yF0hUz4xmP0s2uAQRmeHO//cGQzw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715184679; a=rsa-sha256; cv=none; b=xGmpX+tJjf3lqVLRe6QnjkESSC8IVNyxur4ZHgcdcSXvp0BOSjnbTu7d8dnbK3PsaS6fuO Fc2wMcA79kVaSg5tbSrACYvSXYEhrEN7i6t1SdFDT5aXi3aP7PvLJBCmJDkm3yDqvxHX2I aHGMKKDDg2U+5fOCL0ZcmzfiELmy3s1SRdpVY6D5MeQW52AiZHTmKUwSjRZys51lEUt6KI 4vrgOnQgcDfZhhEbjbH3LzvzQ/urQDwXgTvgMupIeQsYRDsCf2TJW8lrWbvMViqA84S42L 15toAoXrm8Wy+NzXyR7X8d08mWN82YzuOefBSKDo07BDWWE0VckT9XCdK4sWhA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715184679; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ceIFne8FXdZCEQ5a80vTsrZBTlV63AoCpFxHuG/YlDs=; b=oT0Mkz0tnryUUdsQskJZPfoQrddcy3on6wv3rNFA0Tq2gIasr5GR+B1+S6IcRD3w+d2gcE WTFq7HpLGXyXbAAWZj5q0H7WPr6qPF7WvyxFEQIKEwLHcsviEJfhcFejRat8XJdIV9zJCw AkekIWwhKicrGmbuRZkT4gVW3EOBqwoZW9dQy/JHdA7MtDZDNsissIDR49vCccav+lcrUt HHVBUxUlRMz6CAIQ28VkBlOGP1lE7SeefGaaLxLKHFOkMT7B9/GvfKM3Ejb011/ajZbKXv iohAwUB2Pw1j2kvh7WRbLyJ316uM/7PDAOr/DKRZ7Tr5HX2e5LJls8JZ1i+o0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZKrk6pr4zXGr; Wed, 8 May 2024 16:11: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 448GBIok093857; Wed, 8 May 2024 16:11:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448GBIaT093854; Wed, 8 May 2024 16:11:18 GMT (envelope-from git) Date: Wed, 8 May 2024 16:11:18 GMT Message-Id: <202405081611.448GBIaT093854@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: e3333648b75d - main - vmm: Start reconciling amd64 and arm64 copies of vmm_dev.c List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e3333648b75dc9703e54129dff56ae5b4d6f91c5 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e3333648b75dc9703e54129dff56ae5b4d6f91c5 commit e3333648b75dc9703e54129dff56ae5b4d6f91c5 Author: Mark Johnston AuthorDate: 2024-05-08 16:02:38 +0000 Commit: Mark Johnston CommitDate: 2024-05-08 16:11:03 +0000 vmm: Start reconciling amd64 and arm64 copies of vmm_dev.c Most of the code in vmm_dev.c and vmm.c can and should be shared between amd64 and arm64 (and eventually riscv) rather than being duplicated. To the end of adding a shared implementation in sys/dev/vmm, this patch eliminates most of the differences between the two copies of vmm_dev.c. - Remove an unneeded cdefs.h include. - Simplify the amd64 implementation of vcpu_unlock_one(). - Simplify the arm64 implementation of vcpu_lock_one(). - Pass buffer sizes to alloc_memseg() and get_memseg() on arm64. On amd64 this is needed for compat ioctls, but these functions should be merged. - Make devmem_mmap_single() stricter on arm64. Reviewed by: corvink, jhb Differential Revision: https://reviews.freebsd.org/D44995 --- sys/amd64/vmm/vmm_dev.c | 15 +++++++-------- sys/arm64/vmm/vmm_dev.c | 29 +++++++++++++++-------------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/sys/amd64/vmm/vmm_dev.c b/sys/amd64/vmm/vmm_dev.c index 5214cd3f1447..46cddce4e4b8 100644 --- a/sys/amd64/vmm/vmm_dev.c +++ b/sys/amd64/vmm/vmm_dev.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "opt_bhyve_snapshot.h" #include @@ -163,14 +162,14 @@ vcpu_lock_one(struct vcpu *vcpu) } static void -vcpu_unlock_one(struct vmmdev_softc *sc, int vcpuid, struct vcpu *vcpu) +vcpu_unlock_one(struct vcpu *vcpu) { enum vcpu_state state; state = vcpu_get_state(vcpu, NULL); if (state != VCPU_FROZEN) { - panic("vcpu %s(%d) has invalid state %d", vm_name(sc->vm), - vcpuid, state); + panic("vcpu %s(%d) has invalid state %d", + vm_name(vcpu_vm(vcpu)), vcpu_vcpuid(vcpu), state); } vcpu_set_state(vcpu, VCPU_IDLE, false); @@ -200,7 +199,7 @@ vcpu_lock_all(struct vmmdev_softc *sc) vcpu = vm_vcpu(sc->vm, j); if (vcpu == NULL) continue; - vcpu_unlock_one(sc, j, vcpu); + vcpu_unlock_one(vcpu); } vm_unlock_vcpus(sc->vm); } @@ -219,7 +218,7 @@ vcpu_unlock_all(struct vmmdev_softc *sc) vcpu = vm_vcpu(sc->vm, i); if (vcpu == NULL) continue; - vcpu_unlock_one(sc, i, vcpu); + vcpu_unlock_one(vcpu); } vm_unlock_vcpus(sc->vm); } @@ -1086,7 +1085,7 @@ vmmdev_ioctl(struct cdev *cdev, u_long cmd, caddr_t data, int fflag, done: if (vcpus_locked == SINGLE) - vcpu_unlock_one(sc, vcpuid, vcpu); + vcpu_unlock_one(vcpu); else if (vcpus_locked == ALL) vcpu_unlock_all(sc); if (memsegs_locked) @@ -1231,7 +1230,7 @@ sysctl_vmm_destroy(SYSCTL_HANDLER_ARGS) * is scheduled for destruction. */ cdev = sc->cdev; - sc->cdev = NULL; + sc->cdev = NULL; mtx_unlock(&vmmdev_mtx); /* diff --git a/sys/arm64/vmm/vmm_dev.c b/sys/arm64/vmm/vmm_dev.c index 9f405384f2b3..946c6760f7c1 100644 --- a/sys/arm64/vmm/vmm_dev.c +++ b/sys/arm64/vmm/vmm_dev.c @@ -102,10 +102,7 @@ vmm_priv_check(struct ucred *ucred) static int vcpu_lock_one(struct vcpu *vcpu) { - int error; - - error = vcpu_set_state(vcpu, VCPU_FROZEN, true); - return (error); + return (vcpu_set_state(vcpu, VCPU_FROZEN, true)); } static void @@ -252,8 +249,10 @@ vmmdev_rw(struct cdev *cdev, struct uio *uio, int flags) return (error); } +CTASSERT(sizeof(((struct vm_memseg *)0)->name) >= VM_MAX_SUFFIXLEN + 1); + static int -get_memseg(struct vmmdev_softc *sc, struct vm_memseg *mseg) +get_memseg(struct vmmdev_softc *sc, struct vm_memseg *mseg, size_t len) { struct devmem_softc *dsc; int error; @@ -270,17 +269,16 @@ get_memseg(struct vmmdev_softc *sc, struct vm_memseg *mseg) } KASSERT(dsc != NULL, ("%s: devmem segment %d not found", __func__, mseg->segid)); - error = copystr(dsc->name, mseg->name, sizeof(mseg->name), - NULL); + error = copystr(dsc->name, mseg->name, len, NULL); } else { - bzero(mseg->name, sizeof(mseg->name)); + bzero(mseg->name, len); } return (error); } static int -alloc_memseg(struct vmmdev_softc *sc, struct vm_memseg *mseg) +alloc_memseg(struct vmmdev_softc *sc, struct vm_memseg *mseg, size_t len) { char *name; int error; @@ -296,8 +294,8 @@ alloc_memseg(struct vmmdev_softc *sc, struct vm_memseg *mseg) */ if (VM_MEMSEG_NAME(mseg)) { sysmem = false; - name = malloc(sizeof(mseg->name), M_VMMDEV, M_WAITOK); - error = copystr(mseg->name, name, sizeof(mseg->name), NULL); + name = malloc(len, M_VMMDEV, M_WAITOK); + error = copystr(mseg->name, name, len, NULL); if (error) goto done; } @@ -545,10 +543,12 @@ vmmdev_ioctl(struct cdev *cdev, u_long cmd, caddr_t data, int fflag, error = vm_munmap_memseg(sc->vm, mu->gpa, mu->len); break; case VM_ALLOC_MEMSEG: - error = alloc_memseg(sc, (struct vm_memseg *)data); + error = alloc_memseg(sc, (struct vm_memseg *)data, + sizeof(((struct vm_memseg *)0)->name)); break; case VM_GET_MEMSEG: - error = get_memseg(sc, (struct vm_memseg *)data); + error = get_memseg(sc, (struct vm_memseg *)data, + sizeof(((struct vm_memseg *)0)->name)); break; case VM_GET_REGISTER: vmreg = (struct vm_register *)data; @@ -994,7 +994,8 @@ devmem_mmap_single(struct cdev *cdev, vm_ooffset_t *offset, vm_size_t len, if (seglen >= last) vm_object_reference(*objp); else - error = 0; + error = EINVAL; + vm_unlock_memsegs(dsc->sc->vm); return (error); } From nobody Wed May 8 18:19:48 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZNj053HHz5JgQB; Wed, 08 May 2024 18:19: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 4VZNj04WJJz45pr; Wed, 8 May 2024 18:19:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715192388; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kvq4aVIi7Y/VTNVxeTfYKl8/nrW9gSqKlgKo+GTT+BU=; b=d3ngJ4HxODVppNnPrbQK86/VqIFdNt1bQ1itZVYVrwI6qQBcwvaxzJ3c9/0gFA4wA/hvJn DmodRnNyVkjHjSKVGlk3P6r/9nn01TWK00xTr3ameFiqUqP6g8zQJiqnrdQjkxNx4fQXbW C1sgeA7GmNoKtDhFJ6VKXmzGFBnmk77LtYUhmeNcfLXDXb/iJb3/jeiDCTBB4vADDixLDI RpuHijBwcrW179PXdXt9uK9jRFi2YoiqQumXcLaN/yqBqbKtJ23ocf+5e/ovrNvcJOrdOy Ka+LJEkeD/J2mkDrBX80oXD5JbcetmGIQWH3aCiC7ol43EMaH1NwhtiXSYQtlw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715192388; a=rsa-sha256; cv=none; b=rb7VEnRYqXWvPA65rhzBmPV+kYbn5QiZskYtKV4kfKd4j+fhOebgfRwXmUwvLDzEYyHH/1 SR9i/Z+QYelfIEdw/zVMryX98l3LFtSQt83FWekU022qT4zI5oozkJ4MUb6cEtafv3oH7v t2ZmA01EvNdGVw6Fg+LhNppVW6ntEy5UuytSldRN5J4LP2cW9gVLJ5/R7OYbyxJhHpCkK+ B0qGXKJWLw0mR0zHutvjYPvLfTppejZJ8Jh/xaX8Y1NcNuhEm2KsZ3EeWg8b3aIhH1Vp9O WlqKaQo2nZYw2xPeWHKstUi+JiHMH8mgYv6rTTsB+UPcnfAwM9ixLp9Qh4BXlw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715192388; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kvq4aVIi7Y/VTNVxeTfYKl8/nrW9gSqKlgKo+GTT+BU=; b=Rr8xpAen8mtHVeR6peKLq5kkPQ4e+OzaY6U16fglMrutn2WYQu6P6vNjmSvIsrIfg0PPXT isTl+j5jRBLSzL5/jiLDGGfk4rOmrfDOVi8F4yS9gg/JRYVKkZ/o/vRCsybj7zPOjhOH3X P7Cx1eCPuqqRd7FpHqWoFLsW/CHXf1ptGPZabc+aoCeLum4DJDnZGwR4UCFbDCWCTq+rPC eXgQVfHeNyfuGQZ/CgXU8HuNjncBlbB1ynPG4VgVedDSI0VQYZwwmjN34S9JRRc744pCyY ZgQvSqoKMoE5GGFontxH7b5lt4e7wr5yiMDSKrD6uRoVB13Dwh4h5WvE5c+gmw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZNj03jv0zbpg; Wed, 8 May 2024 18:19: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 448IJmC6004306; Wed, 8 May 2024 18:19:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448IJmqb004303; Wed, 8 May 2024 18:19:48 GMT (envelope-from git) Date: Wed, 8 May 2024 18:19:48 GMT Message-Id: <202405081819.448IJmqb004303@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 7ef6ce51742d - main - smsc(4): update to mention Microchip List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7ef6ce51742d44a7375ccbaeda4cc64e034c4816 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=7ef6ce51742d44a7375ccbaeda4cc64e034c4816 commit 7ef6ce51742d44a7375ccbaeda4cc64e034c4816 Author: Ed Maste AuthorDate: 2024-05-07 15:33:45 +0000 Commit: Ed Maste CommitDate: 2024-05-08 18:18:46 +0000 smsc(4): update to mention Microchip Microchip Technology acquired SMSC in 2012, and all current products and datasheets refer to the devices supported by this driver as Microchip parts. Mention SMSC in a parenthetical comment to explain the driver's name. Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45115 --- share/man/man4/smsc.4 | 12 ++++++------ sys/dev/usb/net/if_smsc.c | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/share/man/man4/smsc.4 b/share/man/man4/smsc.4 index 56c1556e5f83..61b12c7d230c 100644 --- a/share/man/man4/smsc.4 +++ b/share/man/man4/smsc.4 @@ -25,12 +25,12 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd November 24, 2015 +.Dd May 7, 2024 .Dt SMSC 4 .Os .Sh NAME .Nm smsc -.Nd "USB SMSC LAN9xxx Fast Ethernet driver" +.Nd "USB Microchip LAN9xxx Fast Ethernet driver" .Sh SYNOPSIS To load the driver as a module at boot time, place the following line in @@ -53,7 +53,7 @@ following lines in your kernel configuration file: The .Nm device driver provides support for USB Fast Ethernet adapters based -on the SMSC LAN9xxx chipsets. +on the Microchip (formerly SMSC) LAN9xxx chipsets. .Pp For more information on configuring this device, see .Xr ifconfig 8 . @@ -64,11 +64,11 @@ driver: .Pp .Bl -bullet -compact .It -SMSC LAN9500, LAN9500A, LAN9505 and LAN9505A based Ethernet adapters +LAN9500, LAN9500A, LAN9505 and LAN9505A based Ethernet adapters .It -SMSC LAN89530, LAN9530 and LAN9730 based Ethernet adapters +LAN89530, LAN9530 and LAN9730 based Ethernet adapters .It -SMSC LAN951x Ethernet adapters with integrated USB hub +LAN951x Ethernet adapters with integrated USB hub .El .Sh SEE ALSO .Xr arp 4 , diff --git a/sys/dev/usb/net/if_smsc.c b/sys/dev/usb/net/if_smsc.c index a59501b6bbff..58809de4ad3a 100644 --- a/sys/dev/usb/net/if_smsc.c +++ b/sys/dev/usb/net/if_smsc.c @@ -28,7 +28,7 @@ #include /* - * SMSC LAN9xxx devices (http://www.smsc.com/) + * Microchip LAN9xxx devices (https://www.microchip.com/en-us/product/lan9500a) * * The LAN9500 & LAN9500A devices are stand-alone USB to Ethernet chips that * support USB 2.0 and 10/100 Mbps Ethernet. @@ -38,7 +38,7 @@ * supports the hub part. * * This driver is closely modelled on the Linux driver written and copyrighted - * by SMSC. + * by SMSC (later acquired by Microchip). * * * From nobody Wed May 8 18:47:33 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZPK20c2jz5JyZV; Wed, 08 May 2024 18:47: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 4VZPK20BVDz47LM; Wed, 8 May 2024 18:47:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715194054; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GCMnN2pb3Hdxbl5OhrrOdCtu1EPZWYJX+5X3FZIII/8=; b=YwV8wVTla4xwRdRIfD+Z6Q06La9UtRfV8Q7Go5IfL1dayh9tj8OG0Z4uvlWDnbUWo4IQU0 FQ7AZ2DpPn4L1a/DcjOYutMssmiJlm497Ce+8jAY14or4Ve/Crf3cr4RXajrdiOewWslP9 0YfKzLvXh0e7nEFq8gW3/DTiKI+Sunye3dtVJyOvEuNIR76Hom0wB55yF00F1Jt6HZco5K sgJwaEkYl8C9c0ntOiOh9GW8LrEEYM9/uIShYpusj9MZf4f73N2TqEcOHkp/XKXOHLdMIH nO4yX0tBbO+uYtChuAj8rXs3MPawq5Ml4u71Ex0Z/Ws6i3kQJ/ZPB/g8TvqdEg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715194054; a=rsa-sha256; cv=none; b=VPh9pEFolcq7UMcQGCSWV9CJKk/fLwi8Zj7dujspPe04KiQluk7E8c8oiHR+SARQhDCOlB 1BdpMcFJrUCLi86UA1wHZE6SfPg3Dkn5nQVEd4zIzvkf4P+3bvkOgDiY2i0+/EMiZNoi8e wILA7Jy6C1JOsPgN7eNwOuooXOHUp2DoIpZN9UyXX/iN6XOWQWJCIvcPJc4G+OzQ/Agzzi 5TYnhGt1lxLKvYhSuXvDc+DuopsKRb49EBH90JykiXU59Vb3b11pR02S7mq7ksmAZlEvsT EwUMnXO5aOgabE3sX/gVKOqhTFbCoJNDJ2OMNlfeTnB1BaM4NHMSzKJfQSoX+w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715194054; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GCMnN2pb3Hdxbl5OhrrOdCtu1EPZWYJX+5X3FZIII/8=; b=yDDRZFBwNUetAnOSnv1tkEBiNpwMhXAGt0ZcTBs7A1MVzjnipD7MFq0hP6twgaBjPfqHjF ekpdakpqaZ6pHi6gyfHnqUAuvS+qw/IHS8+KBxOuy+LYx8JjjMbLMrpppAUw6BZuVAAweR cQs5kOoh4eIF+XRmLr8XS2Ho1cS2WxTRc4ElvWkkMCmlxwxa3MklmprLfRPF4dIXp+v1RC rUdHSktuAXwBLhzZcj4KwjIiDjcbYf9LZPdn1Mbpt2gEpqmwg0hJn0pyGEmHXHNlJmTE30 wlXmCSFLvTyhx7wZXSR2cwVD6ojHLzbLaPaMTbNAubdIykSoPqge2pxXQ68tqg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZPK16TB7zcQR; Wed, 8 May 2024 18:47: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 448IlX4p054189; Wed, 8 May 2024 18:47:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448IlX8T054186; Wed, 8 May 2024 18:47:33 GMT (envelope-from git) Date: Wed, 8 May 2024 18:47:33 GMT Message-Id: <202405081847.448IlX8T054186@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dimitry Andric Subject: git: da15ed2e9821 - main - Merge commit 5300a6731e98 from llvm-project (by Jonathan Peyton): List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: da15ed2e982180198f77a0fa26628e6d414cb10e Auto-Submitted: auto-generated The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=da15ed2e982180198f77a0fa26628e6d414cb10e commit da15ed2e982180198f77a0fa26628e6d414cb10e Author: Dimitry Andric AuthorDate: 2024-05-08 16:55:08 +0000 Commit: Dimitry Andric CommitDate: 2024-05-08 18:45:44 +0000 Merge commit 5300a6731e98 from llvm-project (by Jonathan Peyton): [OpenMP] Fix re-locking hang found in issue 86684 (#88539) This was initially reported here (including stacktraces): https://stackoverflow.com/questions/78183545/does-compiling-imagick-with-openmp-enabled-in-freebsd-13-2-cause-sched-yield If `__kmp_register_library_startup()` detects that another instance of the library is present, `__kmp_is_address_mapped()` is eventually called. which uses `kmpc_alloc()` to allocate memory. This function calls `__kmp_entry_thread()` to access the thread-local memory pool, which is a bad idea during initialization. This macro internally calls `__kmp_get_global_thread_id_reg()` which sets the bootstrap lock at the beginning (before calling `__kmp_register_library_startup()`). The fix is to use `KMP_INTERNAL_MALLOC()`/`KMP_INTERNAL_FREE()` instead of `kmpc_malloc()`/`kmpc_free()`. `KMP_INTERNAL_MALLOC` and `KMP_INTERNAL_FREE` do not use any bootstrap locks. They just translate to `malloc()`/`free()` and are meant to be used during library initialization before other library-specific allocators have been initialized. Fixes: #86684 This should fix OpenMP processes sometimes getting locked with 100% CPU usage, endlessly calling sched_yield(2). PR: 278845 Reported by: Cassidy B. Larson MFC after: 3 days --- contrib/llvm-project/openmp/runtime/src/z_Linux_util.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contrib/llvm-project/openmp/runtime/src/z_Linux_util.cpp b/contrib/llvm-project/openmp/runtime/src/z_Linux_util.cpp index b9ff96873702..97ddb8a608b7 100644 --- a/contrib/llvm-project/openmp/runtime/src/z_Linux_util.cpp +++ b/contrib/llvm-project/openmp/runtime/src/z_Linux_util.cpp @@ -2129,10 +2129,10 @@ int __kmp_is_address_mapped(void *addr) { // We pass from number of vm entry's semantic // to size of whole entry map list. lstsz = lstsz * 4 / 3; - buf = reinterpret_cast(kmpc_malloc(lstsz)); + buf = reinterpret_cast(KMP_INTERNAL_MALLOC(lstsz)); rc = sysctl(mib, 4, buf, &lstsz, NULL, 0); if (rc < 0) { - kmpc_free(buf); + KMP_INTERNAL_FREE(buf); return 0; } @@ -2156,7 +2156,7 @@ int __kmp_is_address_mapped(void *addr) { } lw += cursz; } - kmpc_free(buf); + KMP_INTERNAL_FREE(buf); #elif KMP_OS_DARWIN From nobody Wed May 8 18:47:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZPK312Wjz5JyPt; Wed, 08 May 2024 18:47: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 4VZPK30WCFz47cC; Wed, 8 May 2024 18:47:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715194055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hVMsEoEhpHbreiuzW9zivgE5e9PLYnluQP4eVjNRtLQ=; b=JwcrR3AdCIzMYFHJuiZZoJlYd200HvNraJc2sGBYrbhhcDwbeCRUUwZ9oFzVc3R1lu+WWo 42Y473mkSH05RCCGGUiZbPjgGdI9g+9+9Aj5KbMTxecYaot4Nqka5LJVsVbwa8RExK/gHc rEPc8tno062jhrUXimuFT0gOr5QFfZx29T51gYVOmzFodQjWmhgD2LUfPl9skWVP5pDvly d4GP0T6jEg+cuLNyntAGQ8zmZni0EGzp+qTiEgIhmyLMf78okAlvFvp7nmvrCGwqtFCqRH f5x2myHYP43fguqVhXAiXEk5ZNekQOGlz9urAszkfLyKRq+MvJtbtMUqBJ94CQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715194055; a=rsa-sha256; cv=none; b=COsYWNMnphAkZ4BKfQm67VCoFWwWoc73oHtVGiSsC/CmmgmkCyu3cGdsE+Dh+j4OCz4N5g 0WqeWxXXDhsfg0IExKpAaeIzR00XzYhT9+gMnlTioY+MzmHU6Q6hADOw2JeiLT35fUtqqi wP1no0KN6kL8PKAeCjpFYcmy8npUVd4Ur5/Nk0OLsVcd5uw14ngkl/Oo2Re+CA4CaZf/iQ x+6udb1eAOqLxpcim8y5B9NPPthJogMxp9iCQKEybk3wbRbB5c2P1iGOC2gBCsGbJ56x8l pPDrzD18AymtHZSdT6Cc7V1MPErDFX2JeoNsATa/LJx2DEeNYzOcNf5MVNizhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715194055; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hVMsEoEhpHbreiuzW9zivgE5e9PLYnluQP4eVjNRtLQ=; b=mg+CV6P7/AqimdC9sKnv/d7Xw6J1I019EJCaCwumFo3iGC6KvIn+huI90+R8DroQxo1PkW uBvMQXxsdeS/IBAV57yXnZ8a5KTsm5+//YlnD9UI2kswjmVBM1fUaJ44E2bZ2c4MLjZaRw f8rZeybxhDO9OhTSjTntGxFCbSI4b9RSgJJXUjuR3j5abfdlg4L9R/6RQf8tOYoSxXzAQA rn3aynuEIIShsqm8mSH+jU6yx3eqqSp3bz7ptRyUHTwnFPfdJ4UtTIERkgodiHgja68D+A sR/1aS7ATPfD46cW5V2ef+mDLVBLIR6im5x/Ykm3EG6f49feb7j5UAtrcu/sQA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZPK306Mfzcf5; Wed, 8 May 2024 18:47: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 448IlYKr054240; Wed, 8 May 2024 18:47:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448IlYuY054237; Wed, 8 May 2024 18:47:34 GMT (envelope-from git) Date: Wed, 8 May 2024 18:47:34 GMT Message-Id: <202405081847.448IlYuY054237@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dimitry Andric Subject: git: 22b3e7898ecd - main - Merge commit 73bb8d9d92f6 from llvm-project (by Jonathan Peyton): List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 22b3e7898ecdf90887a9536fab5b9a6f7a291723 Auto-Submitted: auto-generated The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=22b3e7898ecdf90887a9536fab5b9a6f7a291723 commit 22b3e7898ecdf90887a9536fab5b9a6f7a291723 Author: Dimitry Andric AuthorDate: 2024-05-08 18:44:28 +0000 Commit: Dimitry Andric CommitDate: 2024-05-08 18:45:45 +0000 Merge commit 73bb8d9d92f6 from llvm-project (by Jonathan Peyton): [OpenMP] Fix child processes to use affinity_none (#91391) When a child process is forked with OpenMP already initialized, the child process resets its affinity mask and sets proc-bind-var to false so that the entire original affinity mask is used. This patch corrects an issue with the affinity initialization code setting affinity to compact instead of none for this special case of forked children. The test trying to catch this only testing explicit setting of KMP_AFFINITY=none. Add test run for no KMP_AFFINITY setting. Fixes: #91098 This should fix OpenMP processes sometimes getting stuck on a single CPU core. PR: 278845 Reported by: Cassidy B. Larson MFC after: 3 days --- contrib/llvm-project/openmp/runtime/src/kmp_settings.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/contrib/llvm-project/openmp/runtime/src/kmp_settings.cpp b/contrib/llvm-project/openmp/runtime/src/kmp_settings.cpp index ec86ee07472c..58f19ea5b8ab 100644 --- a/contrib/llvm-project/openmp/runtime/src/kmp_settings.cpp +++ b/contrib/llvm-project/openmp/runtime/src/kmp_settings.cpp @@ -6426,6 +6426,8 @@ void __kmp_env_initialize(char const *string) { } if ((__kmp_nested_proc_bind.bind_types[0] != proc_bind_intel) && (__kmp_nested_proc_bind.bind_types[0] != proc_bind_default)) { + if (__kmp_nested_proc_bind.bind_types[0] == proc_bind_false) + __kmp_affinity.type = affinity_none; if (__kmp_affinity.type == affinity_default) { __kmp_affinity.type = affinity_compact; __kmp_affinity.flags.dups = FALSE; From nobody Wed May 8 18:52:44 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZPR05VYkz5JypF; Wed, 08 May 2024 18:52: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 4VZPR04w7xz49CN; Wed, 8 May 2024 18:52:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715194364; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zTqDyl5HUJafC0UO0pom/nfPVB9H5JOjCsnfjNzZHWo=; b=Gou3nqAR2yeH/8or8vnJTOSkG4ZHWp+llKvaif/kZ53YTBdYBTqCuLJeHGtq5h9Fz+BKlH jyEeA90690LVUt/KEQn8eM/tEh3SROnQgiLdVQAEc/qYapy+quicYtlh3d8WzGxN4t4Pex yz2A3mL+EjIKTFCK6NjseihXfWf+KU27cTdY3s9cdAw8B0iBuZ53AXQ6Kju4y6oU/HISlo Y41a7s/Zo++tJYIVMG/+R9nzsLUNiYTM70W/TlMIHqFg2Llkm0Wr7sAIdgND2UN2edKj6C j+EXIfVdft24HU0l94SHmE3gUo11pljma3cPA3ftXk7bWRx0wzq3J7g87xgZcg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715194364; a=rsa-sha256; cv=none; b=u6GnEqpwfs9Sjrt8WmD0imEs1kHUnj7oy/ah7rGEwnDL5t0aHabRDvoGKGewroAGx4PtNG /9/2/0lLIs0pbgtaD1wB0/qxWe//I+uaW9b1Jwr4JC+bwmq9Aw4z8woUcJiJvWgXn9BP4y Da0aPxp3p3YZHlsOoAeKOU8kkl7tPE5/+QRCPTAGm1iV1AIYZlXMT3bD2Ox9TfqIOpqorf S4BAbHk97g+3pTeXRpM5UVC0qIVtl0UlJJcyebbWRgNPZCNNTKFhExOIuuLlyMtMH3bxbO uZhd7p7xx0sYdDrSVDCvso0N32XdEWCUWNtieQwQvJs80zQlGUsan1b5mHnLVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715194364; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zTqDyl5HUJafC0UO0pom/nfPVB9H5JOjCsnfjNzZHWo=; b=EtP/fHMBHADEVrN6GJehP2tSCmXYnAnw3hLLNhpbAjP5U3KNL41PruVodbH/tchK37pBrq EBw/MXU1lSxxCnQlOZUuS1+WDLroOYGWZO/XAwING33+5bi+JXA/CSFl8qSbudZLc3Cx1+ Y4EPGG3q1ojAULo9fnhSe3A8lNhqvDHFTbPbhgUrmfDTVAJCDIEnR+EICh27B2mY1git2h pxIrPqTq4igq+EU2EiUf7h8fbV7aLXsc1kDiYIVsbhSVqE6cvc84mFxqVtrmSdu63Pc4FM K5jWn9uIR5zqKqdug67YHUr5+2NoANAocQSY2nZrKVwRHAKJjGu8ccD+cgEcOw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZPR04WMszcP5; Wed, 8 May 2024 18:52: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 448Iqiu4070548; Wed, 8 May 2024 18:52:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448Iqi18070545; Wed, 8 May 2024 18:52:44 GMT (envelope-from git) Date: Wed, 8 May 2024 18:52:44 GMT Message-Id: <202405081852.448Iqi18070545@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Tijl Coosemans Subject: git: 2ae0f5a4d093 - main - linuxkpi: Make arch_io_*_memtype_wc amd64-only List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tijl X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2ae0f5a4d0931067c672be9a791909f0e32d5a0e Auto-Submitted: auto-generated The branch main has been updated by tijl: URL: https://cgit.FreeBSD.org/src/commit/?id=2ae0f5a4d0931067c672be9a791909f0e32d5a0e commit 2ae0f5a4d0931067c672be9a791909f0e32d5a0e Author: Tijl Coosemans AuthorDate: 2024-05-08 18:49:56 +0000 Commit: Tijl Coosemans CommitDate: 2024-05-08 18:52:37 +0000 linuxkpi: Make arch_io_*_memtype_wc amd64-only Linux only implements these functions on x86. They return 0 on other architectures. The FreeBSD implementation calls PHYS_TO_DMAP but this panics on i386 because it does not have a direct map so return 0 on i386 as well for now. These functions are only used by graphics/drm-*-kmod to mark the VRAM aperture write-combining but this is also accomplished by a call to vm_phys_fictitious_reg_range so this change is sufficient to fix drm-*-kmod on i386 for FreeBSD 14.1. Reviewed by: kib MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D45125 --- sys/compat/linuxkpi/common/include/linux/io.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/io.h b/sys/compat/linuxkpi/common/include/linux/io.h index bce70ed0cb8d..164347dbc4e7 100644 --- a/sys/compat/linuxkpi/common/include/linux/io.h +++ b/sys/compat/linuxkpi/common/include/linux/io.h @@ -541,30 +541,29 @@ void lkpi_arch_phys_wc_del(int); #define arch_phys_wc_index(x) \ (((x) < __MTRR_ID_BASE) ? -1 : ((x) - __MTRR_ID_BASE)) -#if defined(__amd64__) || defined(__i386__) || defined(__aarch64__) || defined(__powerpc__) || defined(__riscv) static inline int arch_io_reserve_memtype_wc(resource_size_t start, resource_size_t size) { +#if defined(__amd64__) vm_offset_t va; va = PHYS_TO_DMAP(start); - -#ifdef VM_MEMATTR_WRITE_COMBINING return (-pmap_change_attr(va, size, VM_MEMATTR_WRITE_COMBINING)); #else - return (-pmap_change_attr(va, size, VM_MEMATTR_UNCACHEABLE)); + return (0); #endif } static inline void arch_io_free_memtype_wc(resource_size_t start, resource_size_t size) { +#if defined(__amd64__) vm_offset_t va; va = PHYS_TO_DMAP(start); pmap_change_attr(va, size, VM_MEMATTR_WRITE_BACK); -} #endif +} #endif /* _LINUXKPI_LINUX_IO_H_ */ From nobody Wed May 8 23:05:54 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZW363BQFz5KPpg; Wed, 08 May 2024 23:05: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 4VZW362dyRz4cjd; Wed, 8 May 2024 23:05:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715209554; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CWTfyZ7th4h1qwNT//ZVsQvvsFnNyUYbRzUKl9HMuko=; b=IGXAhyYFvtkL7OJ+DoHKl2Vj9wQDopPAwbPN80Ox8dLspcYGW4EOQq4xITQz2+vhgyQim9 e2f65oB8dRkWeFDLX8UxQa1S07MBFqZQa4W16elMKaCBfAAd2NdRBsVmxKG1eczzzu5UeP asww2g08lfdfIQdBZ3qkauRvgtjircyNqNfcx1aqwGEWndY1aFh9Pjm5UHlcpLjLHakW6c 1xwrNIpkbyRCxiO4HjCjGP/YdmiZ1qCc2OnpL9DvJA0/BeQEitld8joU6ieNZu+KfXhXW+ Hc4dILwRdar7LNrGqZ7KwODuCXXZkzH9jEhLm08hD8ixYZZGT78Q5PkWWq7Msw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715209554; a=rsa-sha256; cv=none; b=eyHJwGCXvMbQm/5TVa3wnJywUbmkgFS4TA2IL3uFwLqsqG1zpQeLXcN+LxkzLH1L0BkFLK 4RqsCAH7nVu2dzfgczKi8foAAeHnAfN+nKmGg55O1d/MO/Qm3FBJXhfSHTA+PUTa+cZ0AO WMfbG8keHLyFn5482z7i+vuV8uUNDgr05cZv8+IIx2KmlDPMYeKCAowkmvtgS5FKChXQfN nVU/vd0552YSFSCd4UdrGZ4HkKo2e67eTef0YxdDCVI4g1U/8dDcO8I4J0cutIZ3LkZ6Vo vckg7q7wE5tJVCy/2j7CSwQUtsLIjLBUt1981VeGna7Ub+e38jJfRRDq+SDDIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715209554; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CWTfyZ7th4h1qwNT//ZVsQvvsFnNyUYbRzUKl9HMuko=; b=XEFix3K3AV5mqjAwVeHSw1z213OHp6DhpNAxe7/dyzh7Qr3B6+3pB0u2UtSnaMp4fuWqbp bsiJ+0NZqudS/4G0mEwYwtGweJpWhsLcA5QlYajy8qYQc/WRqFHLaGWE3LY4/q0WKh9v1w BWNRkFy5ZfLUzO0vNowTd2beLk6UOqZlcle6kIFQ4TNkhjGDEjPjDJ7CP0VqAPjdOZjJkO sT4jgoEJ6j1FmXsrrvlh8V0JZom5E55YWSAWb4p54Uih8iHFAt5BsRpQIeeep6Fkic8dW+ YC/Lo92qwV/t1m8ialFlKk/q3O9t0jdC25BhSwhGSb7zXTzI9Z+nPn578LyIug== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZW361vjhzkh3; Wed, 8 May 2024 23:05:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 448N5suv095262; Wed, 8 May 2024 23:05:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 448N5sK5095259; Wed, 8 May 2024 23:05:54 GMT (envelope-from git) Date: Wed, 8 May 2024 23:05:54 GMT Message-Id: <202405082305.448N5sK5095259@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: ebcfab998e63 - main - nvme: Explicitly align struct nvme_command on an 8 byte boundary List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ebcfab998e631fa7e29e1c0694868d745fc085ee Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=ebcfab998e631fa7e29e1c0694868d745fc085ee commit ebcfab998e631fa7e29e1c0694868d745fc085ee Author: John Baldwin AuthorDate: 2024-05-08 23:05:39 +0000 Commit: John Baldwin CommitDate: 2024-05-08 23:05:39 +0000 nvme: Explicitly align struct nvme_command on an 8 byte boundary This was already true for most architectures due to uint64_t structure members. However, i386 is special in that it only requires 4 byte alignment for uint64_t. As a result, casts from struct nvme_command to struct nvmf_fabric_cmd were raising a "cast increases alignment" warning on i386. Explicitly aligning struct nvme_command pacifies this warning on i386. Reported by: rscheff Sponsored by: Chelsio Communications --- sys/dev/nvme/nvme.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h index 6ef7a2bd8aad..bca4df92cb25 100644 --- a/sys/dev/nvme/nvme.h +++ b/sys/dev/nvme/nvme.h @@ -832,7 +832,7 @@ struct nvme_command { uint32_t cdw13; /* command-specific */ uint32_t cdw14; /* command-specific */ uint32_t cdw15; /* command-specific */ -}; +} __aligned(8); _Static_assert(sizeof(struct nvme_command) == 16 * 4, "bad size for nvme_command"); From nobody Thu May 9 00:49:41 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZYLs69P1z5K5Y0; Thu, 09 May 2024 00:49: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 4VZYLs5Bphz4mn3; Thu, 9 May 2024 00:49:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215781; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RDm/C8WK8nsQTGXzAXUClBpn7+AuqJ94H4R0TkHck6Y=; b=EROKi/zMnbuopD3ex3cmPkphtlfJ/aJeXATFUqPnVSkrsMTQ216/+kOgCqVwWMZ8kifL4W aLXsXng0ZzR1vuDYXvQSLjQ46VXHzve9kZpSmOZbzoCMElAn+USXOYZCq6ovXrjcKZlTvD B9WQ1uKB4jxHu7rPBQ415n3gFfOY55vDH+ps77zXS4Qqnb6Msv41jTVjFJE/JJOJTRdXOw mX+JS0ZXjeIo4h1pJHSYSe9t63tIuz+mN/fwaH6/S3Eg4eAoz7kCtptHPoBaE9KpFmSefp QlxvCgI3eJIyZWVFfLq9R/uRPvucwEUZPn90n3FvYtr951iYjrsHpX9Y2i7nAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715215781; a=rsa-sha256; cv=none; b=Xq8uBOK3c/qbVxs6WODJwweQ0oN3ChurIWnO9OKg3H+VUiMe0gLpaLk4nOqmhZrBv6NStI MB8V9U6BQB8jHbm00PfMC/p7XBkwfvUu5cH+8h77G4SjWq8MzU+QsG9u45FGM4z8bu4jBq LSwzwyynYgJMb7kBo13fYdjMePbgnmjOkQJJVjpOhn8rOJfsCy3Wb9VLOEhEGf1fi8x2Pr PFiFRZ5JSpSJ9LTAINgNIohJIXHl/Y/Oaok6MNAFJpKpMAVSPqTBIH/sHYvWPETpFBpCSg cBPTNHuMhSADgtC6dfznN8sGz1mton9YCbewT78UcAWVIUjel0RCLHgIazLL5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215781; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RDm/C8WK8nsQTGXzAXUClBpn7+AuqJ94H4R0TkHck6Y=; b=sRedUOWT95Ht6a+HCK5WoweuB79bRMG7ABL/e0csXxBb7034231WzoTdH6nvAQ7MC3+rCm cjdPfA7mUqzE0tFnGWbS/r5dEyK5+A696HoTVmPRfufBUXHZWde05udz7wKVofMMKx/FZG G92WerC3fMnAM0avoLg9FWr5A3ynWABVcDPT8beLxldJ6qVzwq9V3mHqd2MTPwV2m3OR9P d3UWfZBvxRn49Cw5918V+CDM4lZjzLBfeNAOqgyvib0T1bjF4byDRVsgZCDy77RKsNOY5u 1mhBVAH9REp5qq5Vx5+av26Sc14shJUIOqWqoodo+e6ORnoLuCQTx1arHdF5uQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZYLs4p4pzn6L; Thu, 9 May 2024 00:49: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 4490nfok063538; Thu, 9 May 2024 00:49:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4490nffH063535; Thu, 9 May 2024 00:49:41 GMT (envelope-from git) Date: Thu, 9 May 2024 00:49:41 GMT Message-Id: <202405090049.4490nffH063535@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 1116e8b95c60 - main - net80211: add a new field specifically for announcing specific ciphers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1116e8b95c601ddaac2feb4ab0904f77801a520f Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=1116e8b95c601ddaac2feb4ab0904f77801a520f commit 1116e8b95c601ddaac2feb4ab0904f77801a520f Author: Adrian Chadd AuthorDate: 2024-04-17 01:53:52 +0000 Commit: Adrian Chadd CommitDate: 2024-05-09 00:48:40 +0000 net80211: add a new field specifically for announcing specific ciphers This dates way, way back with the original net80211 support w/ atheros chips. The earliest chip (AR5210) had limitations supporting software encryption. It only had the four WEP slots, and not any keycache entries. So when trying to do CCMP/TKIP encryption would be enabled and the key slots would have nothing useful in them, resulting in garbage encryption/decryption. I changed this back in 2012 to disable supporting hardware WEP for AR5210 so if_ath(4) / net80211 crypto is all done in software and yes, I could do CCMP/TKIP on AR5210 in software. Fast-forward to newer-ish hardware - the Qualcomm 11ac hardware. Those also don't support pass-through keycache slots! Well, the hardware does at that layer, but then there's a whole offload data path encap/decap layer that's turning the frames from raw wifi into ethernet frames (for "dumb" AP behaviours) or "wifi direct" frames (ie, "windows".) This hides a bunch of header frame contents required for doing the software encryption / decryption path. But then if you enable the raw transmit/receive frame format it ALSO bypasses the hardware encryption/decryption engine! So for those NICs: * If you want to do encryption, you can only use the firmware supported ciphers w/ wifi direct or ethernet; * If you want to use software encrypt/decrypt, you MUST disable all encryption and instead use 100% software encryption. The wpa_supplicant bsd driver code has a specific comment about this and flips on supporting WEP/TKIP/CCMP, which is understandable but it doesn't fix the ACTUAL intention of all of this stuff. So: * create a new field, ic_sw_cryptocaps * populate it with the default supported set of ciphers for net80211 (right now wep, tkip, ccmp) * Communicate the combination of both ic_sw_cryptocaps and ic_cryptocaps to wpa_supplicant via the relevant devcap ioctl. * Update manpage. I'll follow this up with a driver_bsd.c change in wpa_supplicant to trust this again, and then start adding the other cipher support there. Differential Revision: https://reviews.freebsd.org/D44820 --- share/man/man9/ieee80211.9 | 4 +++- sys/net80211/ieee80211_crypto.c | 12 ++++++++++++ sys/net80211/ieee80211_ioctl.c | 6 +++++- sys/net80211/ieee80211_ioctl.h | 4 ++-- sys/net80211/ieee80211_var.h | 4 +++- 5 files changed, 25 insertions(+), 5 deletions(-) diff --git a/share/man/man9/ieee80211.9 b/share/man/man9/ieee80211.9 index 100b4e7540a5..40c8c243a77c 100644 --- a/share/man/man9/ieee80211.9 +++ b/share/man/man9/ieee80211.9 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 26, 2021 +.Dd April 24, 2024 .Dt IEEE80211 9 .Os .Sh NAME @@ -514,6 +514,8 @@ General capabilities are specified by .Vt ic_caps . Hardware cryptographic capabilities are specified by .Vt ic_cryptocaps . +Software cryptographic capabilities are specified by +.Vt ic_sw_cryptocaps . 802.11n capabilities, if any, are specified by .Vt ic_htcaps . The diff --git a/sys/net80211/ieee80211_crypto.c b/sys/net80211/ieee80211_crypto.c index 6a1182b52480..ff78600e2f0e 100644 --- a/sys/net80211/ieee80211_crypto.c +++ b/sys/net80211/ieee80211_crypto.c @@ -142,6 +142,18 @@ ieee80211_crypto_attach(struct ieee80211com *ic) { /* NB: we assume everything is pre-zero'd */ ciphers[IEEE80211_CIPHER_NONE] = &ieee80211_cipher_none; + + /* + * Default set of net80211 supported ciphers. + * + * These are the default set that all drivers are expected to + * support, either/or in hardware and software. + * + * Drivers can add their own support to this and the + * hardware cipher list (ic_cryptocaps.) + */ + ic->ic_sw_cryptocaps = IEEE80211_CRYPTO_WEP | + IEEE80211_CRYPTO_TKIP | IEEE80211_CRYPTO_AES_CCM; } /* diff --git a/sys/net80211/ieee80211_ioctl.c b/sys/net80211/ieee80211_ioctl.c index d5b242b679d0..c0ba19b5db89 100644 --- a/sys/net80211/ieee80211_ioctl.c +++ b/sys/net80211/ieee80211_ioctl.c @@ -709,7 +709,11 @@ ieee80211_ioctl_getdevcaps(struct ieee80211com *ic, if (dc == NULL) return ENOMEM; dc->dc_drivercaps = ic->ic_caps; - dc->dc_cryptocaps = ic->ic_cryptocaps; + /* + * Announce the set of both hardware and software supported + * ciphers. + */ + dc->dc_cryptocaps = ic->ic_cryptocaps | ic->ic_sw_cryptocaps; dc->dc_htcaps = ic->ic_htcaps; dc->dc_vhtcaps = ic->ic_vht_cap.vht_cap_info; ci = &dc->dc_chaninfo; diff --git a/sys/net80211/ieee80211_ioctl.h b/sys/net80211/ieee80211_ioctl.h index 58080025b5a9..18152495c499 100644 --- a/sys/net80211/ieee80211_ioctl.h +++ b/sys/net80211/ieee80211_ioctl.h @@ -551,13 +551,13 @@ struct ieee80211_regdomain_req { IEEE80211_REGDOMAIN_SIZE((_req)->chaninfo.ic_nchans) /* - * Get driver capabilities. Driver, hardware crypto, and + * Get driver capabilities. Driver, hardware/software crypto, and * HT/802.11n capabilities, and a table that describes what * the radio can do. */ struct ieee80211_devcaps_req { uint32_t dc_drivercaps; /* general driver caps */ - uint32_t dc_cryptocaps; /* hardware crypto support */ + uint32_t dc_cryptocaps; /* software + hardware crypto support */ uint32_t dc_htcaps; /* HT/802.11n support */ uint32_t dc_vhtcaps; /* VHT/802.11ac capabilities */ struct ieee80211req_chaninfo dc_chaninfo; diff --git a/sys/net80211/ieee80211_var.h b/sys/net80211/ieee80211_var.h index 4c9cdcbfccd9..2c13113b92a1 100644 --- a/sys/net80211/ieee80211_var.h +++ b/sys/net80211/ieee80211_var.h @@ -163,7 +163,9 @@ struct ieee80211com { uint32_t ic_caps; /* capabilities */ uint32_t ic_htcaps; /* HT capabilities */ uint32_t ic_htextcaps; /* HT extended capabilities */ - uint32_t ic_cryptocaps; /* crypto capabilities */ + /* driver-supported software crypto caps */ + uint32_t ic_sw_cryptocaps; + uint32_t ic_cryptocaps; /* hardware crypto caps */ /* set of mode capabilities */ uint8_t ic_modecaps[IEEE80211_MODE_BYTES]; uint8_t ic_promisc; /* vap's needing promisc mode */ From nobody Thu May 9 00:49:42 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZYLv0cYcz5K5QR; Thu, 09 May 2024 00:49: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 4VZYLt6tSdz4mhN; Thu, 9 May 2024 00:49:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215783; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=awBY8O1L7LDK/PldL3ai/X/RccAMV8ESlBmPui9BNR8=; b=fPpe1gZYSUR0wdz1g+LaFAUJYg5GqwWmmOZKj4u2qeUF/1YYevG1xGnHh9Vx6ptrP/aLBt U0ZfRRGoV3eoACYECD4ZUJJbl9XP9GFAa1HD7hQBgJmqPiiEYUUTPE/o2P0gjqYX7pAYjn 82RRccQEceuxirpn6g838BOftaXvcg0/Om69vijnzsPz4uJAxC889wwexWbi7Vb8R4XLoC 9x6cTNuRMNAuGqdYTY7inrSzw4TE6nnxdkTkqUA/bHOy3z16pirBBKf/O/A+3t5UiXqx4L sAveWxICsPGYQbl80oATX9lwQ0oUc+derScdXMqq3ZmNwdK/opTXPfxdfObxuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715215783; a=rsa-sha256; cv=none; b=Ca5NNdZU/AZ86nOCDNf60JdfriXV/M9wQX8DKoELf1Lq17r5vEA/YxV1dlMIBrNlECnAP5 +dpF9tyzz6NuQD+4HODlu/0GDRfZ2f7ELbLMWU0dEB8xdELoG6PB/7SJvFQ+TDFULzn01N Q/hSgG5ODcOs2RgRbX5Fwe2jG0nT1zWsHGbWXcQDb808J0SzmPYCW8ePmE1pHQP5SugAK2 l/r52CL8B3LO6UdgPnbrhm1U8VDv7H7Lcjx8FedkYkRZPQ4Lcp8NU8AJuaorU4aUywowtr c/afu+tnh1qbb6+/oG+ByyDyZ9DwmBG7jx2Z2f16zTpB2p6o6JaeKxMgnnluwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215783; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=awBY8O1L7LDK/PldL3ai/X/RccAMV8ESlBmPui9BNR8=; b=klizPFtG0wdCT2qAh5SfHtxGZ4rJWGXHvvJjWpDQTfhmqYarU+vCKPz94jgc6v17Hb94g+ QIYFxFeLohO43ZQXID6XMoOyaRPyljLB1CbdD0EAWDvIPnQkudZdyeaiyTDeN/jwtqaWql x1ifFkRdeHOT9l0/Ex3beYeMb8baOpnygaDWGR9p1lmluEXqtrZ5i7hGj89kTbwXdEYHWt Np+rSVTshOilXaCcM2lor43U9fSTODXHj6/nxzCTKF/uHxMEzdy/IUqM7CQV9X/J9WCr56 pP3fpTbxV753kFcsatiNE4lLT0bjh9yJCSQb+fZGs2jcl7QngulwcC23kvV56Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZYLt691pznKk; Thu, 9 May 2024 00:49: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 4490ngfX063600; Thu, 9 May 2024 00:49:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4490ngWe063597; Thu, 9 May 2024 00:49:42 GMT (envelope-from git) Date: Thu, 9 May 2024 00:49:42 GMT Message-Id: <202405090049.4490ngWe063597@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 491938d7435f - main - wpa: Remove the now not-needed local logic to hard-code cipher support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 491938d7435f6a1ee7b6e5a669a72e4c12bd7d2b Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=491938d7435f6a1ee7b6e5a669a72e4c12bd7d2b commit 491938d7435f6a1ee7b6e5a669a72e4c12bd7d2b Author: Adrian Chadd AuthorDate: 2024-04-17 01:55:28 +0000 Commit: Adrian Chadd CommitDate: 2024-05-09 00:48:58 +0000 wpa: Remove the now not-needed local logic to hard-code cipher support A previous commit now exposes the supported net80211 ciphers for the given NIC, rather than the hardware cipher list. This is going to be especially important moving forward when we add more cipher and key management support. Differential Revision: https://reviews.freebsd.org/D44821 --- contrib/wpa/src/drivers/driver_bsd.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/contrib/wpa/src/drivers/driver_bsd.c b/contrib/wpa/src/drivers/driver_bsd.c index d5ff51cee456..14c19eb1246c 100644 --- a/contrib/wpa/src/drivers/driver_bsd.c +++ b/contrib/wpa/src/drivers/driver_bsd.c @@ -1557,17 +1557,6 @@ static int wpa_driver_bsd_capa(struct bsd_driver_data *drv) if (devcaps.dc_drivercaps & IEEE80211_C_WPA2) drv->capa.key_mgmt = WPA_DRIVER_CAPA_KEY_MGMT_WPA2 | WPA_DRIVER_CAPA_KEY_MGMT_WPA2_PSK; -#ifdef __FreeBSD__ - drv->capa.enc |= WPA_DRIVER_CAPA_ENC_WEP40 | - WPA_DRIVER_CAPA_ENC_WEP104 | - WPA_DRIVER_CAPA_ENC_TKIP | - WPA_DRIVER_CAPA_ENC_CCMP; -#else - /* - * XXX - * FreeBSD exports hardware cryptocaps. These have no meaning for wpa - * since net80211 performs software crypto. - */ if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_WEP) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_WEP40 | @@ -1576,7 +1565,6 @@ static int wpa_driver_bsd_capa(struct bsd_driver_data *drv) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_TKIP; if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_CCM) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_CCMP; -#endif if (devcaps.dc_drivercaps & IEEE80211_C_HOSTAP) drv->capa.flags |= WPA_DRIVER_FLAGS_AP; From nobody Thu May 9 00:49:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZYLw2YCCz5K5dR; Thu, 09 May 2024 00:49: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 4VZYLw0lK4z4mvr; Thu, 9 May 2024 00:49:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215784; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E6E0Dla7vA6W9aopq3wMiibDzrb+b2ejXK2o0+HuTs0=; b=atPcUvoPcW7zDUTjxlpLoL3Tqxp7LCGu/640q0vpztmM2t+qgLTjnu0lM9fj+h0T5eidzc YYiRt88xB0KgmC7VjPPs8MoCku0TWn4DZQ4pWDXvTJvD51Nrcj2y6lytdZpkbd0sx5oay/ D4WL7r8plFBnqjcbfWyRMfmcb4dPy83Lxyv7EQ6l7MtJDoEdMcsTIEvhdi+Vr6dLwZxgo1 O1fRCT0MuDOXJHt2pQFmlzArCZBBbCUztMkUqA3dXMY5o2i1S4dY65iDM7TLMSCD0I/Gx/ 9symGeUpO9HDJH5l3Mvu970g9nk2OKYoobSoxNg+JFkyZFpr/04kqVuYbzyNlA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715215784; a=rsa-sha256; cv=none; b=wv3OXcRGfjLljmomlKSUFQ9H44tD0G4VVnU7qn9IJavluv6vhFw7xhWPF+kN7EL0FXqcMF hfawB/PVBGV/zHuhr0QP3axV2PJqghSwh8iEHfpNEnwTkyTXUZ0ztiXdbYtAWECmN+m8kx qbxa/txlKYdZpkgpVa52aWkic/fBiohux8EvFYoebOJetgY2Un+qqUUw0IVEBZcAxQ2ow1 cOPTBb1tN1zlj2TsyOg+UgBF/VE3S6jJfMxmX8/eTjO/5vrreYkoXq23UqOaAEqdyAop5l 8PUCQ08IWoVQVRlnL8Ul0qold+/SwIRW6V9gDiYynZKkv9IgD+JqTsoQxqjbsw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215784; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E6E0Dla7vA6W9aopq3wMiibDzrb+b2ejXK2o0+HuTs0=; b=Qa+R7/zY9iEFxx2LZuz94HI95Si2VuLJhV8VYPYKqQ+vc51o+0ocsf+zCTBrM8gwgM4wjt Xasa0D0nfljL72t0Y9UeV1vt7pxkHtGICbbR/t7p4H4nMK8SF31DWt3PkPK5tsd4lxlWJo 20/5XLqgLrgguEVmPzfHSgkdlPVgTrGPK0IygODYRnQ/U/xC1fKWqIQE24mPox4lb3sawv go75FzcR5vSnzRZ+sB0lg9KirksXTeZqhR9fHv/Cezcg0f5LaxYB3ncHl1xPm6hTJrlrfQ o04IQq3AG4/dcTLPtyQ8JL5Tq22lltFMnL07YC6wRhQpd5EFmSw+KdTZuz+Xjg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZYLw07FNznYm; Thu, 9 May 2024 00:49: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 4490nhae063675; Thu, 9 May 2024 00:49:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4490nh6J063672; Thu, 9 May 2024 00:49:43 GMT (envelope-from git) Date: Thu, 9 May 2024 00:49:43 GMT Message-Id: <202405090049.4490nh6J063672@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: e9961ea16496 - main - net80211: add driver / crypto methods to set the hardware / software cipher suites List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e9961ea164968bf2bdab210eab69201b4bf2cb37 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=e9961ea164968bf2bdab210eab69201b4bf2cb37 commit e9961ea164968bf2bdab210eab69201b4bf2cb37 Author: Adrian Chadd AuthorDate: 2024-04-18 01:47:07 +0000 Commit: Adrian Chadd CommitDate: 2024-05-09 00:49:12 +0000 net80211: add driver / crypto methods to set the hardware / software cipher suites Drivers currently announce hardware crypto cipher support by setting up ic_cryptocaps. This adds two public function calls: * ieee80211_set_software_ciphers() - set the software cipher set; * ieee80211_set_hardware_ciphers() - set the hardware cipher set. For now these just call into the newly crypto routines to set the ciphers. This then adds the two crypto routines, similarly named, to set the hardware/software cipher suite. This is a no-op right now - wep/tkip/ccmp are already set by default so drivers aren't required to call these routines for software encryption, and drivers already set ic_cryptocaps for hardware encryption. Differential Revision: https://reviews.freebsd.org/D44827 --- sys/net80211/ieee80211.c | 22 ++++++++++++++++++++++ sys/net80211/ieee80211_crypto.c | 21 +++++++++++++++++++++ sys/net80211/ieee80211_crypto.h | 4 ++++ sys/net80211/ieee80211_var.h | 4 ++++ 4 files changed, 51 insertions(+) diff --git a/sys/net80211/ieee80211.c b/sys/net80211/ieee80211.c index 15785a8f0966..1c82493274bb 100644 --- a/sys/net80211/ieee80211.c +++ b/sys/net80211/ieee80211.c @@ -434,6 +434,28 @@ ieee80211_ifdetach(struct ieee80211com *ic) IEEE80211_LOCK_DESTROY(ic); } +/* + * Called by drivers during attach to set the supported + * cipher set for software encryption. + */ +void +ieee80211_set_software_ciphers(struct ieee80211com *ic, + uint32_t cipher_suite) +{ + ieee80211_crypto_set_supported_software_ciphers(ic, cipher_suite); +} + +/* + * Called by drivers during attach to set the supported + * cipher set for hardware encryption. + */ +void +ieee80211_set_hardware_ciphers(struct ieee80211com *ic, + uint32_t cipher_suite) +{ + ieee80211_crypto_set_supported_hardware_ciphers(ic, cipher_suite); +} + struct ieee80211com * ieee80211_find_com(const char *name) { diff --git a/sys/net80211/ieee80211_crypto.c b/sys/net80211/ieee80211_crypto.c index ff78600e2f0e..e849fe06db65 100644 --- a/sys/net80211/ieee80211_crypto.c +++ b/sys/net80211/ieee80211_crypto.c @@ -164,6 +164,27 @@ ieee80211_crypto_detach(struct ieee80211com *ic) { } +/* + * Set the supported ciphers for software encryption. + */ +void +ieee80211_crypto_set_supported_software_ciphers(struct ieee80211com *ic, + uint32_t cipher_set) +{ + ic->ic_sw_cryptocaps = cipher_set; +} + +/* + * Set the supported ciphers for hardware encryption. + */ +void +ieee80211_crypto_set_supported_hardware_ciphers(struct ieee80211com *ic, + uint32_t cipher_set) +{ + ic->ic_cryptocaps = cipher_set; +} + + /* * Setup crypto support for a vap. */ diff --git a/sys/net80211/ieee80211_crypto.h b/sys/net80211/ieee80211_crypto.h index fc7c13cfdfb4..9637278701ff 100644 --- a/sys/net80211/ieee80211_crypto.h +++ b/sys/net80211/ieee80211_crypto.h @@ -162,6 +162,10 @@ MALLOC_DECLARE(M_80211_CRYPTO); void ieee80211_crypto_attach(struct ieee80211com *); void ieee80211_crypto_detach(struct ieee80211com *); +void ieee80211_crypto_set_supported_software_ciphers(struct ieee80211com *, + uint32_t cipher_set); +void ieee80211_crypto_set_supported_hardware_ciphers(struct ieee80211com *, + uint32_t cipher_set); void ieee80211_crypto_vattach(struct ieee80211vap *); void ieee80211_crypto_vdetach(struct ieee80211vap *); int ieee80211_crypto_newkey(struct ieee80211vap *, diff --git a/sys/net80211/ieee80211_var.h b/sys/net80211/ieee80211_var.h index 2c13113b92a1..21fdff0b88a3 100644 --- a/sys/net80211/ieee80211_var.h +++ b/sys/net80211/ieee80211_var.h @@ -751,6 +751,10 @@ MALLOC_DECLARE(M_80211_VAP); int ic_printf(struct ieee80211com *, const char *, ...) __printflike(2, 3); void ieee80211_ifattach(struct ieee80211com *); void ieee80211_ifdetach(struct ieee80211com *); +void ieee80211_set_software_ciphers(struct ieee80211com *, + uint32_t cipher_suite); +void ieee80211_set_hardware_ciphers(struct ieee80211com *, + uint32_t cipher_suite); int ieee80211_vap_setup(struct ieee80211com *, struct ieee80211vap *, const char name[IFNAMSIZ], int unit, enum ieee80211_opmode opmode, int flags, From nobody Thu May 9 00:49:45 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZYLx5KGNz5K5W4; Thu, 09 May 2024 00:49: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 4VZYLx1Pzxz4mwF; Thu, 9 May 2024 00:49:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E7AqHVKkZYz2rCDs5ZEswcUJ8qRkJxDZeitB/J1HPY4=; b=i4jdbMSUcPNke6cx9b94XNNYkbPBnWZEHd2sLZaMY7tT0T7ocu78qOIOEE8K9MEUaRgzIb G8QoMMhnY8SXfD7LZfdr3q7kHGCVkZypmsk0QcH+fN+mAP/ugZEQNOh49zbL5KMPGonaq5 jC/6jWMKDgjCuk98rUMfAA65h8MlrkWHjAM+tcDhWTQDzonTtczfKlhL4kG22iepHtkklJ HlOuNzApkP68LDxqg3xT2EUOOrB6O+mlMfDPLcwtaB4S1IaSmX2DwJ7+NYs8YzQsx/UgYe q0y7UBdH7pKSeX/gSSXYGoCLtUxKoAeQD6+rc2sRBRyIrGLVoAMyEHL1XtHisw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715215785; a=rsa-sha256; cv=none; b=rxCozKKCxFxRtFvemRwJEJ7epkOFVrCBKS3GxBgdzy3QiaDgjV9yCBhQzCSrRUgD88K2ZR Sz1CH0PBuXCL4A/NqZNWlk+0sUFqBN/G0Ns3p/133UThShfFhzzrAW9Xhp0qM4pDXjxDgl q34nRkoixpvfLXUTAl3zP/GLXj+/OBurm0OK7TgcavrP6ec0cDWAONIhAXzN+3MsV4j6is SOcQwvE4kg4x95Wmvl3Mr1M0S3KPqZvbAZ98YgD7fMtjCfElvsbDex5TBOdYDjksCTqjrI WAhK95wR+dAuov8PBtqrqWNfr8fL02y3LSTbCg6JTIXqumzR+zDoxeffz1GttA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715215785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E7AqHVKkZYz2rCDs5ZEswcUJ8qRkJxDZeitB/J1HPY4=; b=Ke8rGDNwFloyT3vSTc0GXioEJq1J1EglT8I3JpKrFWlnO5YIap8Siipv2DrcNgR5oR+P1/ wmoIi8qdtpHCuQVrShkQi4noUDROdPBE9blNnUMOeyv2UxbxuMUSLT2sQsO+P1if6f0djy atbSJUfnmu8be186Oy7m4RgS3RuIo1ga82vL4CQIkTzVaxGz+cERyOb8Ti0XqsoWMBA2E8 npPKyQPdfQ1WkJKuQHEfGalRIOzxjn3zb67k6lgvBPsD6UhbCd/XA11nja017QCy0KwiwS TIbBRlFIYJHT8LzlsJVQEubNOvqP/cOOPPssBYAL/VYQfyW0qNIcMy78OUSs9w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZYLx12GwznG5; Thu, 9 May 2024 00:49: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 4490njrt063727; Thu, 9 May 2024 00:49:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4490njs8063724; Thu, 9 May 2024 00:49:45 GMT (envelope-from git) Date: Thu, 9 May 2024 00:49:45 GMT Message-Id: <202405090049.4490njs8063724@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: c2a005a0a97d - main - net80211: add new ciphers and RSN flags List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c2a005a0a97d98472d81c5c9606e5d6e546dd40a Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=c2a005a0a97d98472d81c5c9606e5d6e546dd40a commit c2a005a0a97d98472d81c5c9606e5d6e546dd40a Author: Adrian Chadd AuthorDate: 2024-04-19 14:05:44 +0000 Commit: Adrian Chadd CommitDate: 2024-05-09 00:49:34 +0000 net80211: add new ciphers and RSN flags These are the rest of the ciphers and RSN flags from 802.11-2016. * add the rest of the ciphers from 802.11-2016 * add the rest of the RSN flags from 802.11-2016 Of special interest here are the extended key ID field for supporting >1 unicast key (to support seamless rekeying w/out dropping frames) and the MFP (management frame protection) config bits. This is a no-op; no code is using these new fields. (In particular, no code in net80211 uses the RSN capability bits; but that will change when we start on MFP support.) Differential Revision: https://reviews.freebsd.org/D44864 --- sys/net80211/ieee80211.h | 67 ++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 54 insertions(+), 13 deletions(-) diff --git a/sys/net80211/ieee80211.h b/sys/net80211/ieee80211.h index 47e496bf42a1..fe2a0a7f3b64 100644 --- a/sys/net80211/ieee80211.h +++ b/sys/net80211/ieee80211.h @@ -1266,7 +1266,7 @@ struct ieee80211_csa_ie { #define WPA_CSE_NULL 0x00 #define WPA_CSE_WEP40 0x01 #define WPA_CSE_TKIP 0x02 -#define WPA_CSE_CCMP 0x04 +#define WPA_CSE_CCMP 0x04 /* CCMP 128-bit */ #define WPA_CSE_WEP104 0x05 #define WPA_ASE_NONE 0x00 @@ -1275,21 +1275,62 @@ struct ieee80211_csa_ie { #define WPS_OUI_TYPE 0x04 +/* 802.11-2016 Table 9-131 - Cipher Suite Selectors */ #define RSN_OUI 0xac0f00 #define RSN_VERSION 1 /* current supported version */ -#define RSN_CSE_NULL 0x00 -#define RSN_CSE_WEP40 0x01 -#define RSN_CSE_TKIP 0x02 -#define RSN_CSE_WRAP 0x03 -#define RSN_CSE_CCMP 0x04 -#define RSN_CSE_WEP104 0x05 - -#define RSN_ASE_NONE 0x00 -#define RSN_ASE_8021X_UNSPEC 0x01 -#define RSN_ASE_8021X_PSK 0x02 - -#define RSN_CAP_PREAUTH 0x01 +/* RSN cipher suite element */ +#define RSN_CSE_NULL 0 +#define RSN_CSE_WEP40 1 +#define RSN_CSE_TKIP 2 +#define RSN_CSE_WRAP 3 /* Reserved in the 802.11-2016 */ +#define RSN_CSE_CCMP 4 /* CCMP 128 bit */ +#define RSN_CSE_WEP104 5 +#define RSN_CSE_BIP_CMAC_128 6 +/* 7 - "Group addressed traffic not allowed" */ +#define RSN_CSE_GCMP_128 8 +#define RSN_CSE_GCMP_256 9 +#define RSN_CSE_CCMP_256 10 +#define RSN_CSE_BIP_GMAC_128 11 +#define RSN_CSE_BIP_GMAC_256 12 +#define RSN_CSE_BIP_CMAC_256 13 + +/* 802.11-2016 Table 9-133 - AKM suite selectors */ +/* RSN AKM suite element */ +#define RSN_ASE_NONE 0 +#define RSN_ASE_8021X_UNSPEC 1 +#define RSN_ASE_8021X_PSK 2 +#define RSN_ASE_FT_8021X 3 /* SHA-256 */ +#define RSN_ASE_FT_PSK 4 /* SHA-256 */ +#define RSN_ASE_8021X_UNSPEC_SHA256 5 +#define RSN_ASE_8021X_PSK_SHA256 6 +#define RSN_ASE_8021X_TDLS 7 /* SHA-256 */ +#define RSN_ASE_SAE_UNSPEC 8 /* SHA-256 */ +#define RSN_ASE_FT_SAE 9 /* SHA-256 */ +#define RSN_ASE_AP_PEERKEY 10 /* SHA-256 */ +#define RSN_ASE_8021X_SUITE_B_SHA256 11 +#define RSN_ASE_8021X_SUITE_B_SHA384 12 +#define RSN_ASE_FT_8021X_SHA384 13 + +/* 802.11-2016 Figure 9-257 - RSN Capabilities (2 byte field) */ +#define RSN_CAP_PREAUTH 0x0001 +#define RSN_CAP_NO_PAIRWISE 0x0002 +#define RSN_CAP_PTKSA_REPLAY_COUNTER 0x000c /* 2 bit field */ +#define RSN_CAP_GTKSA_REPLAY_COUNTER 0x0030 /* 2 bit field */ +#define RSN_CAP_MFP_REQUIRED 0x0040 +#define RSN_CAP_MFP_CAPABLE 0x0080 +#define RSN_CAP_JOINT_MULTIBAND_RSNA 0x0100 +#define RSN_CAP_PEERKEY_ENABLED 0x0200 +#define RSN_CAP_SPP_AMSDU_CAPABLE 0x0400 +#define RSN_CAP_SPP_AMSDU_REQUIRED 0x0800 +#define RSN_CAP_PBAC_CAPABLE 0x1000 +#define RSN_CAP_EXT_KEYID_CAPABLE 0x0200 + +/* 802.11-2016 Table 9-134 PTKSA/GTKSA/STKSA replay counters usage */ +#define RSN_CAP_REPLAY_COUNTER_1_PER 0 +#define RSN_CAP_REPLAY_COUNTER_2_PER 1 +#define RSN_CAP_REPLAY_COUNTER_4_PER 2 +#define RSN_CAP_REPLAY_COUNTER_16_PER 3 #define WME_OUI 0xf25000 #define WME_OUI_TYPE 0x02 From nobody Thu May 9 13:36:55 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZZWB6mskz5KBQh for ; Thu, 09 May 2024 01:41:58 +0000 (UTC) (envelope-from zenababdul34@gmail.com) Received: from mail-ed1-x542.google.com (mail-ed1-x542.google.com [IPv6:2a00:1450:4864:20::542]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VZZW96kQdz4thH for ; Thu, 9 May 2024 01:41:57 +0000 (UTC) (envelope-from zenababdul34@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b="BIP/goa/"; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of zenababdul34@gmail.com designates 2a00:1450:4864:20::542 as permitted sender) smtp.mailfrom=zenababdul34@gmail.com Received: by mail-ed1-x542.google.com with SMTP id 4fb4d7f45d1cf-572baf393ddso2418146a12.1 for ; Wed, 08 May 2024 18:41:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1715218915; x=1715823715; darn=freebsd.org; h=mime-version:date:content-transfer-encoding:message-id:subject:to :from:sender:from:to:cc:subject:date:message-id:reply-to; bh=LMIuExQSrFPBM0wv+9dmmZQLzAWZOrX/MrkSq8WXas0=; b=BIP/goa/iXqncuRUYAPY5U/3BDA913zFdWiPjfh757xRPG5UYfs2VxJeCt9nvybRYw ffaeHfKQKsZs77pYuMr5cZkFTCaY2ygQMgBWxSPG9K61N3LqK5hFxmQ9woMFaody/xJ5 nc21y47hz9dD8Y6AaL8CpArSpTVsHt08/LC6rRMEoInA3TxllpAHpwntLpfj/X9jcthK mFBPSjyILouIeJOng+aDXkg9cXkCmvn1inmBEi8d2B7qZSH8gNoddDd592ZZpA/uKbn/ 5kKxvlOfAd/bqcQuCBb67Km8T5GiLL5E6/6c/JEzX55Sc1MW17yuqrG6s4FNcbg6iW9k Cplw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715218915; x=1715823715; h=mime-version:date:content-transfer-encoding:message-id:subject:to :from:sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=LMIuExQSrFPBM0wv+9dmmZQLzAWZOrX/MrkSq8WXas0=; b=tmB7sWD8tbMIyRL2FPLXt7SjBYngOcBBCDC2jzkaYYqOr964I46Z60H6XXEIsRa+78 PkZsIWPF8PHvKQKXkYDUzj61XmfH5zFf9R/aTeBcoxVnzbIm5GFhZ+GxoiEjyvkrT+t+ 8XSlN1eCxOow/ABE+8SwUe8401BXY+AccsBxHwHyNK2qy99KpJpCDrtioBJZ3MvsDGGf gSXzMUQhQIJlP+nV23lZs0Znnxwc9o2q0T1NJ1qr4IRYW1tmcjCcK7f0F3XflgYVlGXn 46W2qVTMoXaY5nJS28YBUpRPvM6tIqZS0QqvAWqp09f/d3ZbU79/v1wyP33XXq6ddR3L 4QZA== X-Gm-Message-State: AOJu0Yw087VZB95Nohh4ogpmSh4Ehf8Gf8UuFKtum8VGlLg2ijEVPYIK BWEiH8Z0GnZid7IZmL7/LoRBAGBQLlyPFij7dXrgSuJQnW7/RLb+rNu7woUgTp0= X-Google-Smtp-Source: AGHT+IEnWu5nDf/5ss7G5jnc+gBMkPkFb8T9uvA2DWVG3HQgBeFQCcLLqQZ2HNo/GcdW2mB05Tkrdw== X-Received: by 2002:a05:600c:1c22:b0:41b:4caa:554c with SMTP id 5b1f17b1804b1-41fbc9323damr10175465e9.2.1715218575879; Wed, 08 May 2024 18:36:15 -0700 (PDT) Received: from [127.0.0.1] ([41.83.205.32]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-41f87c251f8sm40383855e9.19.2024.05.08.18.36.15 for (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 08 May 2024 18:36:15 -0700 (PDT) From: UBAX MUZNA X-Google-Original-From: UBAX MUZNA Content-Type: text/html To: dev-commits-src-main@freebsd.org Subject: SALAM; Message-ID: <439e4519-3bbe-4f98-e5a4-482e4382989a@gmail.com> Content-Transfer-Encoding: 7bit Date: Thu, 09 May 2024 13:36:55 +0000 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 X-Spamd-Bar: ++ X-Spamd-Result: default: False [2.03 / 15.00]; DATE_IN_FUTURE(4.00)[11]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; SUBJ_ALL_CAPS(0.45)[6]; FORGED_SENDER(0.30)[missubaxmuzna@gmail.com,zenababdul34@gmail.com]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_HTML_ONLY(0.20)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36]; NEURAL_HAM_SHORT(-0.02)[-0.023]; FREEMAIL_ENVFROM(0.00)[gmail.com]; RCPT_COUNT_ONE(0.00)[1]; GREYLIST(0.00)[pass,body]; TAGGED_FROM(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:~]; TO_MATCH_ENVRCPT_ALL(0.00)[]; ARC_NA(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org]; RCVD_COUNT_TWO(0.00)[2]; FROM_HAS_DN(0.00)[]; FROM_NEQ_ENVFROM(0.00)[missubaxmuzna@gmail.com,zenababdul34@gmail.com]; DKIM_TRACE(0.00)[gmail.com:+]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; SINGLE_SHORT_PART(0.00)[]; MISSING_XM_UA(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2a00:1450:4864:20::542:from] X-Rspamd-Queue-Id: 4VZZW96kQdz4thH Salam / hw r u From nobody Thu May 9 07:56:00 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZkpn1jJyz5KnwZ; Thu, 09 May 2024 07:56: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 4VZkpn1GjMz4Wyr; Thu, 9 May 2024 07:56:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715241361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OQATEEKFSMEN7d2tBv2F9rkgmKMeIm5zhUAsb/H+soQ=; b=ITaUT77mThOXAjCJ/kyXDWx8xOofEYcMfTor14SOYhqP78l0Rl5QgVXWLuJLLpZkWi9jEe 4fhKGAvtIX//9ohzYSUKiyqQ8r4CkhPibt7PXRVXGHuAxewnwommjQ5nqbvc7aUTvNSqNT +tkew9eDNpMWoWn5cmoaO5KOcJZM7GNQVbozzzb7jzAcZroAhVEkohVnUkcl78QtSGGo6Q EN3hJPoi2M9rAP4jEKmtzqpg6ws+zQlS8SUYiGQQOtP8K4eUgUi9rhieqlAXXY9GbFKgwh bAc1YDVd5sYZUa9McDhU5+vvvf4vqZjAlQk7gkR54+EFbnhKu55atnM9f0HslQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715241361; a=rsa-sha256; cv=none; b=pLP7loxKmq+p8tq2OcZ2Q+0Aez9biDw2mGEdecGIFKbEYVzsl5r/0ZEZkKKEKyBcuMB1wC pQmiy8Y4Ih3KFWdGgs6f22KDIway5ho4SIm6ADpod03N8DsPQhZ2AA3syjeGvbraTQzlNQ xZi+23xm0rXE2Nzu2orgZYyLlK+2EbcGnVmzdACrBqVhgu75y/RVDPkjrRXuWzc8fuNBkC uE7n9ELf9MwcW/e/5w54yO+Wz/BnDhfXN/uU+oVwKwNTJ87klroQwZZkr5wZ8XARpINn/g rG5SmgI/Yic4e6JTEac89OU2PjVcAb2PDPKjfPlfaRKJXOrHV6DfKpIXgsB0AQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715241361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OQATEEKFSMEN7d2tBv2F9rkgmKMeIm5zhUAsb/H+soQ=; b=N1gqsPWrjNzyzhN4TXgMQoxVcSF+UlxlBcgTsQ84d3vBo6ZHXHjFEGfyVeOaP5z7YBaqiM x6fduc4sTq293UKWbVMlqGo+mcuaNdV5UAN3FtbKWASvGy5SECEU0xR1ERG3A19pOUyKL/ bgJMpX5uUpRJhfq1xtV0MfXVQMpYBi6ggP8X/CGuaj+1lGy1Vlh/tinm3+Iv6om3/TWECM syjobkmjkNO9OiG7Yg6a/LM3z8SuQU3aVSEjM9OEavnMONLG3VIvB3dJqjiOtE5Rm9lSpg RI4sWMiqFvR9X5pnKQ/0Qvqh2FFzdqsZvHG0j+yWsHyn8LQvVh/JNZoFN6rBAA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZkpn0lrKz115Z; Thu, 9 May 2024 07:56: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 4497u1t0091149; Thu, 9 May 2024 07:56:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 4497u02u091146; Thu, 9 May 2024 07:56:00 GMT (envelope-from git) Date: Thu, 9 May 2024 07:56:00 GMT Message-Id: <202405090756.4497u02u091146@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Colin Percival Subject: git: ce7756fdca1f - main - release: make dependencies, not recursive make List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ce7756fdca1f0a89a74bc406cd3d3ac1d1be1ffb Auto-Submitted: auto-generated The branch main has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=ce7756fdca1f0a89a74bc406cd3d3ac1d1be1ffb commit ce7756fdca1f0a89a74bc406cd3d3ac1d1be1ffb Author: Colin Percival AuthorDate: 2024-05-09 07:52:25 +0000 Commit: Colin Percival CommitDate: 2024-05-09 07:52:25 +0000 release: make dependencies, not recursive make For historical reasons, the vm-release and cloudware-release targets were written as recursive makes of ${VMTARGETS} and ${CLOUDTARGETS}; this worked fine until we started running `make release -jN` and had both VM and cloud targets depending on ${QEMUTGT}, at which point things exploded when we tried to build the port twice at the same time. Switch vm-release and cloudware-release to have make dependencies on their individual components; this way a single make process runs and is aware of the duplicate dependency (and only runs it once). MFC after: 5 days --- release/Makefile.vm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/release/Makefile.vm b/release/Makefile.vm index 1124680e3191..548b4c1cca3b 100644 --- a/release/Makefile.vm +++ b/release/Makefile.vm @@ -223,14 +223,16 @@ vm-install: ${DESTDIR}/vmimages/CHECKSUM.SHA256 .endif -vm-release: .if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES) - ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${VMTARGETS} +vm-release: ${VMTARGETS} +.else +vm-release: .endif -cloudware-release: .if defined(WITH_CLOUDWARE) && !empty(WITH_CLOUDWARE) && !empty(CLOUDWARE) - ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${CLOUDTARGETS} +cloudware-release: ${CLOUDTARGETS} +.else +cloudware-release: .endif .include "${.CURDIR}/Makefile.azure" From nobody Thu May 9 11:05:37 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZq1Y4MVpz5JPgW; Thu, 09 May 2024 11:05: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 4VZq1Y3vBJz4rp8; Thu, 9 May 2024 11:05:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715252737; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jqiq2Gz4Bo8dNxga3vaJvSoeRMa0pMTGD22mXGJcw6o=; b=OChV+9Zrz37ah2tm5MVIfA4Wj0auT+j8aA7cdQY/yW/cAemGSh/VwVlpJvlFXqYfDPSYxP TK7qwanfCACCPABRbCSh7g2eizq0FkoXTZgLW7mx5r8D5uK1lvBPgYK9m7i/OJKzbAc4jo jMb/6mLSMOVMHBaTiZaH1dWzUnLEKlIS8fFTl82Ij8r9nFYmOibcKtCiSXnvdjUc5G12pO gKTq/bGPYP3Eer/NmL1DvLB5o1DlAlKOd/re0ctZ2GOCGmwYLGCsnJu884NOyRXl8jj4ku qH8vY+h8MRFDFKJkVj+8GP0HbVBjvIIdvm19mzLHSxmKmYXusnbLY1+WDcAzag== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715252737; a=rsa-sha256; cv=none; b=A5e6eRQrlNyQS9rv+yzQNUyZL+zdMem/tClJdfDZ3B/ciTPvONHCyUlQqhYvCIetmVPYQd MllfLDsHARIr9p2vwUIE3K5oQaoXwzT/bhx/QtyCqraeHSexivU1q5YxE6gUvePbapOhX4 Y0L5nQ7fpY1NY8FFW7JmAbemZKxrZJyZFOYUTyIHnx4dACXo++ZL42/uDzxglcBucxmPct gdxg7InyCHPeSYtYIrh8IqUxcLaf9Vp8gmlowo5E2HjYOEkq4cqNl2W+pruXnHB5riqNcJ LlulK8ZQ5uwo3T4UxSAmiaOlDpRIROMTQVZNTkPfrBuKGwsLCu2k+Nl2n0RqKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715252737; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jqiq2Gz4Bo8dNxga3vaJvSoeRMa0pMTGD22mXGJcw6o=; b=QICPEmDNJLyDwUQp2K2BKj3BAzcfXJ/9lcSbWyfgM131+KVseJSi13TBXPaDILwsOmkMso biQdcISrw9AbjyU196mEmPAZnPcOr7SIjfq/bX/g8bcTwR3PrHexMKLWSr/avBSV8Ov7BP LNLJ5KN14g9I+RjKBpY8tgTK/L2UhmiS9atMKFR0mVmlwXFDri0bKhInfzCUQxfaLTTgqY g3OZEvv0S7faVlWywNWIKnfIfe5uILyixMzfQ/DTZ/dCcsUMJmsFooPAXZAN8HrzmM7bMI AwCqETaXi7Da7lk0OX76njpMJkQ/QRBghuFYGFXb/xiuJX5ECo6w3Te1dKJfvQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZq1Y3NRrz15n5; Thu, 9 May 2024 11:05:37 +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 449B5buV013009; Thu, 9 May 2024 11:05:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449B5bm9013006; Thu, 9 May 2024 11:05:37 GMT (envelope-from git) Date: Thu, 9 May 2024 11:05:37 GMT Message-Id: <202405091105.449B5bm9013006@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Roger Pau =?utf-8?Q?Monn=C3=A9?= Subject: git: ee72bc1d1ff8 - main - xen/debug: remove usage of sbuf_{clear,finish}() on drained sbuf List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: royger X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ee72bc1d1ff8aa8704d5861a10ea3514154ff74d Auto-Submitted: auto-generated The branch main has been updated by royger: URL: https://cgit.FreeBSD.org/src/commit/?id=ee72bc1d1ff8aa8704d5861a10ea3514154ff74d commit ee72bc1d1ff8aa8704d5861a10ea3514154ff74d Author: Roger Pau Monné AuthorDate: 2024-05-02 13:12:16 +0000 Commit: Roger Pau Monné CommitDate: 2024-05-09 10:50:08 +0000 xen/debug: remove usage of sbuf_{clear,finish}() on drained sbuf Using sbuf_clear() on a drained sbuf is explicitly prohibited, and using sbuf_finish() after printing a trace leads to a single trace being printed, as after calling sbuf_finish() further attempts to use the same sbuf will lead to a panic. While there also switch to using xen_emergency_print() instead of attempting to write directly to the hypervisor console. xen_emergency_print() can be implemented per-arch to use a different mechanism than the console hypercall (note the default implementation still uses the console hypercall). Fixes: df62b8a25f47 ('xen: add a handler for the debug interrupt') Sponsored by: Cloud Software Group Reviewed by: markj Differential review: https://reviews.freebsd.org/D45060 --- sys/dev/xen/debug/debug.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/dev/xen/debug/debug.c b/sys/dev/xen/debug/debug.c index f17d0c612262..2889b5efdba7 100644 --- a/sys/dev/xen/debug/debug.c +++ b/sys/dev/xen/debug/debug.c @@ -58,8 +58,11 @@ static struct sbuf *buf; static int xendebug_drain(void *arg, const char *str, int len) { - - HYPERVISOR_console_write(__DECONST(char *, str), len); + /* + * Use xen_emergency_print() instead of xc_printf() to avoid the + * overhead of parsing a format string when it's not needed. + */ + xen_emergency_print(str, len); return (len); } @@ -75,10 +78,9 @@ xendebug_filter(void *arg __unused) stack_save(&st); mtx_lock_spin(&lock); - sbuf_clear(buf); xc_printf("Printing stack trace vCPU%u\n", XEN_VCPUID()); stack_sbuf_print_ddb(buf, &st); - sbuf_finish(buf); + sbuf_drain(buf); mtx_unlock_spin(&lock); #endif From nobody Thu May 9 12:10:22 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZrSH0DHXz5JWvf; Thu, 09 May 2024 12:10: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 4VZrSG6bZ7z4yrw; Thu, 9 May 2024 12:10:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715256622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nd6Dn3XHd3SURnTWsj4V3OvHhtgmir3cKq4tYCYEoFs=; b=wKRvvvmYqCLNhzi/vlULkbWfZVclJW62WY+EGsHAM8qxb+5w5et7BsIOwPEp1lK3/7qRtJ c91ocyEwG5+Q660OpUgDfK5a6dN2qDWfptpORykegmG9dDoJDu+z+IznRVZjSs9Nez/hbK wxOUp9JHteU5FO8Gp5Nk4yWB4Has8Y+0QyQcUx44sJkjiqgxIzInf0mOXeqEVT3nIpUyPU R8EVkeyy6I+79YVfms5/qC9yaKp/hvyRkD5M1r3XzIcsh2Gx+xqg1ulPWauinnfdo7qkSK bDCTY5gZTSyhV8ke97zzY++koRh1ALuRUHHq8mUaN+siIzHkACQYHctwojrptQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715256622; a=rsa-sha256; cv=none; b=tyWmtc7Cv7tVIlxxNNCJbM/GznY1PGY/fLKyVDnnRVxqMXumc5Bqk+bXmelBApvaPb73a+ c5YJXC27nzV90BDn4YMCxEL8KXDR+8mrjbM42wzJqU1Sx8EaG1aPr5XAONR7L6Q7Xa+5AM oYvvN+y58AlG2L4R2JZDPkPSmHBSzg/NFr7nmTQSr3RVEJkPoutxSmjS+nK12Qv1hAcRoG i3MYWITsqFKQp2cYTHhbtG36o44rmdSFO0aFUoLteQMc4njFyodEEkOdwWw/93y+glKO/M 7IegBkWcXKttLKgzXPXCk6eukOZJ8ux4Bq56TYqberVekigFPNHhjh7TCAELww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715256622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nd6Dn3XHd3SURnTWsj4V3OvHhtgmir3cKq4tYCYEoFs=; b=PkGdItMvLgIXfaILt+L3PcV6hblfJbDdWEjv6cCtDfEIZnvkWqi2ArK6+n0Md7GfyIKIeY j9VUM8B+xsbWqKrh5VylMkqKGVAmQCIxZVjWEk3v98wVI1Cx5i2f+UUU9znJE9Cp6EXKxa 7aMeziEEFG8ua+0b4BzKsq7C7wCsrRspG9TgVzwZ3RDaaRwZtW8yQ9GY6PM6t5BbyO5sSP Xv82wAmQTsI2nO2hEainx9NJxfgbpyxe6a8PadelfygZMoidTL4blcHsM3PJFZ1Jt5Qj2B R4ggW1Y0EPc1up4I885G19IZkrWlDwuT0JPk4y0ZeecKVV2SrpYqfx2RgwvdbQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZrSG6Bs9z17Xs; Thu, 9 May 2024 12:10: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 449CAM0T023570; Thu, 9 May 2024 12:10:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449CAMk0023567; Thu, 9 May 2024 12:10:22 GMT (envelope-from git) Date: Thu, 9 May 2024 12:10:22 GMT Message-Id: <202405091210.449CAMk0023567@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: f1612e7087d7 - main - libpfctl: fix file descriptor leak List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f1612e7087d7c3df766ff0bf58c48d02fb0e2f6d Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f1612e7087d7c3df766ff0bf58c48d02fb0e2f6d commit f1612e7087d7c3df766ff0bf58c48d02fb0e2f6d Author: Kristof Provost AuthorDate: 2024-05-09 11:52:22 +0000 Commit: Kristof Provost CommitDate: 2024-05-09 12:07:07 +0000 libpfctl: fix file descriptor leak pfctl_get_rules_info() opened a netlink socket, but failed to close it again. Fix this by factoring out the netlink-based function into a _h variant that takes struct pfctl_handle, and implement pfctl_get_rules_info() based on that, remembering to close the fd. While here migrate all in-tree consumers to the _h variant. MFC after: 3 days Sponsored by: Rubicon Communications, LLC ("Netgate") --- lib/libpfctl/libpfctl.c | 30 ++++++++++++++++++++++-------- lib/libpfctl/libpfctl.h | 3 +++ sbin/pfctl/pfctl.c | 9 +++++---- sbin/pfctl/pfctl_optimize.c | 2 +- sbin/pfctl/pfctl_parser.h | 1 + usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c | 2 +- 6 files changed, 33 insertions(+), 14 deletions(-) diff --git a/lib/libpfctl/libpfctl.c b/lib/libpfctl/libpfctl.c index 6da3b6969107..479b96123012 100644 --- a/lib/libpfctl/libpfctl.c +++ b/lib/libpfctl/libpfctl.c @@ -1336,22 +1336,20 @@ static struct snl_field_parser fp_getrules[] = { SNL_DECLARE_PARSER(getrules_parser, struct genlmsghdr, fp_getrules, ap_getrules); int -pfctl_get_rules_info(int dev __unused, struct pfctl_rules_info *rules, uint32_t ruleset, +pfctl_get_rules_info_h(struct pfctl_handle *h, struct pfctl_rules_info *rules, uint32_t ruleset, const char *path) { - struct snl_state ss = {}; struct snl_errmsg_data e = {}; struct nlmsghdr *hdr; struct snl_writer nw; uint32_t seq_id; int family_id; - snl_init(&ss, NETLINK_GENERIC); - family_id = snl_get_genl_family(&ss, PFNL_FAMILY_NAME); + family_id = snl_get_genl_family(&h->ss, PFNL_FAMILY_NAME); if (family_id == 0) return (ENOTSUP); - snl_init_writer(&ss, &nw); + snl_init_writer(&h->ss, &nw); hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GETRULES); hdr->nlmsg_flags |= NLM_F_DUMP; @@ -1363,17 +1361,33 @@ pfctl_get_rules_info(int dev __unused, struct pfctl_rules_info *rules, uint32_t return (ENOMEM); seq_id = hdr->nlmsg_seq; - if (! snl_send_message(&ss, hdr)) + if (! snl_send_message(&h->ss, hdr)) return (ENXIO); - while ((hdr = snl_read_reply_multi(&ss, seq_id, &e)) != NULL) { - if (! snl_parse_nlmsg(&ss, hdr, &getrules_parser, rules)) + while ((hdr = snl_read_reply_multi(&h->ss, seq_id, &e)) != NULL) { + if (! snl_parse_nlmsg(&h->ss, hdr, &getrules_parser, rules)) continue; } return (e.error); } +int +pfctl_get_rules_info(int dev __unused, struct pfctl_rules_info *rules, uint32_t ruleset, + const char *path) +{ + struct pfctl_handle *h; + int error; + + h = pfctl_open(PF_DEVICE); + if (h == NULL) + return (ENOTSUP); + error = pfctl_get_rules_info_h(h, rules, ruleset, path); + pfctl_close(h); + + return (error); +} + int pfctl_get_rule(int dev, uint32_t nr, uint32_t ticket, const char *anchor, uint32_t ruleset, struct pfctl_rule *rule, char *anchor_call) diff --git a/lib/libpfctl/libpfctl.h b/lib/libpfctl/libpfctl.h index 2937a36a8a47..73282eb3cc3d 100644 --- a/lib/libpfctl/libpfctl.h +++ b/lib/libpfctl/libpfctl.h @@ -412,6 +412,9 @@ int pfctl_get_eth_rule(int dev, uint32_t nr, uint32_t ticket, char *anchor_call); int pfctl_add_eth_rule(int dev, const struct pfctl_eth_rule *r, const char *anchor, const char *anchor_call, uint32_t ticket); +int pfctl_get_rules_info_h(struct pfctl_handle *h, + struct pfctl_rules_info *rules, uint32_t ruleset, + const char *path); int pfctl_get_rules_info(int dev, struct pfctl_rules_info *rules, uint32_t ruleset, const char *path); int pfctl_get_rule(int dev, uint32_t nr, uint32_t ticket, diff --git a/sbin/pfctl/pfctl.c b/sbin/pfctl/pfctl.c index 17901b04a130..19d05c415f02 100644 --- a/sbin/pfctl/pfctl.c +++ b/sbin/pfctl/pfctl.c @@ -1283,14 +1283,14 @@ pfctl_show_rules(int dev, char *path, int opts, enum pfctl_show format, } if (opts & PF_OPT_SHOWALL) { - ret = pfctl_get_rules_info(dev, &ri, PF_PASS, path); + ret = pfctl_get_rules_info_h(pfh, &ri, PF_PASS, path); if (ret != 0) { warn("DIOCGETRULES"); goto error; } header++; } - ret = pfctl_get_rules_info(dev, &ri, PF_SCRUB, path); + ret = pfctl_get_rules_info_h(pfh, &ri, PF_SCRUB, path); if (ret != 0) { warn("DIOCGETRULES"); goto error; @@ -1328,7 +1328,7 @@ pfctl_show_rules(int dev, char *path, int opts, enum pfctl_show format, } pfctl_clear_pool(&rule.rpool); } - ret = pfctl_get_rules_info(dev, &ri, PF_PASS, path); + ret = pfctl_get_rules_info_h(pfh, &ri, PF_PASS, path); if (ret != 0) { warn("DIOCGETRULES"); goto error; @@ -1435,7 +1435,7 @@ pfctl_show_nat(int dev, char *path, int opts, char *anchorname, int depth) snprintf(&path[len], MAXPATHLEN - len, "%s", anchorname); for (i = 0; i < 3; i++) { - ret = pfctl_get_rules_info(dev, &ri, nattype[i], path); + ret = pfctl_get_rules_info_h(pfh, &ri, nattype[i], path); if (ret != 0) { warn("DIOCGETRULES"); return (-1); @@ -2130,6 +2130,7 @@ pfctl_rules(int dev, char *filename, int opts, int optimize, sizeof(trs.pfrt_anchor)) >= sizeof(trs.pfrt_anchor)) ERRX("pfctl_rules: strlcpy"); pf.dev = dev; + pf.h = pfh; pf.opts = opts; pf.optimize = optimize; pf.loadopt = loadopt; diff --git a/sbin/pfctl/pfctl_optimize.c b/sbin/pfctl/pfctl_optimize.c index 95292999c50a..9b43a840c06f 100644 --- a/sbin/pfctl/pfctl_optimize.c +++ b/sbin/pfctl/pfctl_optimize.c @@ -889,7 +889,7 @@ load_feedback_profile(struct pfctl *pf, struct superblocks *superblocks) TAILQ_INIT(&queue); TAILQ_INIT(&prof_superblocks); - if (pfctl_get_rules_info(pf->dev, &rules, PF_PASS, "")) { + if (pfctl_get_rules_info_h(pf->h, &rules, PF_PASS, "")) { warn("DIOCGETRULES"); return (1); } diff --git a/sbin/pfctl/pfctl_parser.h b/sbin/pfctl/pfctl_parser.h index d0f3bc3c303c..6534baa9a7dd 100644 --- a/sbin/pfctl/pfctl_parser.h +++ b/sbin/pfctl/pfctl_parser.h @@ -75,6 +75,7 @@ struct pfr_buffer; /* forward definition */ struct pfctl { int dev; + struct pfctl_handle *h; int opts; int optimize; int loadopt; diff --git a/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c b/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c index e618683845be..1086aa7dcf82 100644 --- a/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c +++ b/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c @@ -1519,7 +1519,7 @@ pfl_scan_ruleset(const char *path) struct pfl_entry *e; u_int32_t nr, i; - if (pfctl_get_rules_info(pfctl_fd(pfh), &rules, PF_PASS, path)) { + if (pfctl_get_rules_info_h(pfh, &rules, PF_PASS, path)) { syslog(LOG_ERR, "pfl_scan_ruleset: ioctl(DIOCGETRULES): %s", strerror(errno)); goto err; From nobody Thu May 9 14:07:56 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZv3w73dHz5JmGw; Thu, 09 May 2024 14:07: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 4VZv3w6M99z43Qd; Thu, 9 May 2024 14:07:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715263676; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yH7UMmuBZW390vw6ewrjasijf3wLFpsRjpYvSYysr60=; b=tn9YaE0p0Nq2/mHP+9/L8BekVTX8/JPAqRGhghjBU1GxacuHEcAlzvNAA1j0tbEbdzWNF6 brQJzAHrvODXOOWXhX9icR8DF8UOjcEJfR9ur0kQwhTiRccj7292iis6Y30JFeVTSADslO DtGG/flUzkjGJh5YPCYBIyqGU19sarX1MTquBlFQZJQ+ztCrCqRC8UCeEfwByonwWIiqoM XvHrRj3oSfLOrSaA0/JhjGcnK0hlqCPgFtMTItV4vH9DTlKsgiXIP+Z1dcAyKSIrNYY1To m5GsNmfYVN42kc/xjnHJWaEX/lJYIaEXN9DYIr7eJ0XfR6wm0URNkgAf2UKM6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715263676; a=rsa-sha256; cv=none; b=HS4gSbOFKWCfpmsf0eFzXjlRMj7UAjIJcRcPqs0pUZ+pq5nGWoNM6yTyRqqDpiCrrUmqQA Q4tvVQP6X79JQOYLTk3XmlXoHOuAV4SkF/yKTEe8twLRBEDFiI9pn4BG8/Ysl8qoPhEDzJ dIUEAsPqxymhLbkiXS8YOxcVJGcTUMPqcv8GMMRSfScaOy7bdmUevKY2qg3kWlkg296I2t q9ybHFLnPi1Ydd1G3dDT2iOpVxPOyh0AePbb2GswazYkw+uR4kVRZC8EDG3tXbyfUNWjxw wCOVaR3Hw0rH6T0lAmhfnlK8BlWcCOSLD7f+YyiSrysKhK9p1lg7odAslzpFKw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715263676; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yH7UMmuBZW390vw6ewrjasijf3wLFpsRjpYvSYysr60=; b=WNTuPKW20NgJs5wbNcKBNKgAc0kPCxJLsj+HVR1SO0YfQJ0j/tx02rzWzxpk8Pm9MxovjQ yg5jdeUkKccxR8yR/6mAxbNKr5mnvH3PABo2FEDjZnMhxsXL0RLSnIXcqTMqaVTev0D7tz 0mNJUl5/eCmkC3sRUSHNREMqqfwS/pJmWZmsi73/rcGZ2zv5pdEIKZAyjUdjqkXYAwjfs/ bPQgzu+vCLLrjFeGLz4fTkKzIOQWcALZ2uQNRK3wuTKANcSkDPDvlRUS2+9du3MgW8Jc07 U/Rgl1lNAIeJjxSt9z+M7c7ykNhiDPOxVT84wp255DxbQKYSUs3jUGda0VenKg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZv3w5yYhz1BJp; Thu, 9 May 2024 14:07:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 449E7udZ017751; Thu, 9 May 2024 14:07:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449E7ul5017748; Thu, 9 May 2024 14:07:56 GMT (envelope-from git) Date: Thu, 9 May 2024 14:07:56 GMT Message-Id: <202405091407.449E7ul5017748@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 3d40cc7ab888 - main - sctp: add missing check List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3d40cc7ab888a37a3ba085f377a057396a7d2476 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=3d40cc7ab888a37a3ba085f377a057396a7d2476 commit 3d40cc7ab888a37a3ba085f377a057396a7d2476 Author: Michael Tuexen AuthorDate: 2024-05-08 21:01:06 +0000 Commit: Michael Tuexen CommitDate: 2024-05-08 21:03:34 +0000 sctp: add missing check If memory allocation fails, m is NULL. Since this is possible, check for it. Reported by: Coverity Scan CID: 1086866 MFC after: 3 days --- sys/netinet/sctp_output.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/netinet/sctp_output.c b/sys/netinet/sctp_output.c index a8facff6b917..e0106831f06a 100644 --- a/sys/netinet/sctp_output.c +++ b/sys/netinet/sctp_output.c @@ -6705,7 +6705,9 @@ sctp_sendall_iterator(struct sctp_inpcb *inp, struct sctp_tcb *stcb, void *ptr, } else { m = sctp_get_mbuf_for_msg(sizeof(struct sctp_paramhdr), 0, M_NOWAIT, 1, MT_DATA); - SCTP_BUF_LEN(m) = sizeof(struct sctp_paramhdr); + if (m != NULL) { + SCTP_BUF_LEN(m) = sizeof(struct sctp_paramhdr); + } } if (m != NULL) { struct sctp_paramhdr *ph; From nobody Thu May 9 14:18:37 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZvJF5wLNz5Jn6t; Thu, 09 May 2024 14:18: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 4VZvJF5H5qz43nq; Thu, 9 May 2024 14:18:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715264317; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ufBzB65+tXgBGIF8oxJcJWx/nFinkbjsFWyEmlUT+D4=; b=rkh+KIsaJwwr47+vlaLomJ9fbWMYR/F7dMmARO1YUkZFGIMRk9ylN17ELx5pnaIxhJX6h0 zoJMIjtfD0lu7ljE5WH9Ss6GTFO593feNVPrwotEKxTtO3wa8mDK1WBPw+J+S8sFzINYbb ljsM+eZa3OzLXhLHvaKzX8/j+xSP3Fny5nirchobVdkswYHT6IeJf/LRxh+teFldF7xjMQ 3BjfwFVln7yIJaEY9DLgkxTm8RJToW5gOC7hCan1NZ6oN7vWj+dmB3yBaMB56H9Ac+12jM L+26U8yo+AnycvgeRsxNiWMSGV4nZipETTrOadRuDM+B9TB5kFFy+vK2HRx22A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715264317; a=rsa-sha256; cv=none; b=KSOWgJOsDEXRYXErfYx9bb0lHZK2YqKzRwYgTIcZsy+eWve0GWNvWaFzi4Dt68q+t1M4G5 nZh9ue2DOmLj+zhPORn9Ch5jkUQvt93sON1lfWJyBphorrqjgMkeaF7zMVUOHPnWhaXEYT Wj0POzyXrDJPMuRsxp9HshY1+kDK7BLHk9exT55z/HdR9tPnGU5pdLH09Q4agkQCjXbsTN Tn0rFSe8DiI6peG4udpQ6LtXoSzosNxmXz+jORgQpV7DA/fBVt6PgBO1kyDZm6zjY+YtSy zAH+fW+CKhj+te5/+t/t3HJdDnNVSCBHNx3/TCjoP3ob6VHeBCk+6KeMYo7VqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715264317; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ufBzB65+tXgBGIF8oxJcJWx/nFinkbjsFWyEmlUT+D4=; b=FOqpCerW6hnQlkZEnlbnW7HeNPlME16Rn/021YfrZp788HzcEoLH8iiN36e2aBbY7bXiP5 jQlvrzFP2gHqWQac3xlL+N0aLme20XyNxgR1TZQ0U9AfT91ZKpVzkgetxaUedzwS4JOzFf D7u6+NSo99859aZqP9mYyxUz5FQhRxH0/YlYu2yREfefUofL7kHqRjZUyQofkP0WfY5ugj ahsFDM2xBCx6IcrsrfznZFrm0FoQ6Ju4ecHu7PoZCcloXSTdxC5EpNGnql6GfHpuvonijs Xi//OEvXzD/gtXMmv8AJCjtMG2d//8lqRk/4F2Xmu/ZWvOMvQ4z6axEWZN7v1Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZvJF4YF2z1B8M; Thu, 9 May 2024 14:18:37 +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 449EIbe9034252; Thu, 9 May 2024 14:18:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449EIbMD034249; Thu, 9 May 2024 14:18:37 GMT (envelope-from git) Date: Thu, 9 May 2024 14:18:37 GMT Message-Id: <202405091418.449EIbMD034249@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 52e41d1a5bd9 - main - Update example from gcc6 to gcc13 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 52e41d1a5bd92ca1849a0f445915a4c6d63334e0 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=52e41d1a5bd92ca1849a0f445915a4c6d63334e0 commit 52e41d1a5bd92ca1849a0f445915a4c6d63334e0 Author: Warner Losh AuthorDate: 2024-05-09 14:16:15 +0000 Commit: Warner Losh CommitDate: 2024-05-09 14:16:15 +0000 Update example from gcc6 to gcc13 We only "support" gcc12 and gcc13 for cross building, for some value of "support". Update the example from gcc6 to gcc13. Sponsored by: Netflix --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index b622897b6678..b2613b68b645 100644 --- a/Makefile +++ b/Makefile @@ -96,7 +96,7 @@ # # Once you have installed the necessary cross toolchain, simply pass # CROSS_TOOLCHAIN=${TARGET_ARCH}-gccN while building with the above steps, -# e.g., `make buildworld CROSS_TOOLCHAIN=amd64-gcc6`. +# e.g., `make buildworld CROSS_TOOLCHAIN=amd64-gcc13`. # # The ${TARGET_ARCH}-gccN packages are provided as flavors of the # devel/freebsd-gccN ports. From nobody Thu May 9 14:49:51 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZw0J1c2Cz5Jr0S; Thu, 09 May 2024 14:49: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 4VZw0J14WJz47xF; Thu, 9 May 2024 14:49:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715266192; h=from:from:reply-to:subject:subject: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+8aG9FR/IgumZNkTF2EvVsr97uY3gCYX/hACH0JqAU=; b=vMc832be0fPScxEdrGbWfDgHRvPXffj88NgnX5ICd+mR3lyDRzWuA4by3EN32y0xv+d0Pe NOti4kmi37lL5mrIILXyfk154Qf/fnev2nmmkwUUpHLe5vl+n+GAUQi6VboBOdEqspf2pD 3xl4kK53Qt4rA2F6ykWe07/ZVvv3PuSmofC64PPtQmPO9ALlD7h/TMPhCCCGlFy9plnfCv UQykx66cpcp8d/qVHyKc0Q5QQ9PddLBxsCdI0Q+wT1C6lSlh3+AOLGjbpWshzpfvJYlmN2 YAqQgmaoxVtCqmFx4f2XbvjyDUuATSx8dJ3bprR4hpBEzoHiSskeRUMcFijd+g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715266192; a=rsa-sha256; cv=none; b=IEBouyZB8NfKH/lKAHDgexMqFb8rcjsf3C0R4jWCoSr8O0EBgkQqzx+fwp16qkpBvfMwPj 8P7SoebITaoBmq5U1OV4pZtohqMto0TMAsBzcGSMMnT4a5l2VnwutharKnrkEgZlOn6Few M4AneG12Jk6axwROPnXDisYRk8h81mWE+V3CCkWx/ktr+oYLon6OcR+JZ/R9rIg28o8eys 6aNr2956pKHypSf032/Bg+XtUli6L6QRWV7HQGIdlJxAp/0sBypWHcZFsrv9XH1ZhHiUeH JxfwzvR6bzTlWZhb3y/NLy30fyRWcHp9o7pYT6V42LZUR0agFHbN5+WYkLTH6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715266192; h=from:from:reply-to:subject:subject: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+8aG9FR/IgumZNkTF2EvVsr97uY3gCYX/hACH0JqAU=; b=YT6vg+ZE5Kkvs8I5r5FDCIrUwCEVhe1D9EZhjyWrgu0LkLP+3Bj96kETZbAtuuYRJZbpI9 rVatz6HQTG0OgmRR3NY+cksCiMAIYAmUT8tqEgLOXrRMyBPbzVmuw/iNFo9GFm/diVaOv4 FaQonaFrPEDlb3yhDOvwNUxDWtlrgGbRB/YlfyA4g3hikadYCazhpE6JVrdJI3ICZaOjMg Jb2ndJrTLs+qlVR4tZXaG+wbFo90C3guvyKgldRHSGjE+rfbT8QkRx3Oy3j7bJhIhKLv9P 9p7T/piFLKhB10iJZlUI420rGIR+Jyyd94WepQ07d2MlChxMxMexewxrsPfL2Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZw0J0Md8z1CGD; Thu, 9 May 2024 14:49: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 449EnpEg085236; Thu, 9 May 2024 14:49:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449EnplH085233; Thu, 9 May 2024 14:49:51 GMT (envelope-from git) Date: Thu, 9 May 2024 14:49:51 GMT Message-Id: <202405091449.449EnplH085233@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: e187fa569047 - main - sctp: fix sctp_sendall() when an mbuf chain is provided List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e187fa56904712cb4dac9e14c81c88821582aeb4 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=e187fa56904712cb4dac9e14c81c88821582aeb4 commit e187fa56904712cb4dac9e14c81c88821582aeb4 Author: Michael Tuexen AuthorDate: 2024-05-08 21:41:17 +0000 Commit: Michael Tuexen CommitDate: 2024-05-08 21:45:55 +0000 sctp: fix sctp_sendall() when an mbuf chain is provided In this case uio is NULL, which needs to be checked and m must be copied into the sctp_copy_all structure. Reported by: Coverity Scan CID: 1400449 MFC after: 3 days --- sys/netinet/sctp_output.c | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/sys/netinet/sctp_output.c b/sys/netinet/sctp_output.c index e0106831f06a..c146bda95c7c 100644 --- a/sys/netinet/sctp_output.c +++ b/sys/netinet/sctp_output.c @@ -6911,10 +6911,20 @@ static int sctp_sendall(struct sctp_inpcb *inp, struct uio *uio, struct mbuf *m, struct sctp_nonpad_sndrcvinfo *srcv) { - int ret; struct sctp_copy_all *ca; + struct mbuf *mat; + ssize_t sndlen; + int ret; - if (uio->uio_resid > (ssize_t)SCTP_BASE_SYSCTL(sctp_sendall_limit)) { + if (uio != NULL) { + sndlen = uio->uio_resid; + } else { + sndlen = 0; + for (mat = m; mat; mat = SCTP_BUF_NEXT(mat)) { + sndlen += SCTP_BUF_LEN(mat); + } + } + if (sndlen > (ssize_t)SCTP_BASE_SYSCTL(sctp_sendall_limit)) { /* You must not be larger than the limit! */ return (EMSGSIZE); } @@ -6926,12 +6936,10 @@ sctp_sendall(struct sctp_inpcb *inp, struct uio *uio, struct mbuf *m, return (ENOMEM); } memset(ca, 0, sizeof(struct sctp_copy_all)); - ca->inp = inp; if (srcv != NULL) { memcpy(&ca->sndrcv, srcv, sizeof(struct sctp_nonpad_sndrcvinfo)); } - /* Serialize. */ SCTP_INP_WLOCK(inp); if ((inp->sctp_flags & SCTP_PCB_FLAGS_SND_ITERATOR_UP) != 0) { @@ -6942,15 +6950,14 @@ sctp_sendall(struct sctp_inpcb *inp, struct uio *uio, struct mbuf *m, } inp->sctp_flags |= SCTP_PCB_FLAGS_SND_ITERATOR_UP; SCTP_INP_WUNLOCK(inp); - /* * take off the sendall flag, it would be bad if we failed to do * this :-0 */ ca->sndrcv.sinfo_flags &= ~SCTP_SENDALL; /* get length and mbuf chain */ - if (uio) { - ca->sndlen = uio->uio_resid; + ca->sndlen = sndlen; + if (uio != NULL) { ca->m = sctp_copy_out_all(uio, ca->sndlen); if (ca->m == NULL) { SCTP_FREE(ca, SCTP_M_COPYAL); @@ -6962,20 +6969,14 @@ sctp_sendall(struct sctp_inpcb *inp, struct uio *uio, struct mbuf *m, return (ENOMEM); } } else { - /* Gather the length of the send */ - struct mbuf *mat; - - ca->sndlen = 0; - for (mat = m; mat; mat = SCTP_BUF_NEXT(mat)) { - ca->sndlen += SCTP_BUF_LEN(mat); - } + ca->m = m; } ret = sctp_initiate_iterator(NULL, sctp_sendall_iterator, NULL, SCTP_PCB_ANY_FLAGS, SCTP_PCB_ANY_FEATURES, SCTP_ASOC_ANY_STATE, (void *)ca, 0, sctp_sendall_completes, inp, 1); - if (ret) { + if (ret != 0) { SCTP_INP_WLOCK(inp); inp->sctp_flags &= ~SCTP_PCB_FLAGS_SND_ITERATOR_UP; SCTP_INP_WUNLOCK(inp); From nobody Thu May 9 15:23:41 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZwlL0qypz5JvqT; Thu, 09 May 2024 15:23: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 4VZwlK5j1lz4DGW; Thu, 9 May 2024 15:23:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715268221; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BPOSrlO3i9fskdBRt8eE/bYVnxuTtg5eci608F3IIXc=; b=j66r5bWTfSo6PlXeEwtbcriR0OJ5u4hzCz4H8ZOPxweh2Av2o1y2pswB24+D/XuJRg2HyD eua0c9mvZBlH0qJjy6zx0fsVuJ0s+jiBDdlcUKkqWZM6Y0hDnOUbF/s3sAQ/uXbYXB5SxA jFMTFC3BKN/VsOxt/oIunbHjVqSUrIpEQ3ALfcWfA0kO2hFWtgRfL7vNDhk0h0WHDrlfjQ /dlejImZ9zOug+ZUy1uXMYkQoLuugLq5ZzwkIxxra+cpTA+5Fv1ZwZv5wjJESDujgHFmay J+98Td8bRKdFzzscAd5XaGbgZmWfBQgs1+A71fmoifcaRdcUoujAe9eb0ST3XQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715268221; a=rsa-sha256; cv=none; b=WljfCloDSCwkiiGYqrvo9eyfpqgvW5bZOO6Lt8lgchW/C6e/GgL3D/p5ZiWxKWO+iRS+UW wVBJyIISeAmkAISRx9yEtF3Hjws7ZJnUd/Ugs5vurrmIHMiA99Wm3arqE5kZ8sYlIRJYAF gRvPz6o8kTEsyXgmQcdYZa981sAozDYrEV17ENzS5jVzMdlp4exlcInSJpzHDouqGXCCzS s3oGeua8YBT4u7FAYDncvE/T23arwIiM419oMAwZcqJ5MoLzfKSoSCLhqaO9mTdOBchtuC 41NHTgFZVRgKjUGZqXOKVRqJ3UorN4mDlVlJKM+BwqalAi26jwEFhxnXuG2TuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715268221; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BPOSrlO3i9fskdBRt8eE/bYVnxuTtg5eci608F3IIXc=; b=GSCYIzZpvK5vkdNp3Mbs568hySUp9vXI+TcdDo0rVYSXg9pPntjvQOpu8pnSdoK4eGT23s ip2dzQIupczRE1J91zf7XvIBpW+GKYn24wSqkEzU4FXrL8Jn2mSIFVSsjnYpSxIOLcjSem G0xnDfACvIBwKUgoW53xkQsouJzhcYnxb1wB7ZxXxSffO8GP/1nZiGRPHrb9QDs+vq4Hb0 X8wTSUVPpQ/nN2w7J7LD3KJN4dDERnpHsXWiJ6BXxOCB/+EwzV0E2J7iTMQTgpWSIKf4M+ uk2AqIXH3oVj2H9qBW1e+o8cwbGpaOFej2kQF6r8K1SyWEFUpi1MlaACtLzrLg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZwlK5JP6z1DYk; Thu, 9 May 2024 15:23: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 449FNfIe052287; Thu, 9 May 2024 15:23:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449FNfIx052284; Thu, 9 May 2024 15:23:41 GMT (envelope-from git) Date: Thu, 9 May 2024 15:23:41 GMT Message-Id: <202405091523.449FNfIx052284@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 83dcc7790b11 - main - sctp: don't provide uninitialized memory to process_chunk_drop() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 83dcc7790b11e605c32ec9a091c6bba3bc921083 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=83dcc7790b11e605c32ec9a091c6bba3bc921083 commit 83dcc7790b11e605c32ec9a091c6bba3bc921083 Author: Michael Tuexen AuthorDate: 2024-05-08 22:17:13 +0000 Commit: Michael Tuexen CommitDate: 2024-05-08 22:17:13 +0000 sctp: don't provide uninitialized memory to process_chunk_drop() Right now, the code in process_chunk_drop() does not look the the corresponding fields. Therefore, no functional change intended. Reported by: Coverity Scan CID: 1472476 MFC after: 3 days --- sys/netinet/sctp_input.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index a55ef5ac1eab..0a8372a07362 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -4231,6 +4231,8 @@ sctp_handle_packet_dropped(struct sctp_pktdrop_chunk *cp, SCTP_STAT_INCR(sctps_pdrpmbda); } } else { + desc.tsn_ifany = htonl(0); + memset(desc.data_bytes, 0, SCTP_NUM_DB_TO_VERIFY); if (pktdrp_flags & SCTP_FROM_MIDDLE_BOX) { SCTP_STAT_INCR(sctps_pdrpmbct); } From nobody Thu May 9 15:49:13 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZxJn477pz5Jxpy; Thu, 09 May 2024 15:49: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 4VZxJn3YNWz4G4W; Thu, 9 May 2024 15:49:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715269753; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1N3IF5c1sVylkx69vI8bV3e278rELblKOQc7qPr+0UE=; b=krl8MPzz+k2zehfgUCZKZ19tTzqsnvWRXmWn7ImrA+2GOfrl6WY60SUG2TOmpurhHgtiMu Uxwbubv7LdPrdsvTSJBtqAKgfXmhEyKIuuZflVSXCkIFcZDa8e9evLv+36RocNSy3Zn9YH qYMhC4nJ1aDOPkD7yxYepKEEtLDmcgoL+e8mq/yFL2RV0jFFfrcAeBJlnTvQBSwlhxfIai j52SWOyZj7iRmGRo+04jdUx+3tbRAHkK4vuVlYYeLfiQQj3DIoTdCV7798RBJ6v3pDL7aI bBcl+1cZQH3DHSZU6+VkVfF5Sx5fUp2bv9UdgU8ESwUs1sV9ncAI6UkWNVeNQw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715269753; a=rsa-sha256; cv=none; b=xRLvRWkt2M9QngGosxxQQ66aaaQb1BEDhq1c+l27f5vYzT8QWvUhtpwKrFFv8FjngGgV0w BmmUGA8gRhW8wDhzjfcgn+cKtTTqmCRwUafMUgFsIA2eNDxOuyaUuwN4zMS05N6tRKcSTq 6wtr4+OxuiRQACL7bvzn09xo5bViApuFRsOLbe2Es55Ww4zN76B461mllMke2J1ikn55my qcMhAxX+9/y0Nzi7kdmbqAAtjeVgR1992xwdjYsBrtKK7Cgn3A4dxLCNc+dwEa6znsMlwk EE6AyqdOSHKxPFVrM8Jd3q5HR+9mJlXTusIhlTfacKUz+tVI8mFh/wuOOtdmbw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715269753; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1N3IF5c1sVylkx69vI8bV3e278rELblKOQc7qPr+0UE=; b=qUxRiendjCJ4O2oJSbrsBaJ0Lb7Kro1Dm1LEHuThhsxZ4N33FmZXq/2Y3SViHtCGTnqCXq R2QGnK6ZBJEGnXWJ2yBaF2eEISL2cy41HyUF5QJbaZHVKkbGwTe4hb8KrBzhG0UCjwQFwe +z0NAR8n6E1UXMuxlGvZcKVX7GGJyNRVd1Iii0jSIxDTOzFK6wzJd+XBimUUryxd5Mp2Se pL+ca+wUWm2qBLaLKexEazv5IR2JpHe8ZC9OWyEEGQnUtXj8JrwQ4ZnQtNvaab1X4HSk1l WAJKDBUJX/2FH2LnMTS2LulexHwr6jpEmWcYzA9AL6JoUPwXdMNPeouUkvpIkA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZxJn38DJz1DXB; Thu, 9 May 2024 15:49: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 449FnDoc086368; Thu, 9 May 2024 15:49:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449FnDMi086366; Thu, 9 May 2024 15:49:13 GMT (envelope-from git) Date: Thu, 9 May 2024 15:49:13 GMT Message-Id: <202405091549.449FnDMi086366@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 8c37094036a5 - main - sctp: allow stcb == NULL in sctp_shutdown() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8c37094036a5f00301c5f5f2be475b664dd5ea23 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=8c37094036a5f00301c5f5f2be475b664dd5ea23 commit 8c37094036a5f00301c5f5f2be475b664dd5ea23 Author: Michael Tuexen AuthorDate: 2024-05-08 22:43:28 +0000 Commit: Michael Tuexen CommitDate: 2024-05-08 22:43:28 +0000 sctp: allow stcb == NULL in sctp_shutdown() Consistently handle this case. Reported by: Coverity Scan CID: 1533813 MFC after: 3 days --- sys/netinet/sctp_usrreq.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/netinet/sctp_usrreq.c b/sys/netinet/sctp_usrreq.c index 3b0da87edce3..b9a3be5280ae 100644 --- a/sys/netinet/sctp_usrreq.c +++ b/sys/netinet/sctp_usrreq.c @@ -843,8 +843,10 @@ sctp_shutdown(struct socket *so, enum shutdown_how how) } sctp_free_a_readq(stcb, control); } else { - stcb->asoc.size_on_all_streams += - control->length; + if (stcb != NULL) { + stcb->asoc.size_on_all_streams += + control->length; + } } } SOCK_UNLOCK(so); From nobody Thu May 9 15:55:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZxS641XDz5Jybn; Thu, 09 May 2024 15:55: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 4VZxS63WRsz4H7G; Thu, 9 May 2024 15:55:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715270134; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=umtrogU33L1AfPuudF5feyJ5DaG8P6t5ixC64fvzM9Q=; b=mpIgPllODOy/UCwHPNRr+sp2bDUdfXZirlwZA1Oa5/kbwbwwi94i3wO3nIOTE9rWalMB7z A4MyhSlG92dTu8gjax0PyQOdKqn3uZdkiAm7Ui0RZfmJ1TKhuQX91am0eu9cWlQMNkpHfd d98am+/F12fWxbFKUWPIz+QB4tlwO8Wr66rh7DlaEvOA0dZKjsWY2spUgj5YPi81P7qYcP a9d+w9LaNGbtijaSPXbYGCmWSvw2tVmMuDV2lcUs9mhD/mOFgi2433sHA/yRVfHImjoqLy Bszsx7dRwuQHyop+XnFSOVEk+XOXWTh76MGjY34yJ4RoLiAELNfaTfGtyJc83Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715270134; a=rsa-sha256; cv=none; b=l9dx+xYZHLrlVmmtUTkg4h+GDzMuqd5/zjsN9ZSKVfY0vOba+cBcIR+NkA6pQ71t1WQnfM kySQrupYu4fnzIq7IZiokBVEmQVc1AUhMPPri6zcmakEh6A/fRCVQLONTiKTmAyr4zsrqP kL4pjH2W7Um78945jk9BWHmrw+4WkG1Vfn/ZkDn6SnoaEClgoarSGILoZeSki5nBHKtbRc CpxWUeFYj0uqH1hR/yLgvqZ+tvlf2ltIRlMUD4xCfYKSIZ3G6lBeJ5d/0G8oyR0tc3YV94 WEi83s3SSU90kI42wirvbnhakQhjnZ5VSdudMClcB6QFogbSPMkCceE2gNC4GQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715270134; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=umtrogU33L1AfPuudF5feyJ5DaG8P6t5ixC64fvzM9Q=; b=WYiEkHXAzdYdOvRlm9Txxi6GkX9y+hqYiBPXQv2toj5Inw+F+jBXggzAnUDG+udeh3j93G M3YDyWym92ZE+/lAc61c8Lq3m/f97TjTHokXGrme8LMfCGu7VM20BvpE5e7WSoQEyHv3ij XQw7H4kIgMifDT+ikqW4d1UUShcL1cPHGV72V5Z8SOr9p1fcxbf9dlJal+MdYLkcCuFLLj YQ8xH/M2pV2umQ3GJTpiQFJ0Ru75NKhQkuskxZHuOT8awzOdgYoVmzUAluHCB2g3kpvLW/ 8Gp1aXR9bp+HwGIg7caG7KB1rnyzCUfb7SaCiFGlQM2R5U50DXdzw/uVIHSkAQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZxS636qQz1DhJ; Thu, 9 May 2024 15:55: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 449FtYhA002304; Thu, 9 May 2024 15:55:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449FtYPh002301; Thu, 9 May 2024 15:55:34 GMT (envelope-from git) Date: Thu, 9 May 2024 15:55:34 GMT Message-Id: <202405091555.449FtYPh002301@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 0d15140d6d34 - main - sctp: minor cleanup List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0d15140d6d3470db45d823e4f3a5ec05693b097d Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=0d15140d6d3470db45d823e4f3a5ec05693b097d commit 0d15140d6d3470db45d823e4f3a5ec05693b097d Author: Michael Tuexen AuthorDate: 2024-05-08 22:51:09 +0000 Commit: Michael Tuexen CommitDate: 2024-05-08 22:51:09 +0000 sctp: minor cleanup No functional chnage intended. MFC after: 3 days --- sys/netinet/sctp_indata.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/sys/netinet/sctp_indata.c b/sys/netinet/sctp_indata.c index a30fd95fef30..4c40e0de4326 100644 --- a/sys/netinet/sctp_indata.c +++ b/sys/netinet/sctp_indata.c @@ -5241,6 +5241,10 @@ sctp_kick_prsctp_reorder_queue(struct sctp_tcb *stcb, uint32_t mid; int need_reasm_check = 0; + KASSERT(stcb != NULL, ("stcb == NULL")); + SCTP_TCB_LOCK_ASSERT(stcb); + SCTP_INP_READ_LOCK_ASSERT(stcb->sctp_ep); + asoc = &stcb->asoc; mid = strmin->last_mid_delivered; /* @@ -5278,11 +5282,9 @@ sctp_kick_prsctp_reorder_queue(struct sctp_tcb *stcb, /* deliver it to at least the delivery-q */ if (stcb->sctp_socket) { sctp_mark_non_revokable(asoc, control->sinfo_tsn); - sctp_add_to_readq(stcb->sctp_ep, stcb, - control, - &stcb->sctp_socket->so_rcv, - 1, SCTP_READ_LOCK_HELD, - SCTP_SO_NOT_LOCKED); + sctp_add_to_readq(stcb->sctp_ep, stcb, control, + &stcb->sctp_socket->so_rcv, 1, + SCTP_READ_LOCK_HELD, SCTP_SO_NOT_LOCKED); } } else { /* Its a fragmented message */ @@ -5352,8 +5354,7 @@ sctp_kick_prsctp_reorder_queue(struct sctp_tcb *stcb, strmin->last_mid_delivered = control->mid; if (stcb->sctp_socket) { sctp_mark_non_revokable(asoc, control->sinfo_tsn); - sctp_add_to_readq(stcb->sctp_ep, stcb, - control, + sctp_add_to_readq(stcb->sctp_ep, stcb, control, &stcb->sctp_socket->so_rcv, 1, SCTP_READ_LOCK_HELD, SCTP_SO_NOT_LOCKED); } @@ -5394,6 +5395,11 @@ sctp_flush_reassm_for_str_seq(struct sctp_tcb *stcb, * it can be delivered... But for now we just dump everything on the * queue. */ + + KASSERT(stcb != NULL, ("stcb == NULL")); + SCTP_TCB_LOCK_ASSERT(stcb); + SCTP_INP_READ_LOCK_ASSERT(stcb->sctp_ep); + if (!asoc->idata_supported && !ordered && control->first_frag_seen && SCTP_TSN_GT(control->fsn_included, cumtsn)) { From nobody Thu May 9 17:09:45 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VZz5j28WZz5K5ws; Thu, 09 May 2024 17:09: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 4VZz5j1Vlwz4RmN; Thu, 9 May 2024 17:09:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715274585; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=neYh4vzwq+ZlefrpOkW/Qbcqe1H2ODPeWoyn8vefmzY=; b=vm1JRh60eMySdUE56ABLtTn/CyEBit8jqUsuA3dnOlq88baqTphaVPSJlSJxFDPrlPBYFN ln58ULWONeIlmDmyZ4L4Vxlze2wbu7IvpsP2HhI8DauRm2RYWaUJ16bcmaT8ZXi/jDiYPj GV+rjyQgsEG02wH4o2m6ww43nQks/JL/bYcHTFHWywlpAZ+XojPiZ/F8YEvNCRpqZMCv4b m4It5lPAc9bb2MQIgmRSRuFcHl8s3oKORCbinQ4djC+msmNkaRgyG5uZO9/XJCXCa9bOmY Acc/kXQnIcMmpJcC4EiMGkB9TlQd3ElU+Q853c9uLuPq9dhPZ0li4YbyI4UDbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715274585; a=rsa-sha256; cv=none; b=lf1W/bG7W8P7P1P37vM6p3tWCRbr8AckCH12J0qX5ivv4C3opYCrubp1tgYn8yMw4KLKI4 3r2aHO8kWdphScPbQNKSoYkLzYfuZg9g9fpZTI/JOOX2KusP5KwviykgoxpahypZMzIyRC X3KXr8ItkLJ7zkNNx0T3TZk42RSDY0ghMqwjZ3GTYiPvN1ej/DDhMt3FOER99hmQKrjGE9 njpNdM3C7JXvgWfiyaxSkEYQPk8RaJIuBpQpli/THJdbVK2rGXuEOKsOm/VQHZpph9IGvM 9zo7J70sa/38fAn2OU/eM2tedxjmAkcJxxuekp2wqPWnyPBwlTGHXZsrKNrfZw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715274585; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=neYh4vzwq+ZlefrpOkW/Qbcqe1H2ODPeWoyn8vefmzY=; b=iLw0IDeO+Zr6YcGgi8SBAzRxT62qZY6WhPyAx6fRDnhLL4SWlMgjwQixNL6qP3Q/FMq/QB t/dAgSnDkU32FVCxI58CxMBucT+V7raY+6eA7MS0s1337h8r7gyLChH/BI4/lGFtFcsgJ2 Q/UtSy//MlUjOltjeOqpygQzFthRi8cR6IJrjbSlhw+dqCpvErvNaFd06408atNqbrQzyG vwA5X0JyFthrclk4z2eIjxmLX5ZjPbFgVPHZsFooERzVfdZud+IhCJ6dgKHDq+zcktZaEw k+A3E25cGv+5E+SpKhgWAKXjN+rA6hAscyLk8wgHuawMULBkF7ncG9/QJyKP0w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VZz5j12bmz1Gbt; Thu, 9 May 2024 17:09: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 449H9jjC022173; Thu, 9 May 2024 17:09:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449H9jj3022170; Thu, 9 May 2024 17:09:45 GMT (envelope-from git) Date: Thu, 9 May 2024 17:09:45 GMT Message-Id: <202405091709.449H9jj3022170@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alan Somers Subject: git: b2792a300ddb - main - fusefs: make the tests more robust to changes to maxphys List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: asomers X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b2792a300ddb8d8334b234fe7744f5141cc96103 Auto-Submitted: auto-generated The branch main has been updated by asomers: URL: https://cgit.FreeBSD.org/src/commit/?id=b2792a300ddb8d8334b234fe7744f5141cc96103 commit b2792a300ddb8d8334b234fe7744f5141cc96103 Author: Alan Somers AuthorDate: 2024-05-09 14:40:21 +0000 Commit: Alan Somers CommitDate: 2024-05-09 17:09:23 +0000 fusefs: make the tests more robust to changes to maxphys Remove assumptions in two test cases that maxphys won't be huge. Reported by: kib MFC after: 2 weeks Sponsored by: Axcient --- tests/sys/fs/fusefs/bmap.cc | 17 +++++++++++++---- tests/sys/fs/fusefs/write.cc | 2 +- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/tests/sys/fs/fusefs/bmap.cc b/tests/sys/fs/fusefs/bmap.cc index 48c9c7d038ed..30612079657d 100644 --- a/tests/sys/fs/fusefs/bmap.cc +++ b/tests/sys/fs/fusefs/bmap.cc @@ -77,8 +77,6 @@ class BmapEof: public Bmap, public WithParamInterface {}; /* * Test FUSE_BMAP - * XXX The FUSE protocol does not include the runp and runb variables, so those - * must be guessed in-kernel. */ TEST_F(Bmap, bmap) { @@ -105,8 +103,19 @@ TEST_F(Bmap, bmap) arg.runb = -1; ASSERT_EQ(0, ioctl(fd, FIOBMAP2, &arg)) << strerror(errno); EXPECT_EQ(arg.bn, pbn); - EXPECT_EQ((unsigned long)arg.runp, m_maxphys / m_maxbcachebuf - 1); - EXPECT_EQ((unsigned long)arg.runb, m_maxphys / m_maxbcachebuf - 1); + /* + * XXX The FUSE protocol does not include the runp and runb variables, + * so those must be guessed in-kernel. There's no "right" answer, so + * just check that they're within reasonable limits. + */ + EXPECT_LE(arg.runb, lbn); + EXPECT_LE((unsigned long)arg.runb, m_maxreadahead / m_maxbcachebuf); + EXPECT_LE((unsigned long)arg.runb, m_maxphys / m_maxbcachebuf); + EXPECT_GT(arg.runb, 0); + EXPECT_LE(arg.runp, filesize / m_maxbcachebuf - lbn); + EXPECT_LE((unsigned long)arg.runp, m_maxreadahead / m_maxbcachebuf); + EXPECT_LE((unsigned long)arg.runp, m_maxphys / m_maxbcachebuf); + EXPECT_GT(arg.runp, 0); leak(fd); } diff --git a/tests/sys/fs/fusefs/write.cc b/tests/sys/fs/fusefs/write.cc index 336ec79c8fec..1fe2e3cc522d 100644 --- a/tests/sys/fs/fusefs/write.cc +++ b/tests/sys/fs/fusefs/write.cc @@ -179,7 +179,7 @@ class WriteCluster: public WriteBack { public: virtual void SetUp() { m_async = true; - m_maxwrite = 1 << 25; // Anything larger than MAXPHYS will suffice + m_maxwrite = UINT32_MAX; // Anything larger than MAXPHYS will suffice WriteBack::SetUp(); if (m_maxphys < 2 * DFLTPHYS) GTEST_SKIP() << "MAXPHYS must be at least twice DFLTPHYS" From nobody Thu May 9 18:22:51 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb0k41cPXz5KDhW; Thu, 09 May 2024 18:22:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Vb0k40cqDz4bGt; Thu, 9 May 2024 18:22:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715278972; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2rXrrH0sTQT+nPCnORJTSAN6LBurt0/9SdlO4oNYi3M=; b=q+9/dUoH3BmRaU3QFvgjALYaPBdFBMHHA9QY+OnlR8GvnGVFd5dAQt3dj1nk8vEK8Buj1t vqJWoGAEuRGKLGg8f3id68XQbHMJtd7Wl3wqBNQmIyxuYM0T/VfDgn30avvXnnLdRmFgId g87lzGLJCshnKXsddq3EwDLVUarn7QrSKoxE0dzlFTpl67PjyaYU9VnmasnAUmvfiNQXix fRSmTvU1I6zcEsz0o4AQTJuj0FKSm5KM4YmbmeegjyhG7dLY+uRABIb8VYjajJBB4LXBE0 j4+Z2vnFfcSil/j/5cwNt9VBfrpZrH4882atu7mRoU+iNaAS8kO0V1TRde6G5g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715278972; a=rsa-sha256; cv=none; b=uDIgCqgSZJbbUiD+qOG975XmXarL86e8rtEmMc2t8sf6KxLraSMjIUz1i83n2yAmqT6u5S 8ByqOomIan5VCFb0qBcunl62E5vXJ1eX1xaoYUVyZBjF5SqlImp7yGg74LsyNziujaJc9T xzga7ZtN90UDbULcUCB3VPW0i39cqIYioG13eIk6XZdo4NONcfwT4PHUOusUdg0t6gnwSZ w8IJmIHs/VsaiF+HiK2TTDkcS1nl6kswW9l6pi+2/ub/H4QadsN9nwoKAO4UCjjuwm+mEz HK3JVZyNfdVHnCm9wvzeWA0WYAYC5gxuDVSuGTmQBZl2G77S5w3i/bomXs1WHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715278972; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2rXrrH0sTQT+nPCnORJTSAN6LBurt0/9SdlO4oNYi3M=; b=wuOAbe88Z5nmcqT5toJ9RFuarvfHi3XpKuwBfnAE5Yb2oGi5e8cT/jFPb4c47jgPntdxjF gDevHCtbFmL9xTD0t1nx9PYz8VxNXb83CEaYnNRUPEpAA7SasuVzTpUbEWFnlQ5p/oUguw PbCbjDoG2w5tM6nBE3TbGshyrMbARI62uVQ4UmXhJcLLgIfTfFwh2dNZme7UAAr+714WQw HXTMNdNihnNjPSGE/xgLly1sHkjWQuHw/D4RwmOTzelJduGBjbbrZnEKD3nd5JTi2TKQuZ HrW0AiGIlNBr60FWeNqBBTiT1g/5F3dc0LEVQTl+K4RXB3Au8H6J/0AvMOeYWQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb0k408wbz1JLp; Thu, 9 May 2024 18:22: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 449IMput056371; Thu, 9 May 2024 18:22:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449IMp8x056368; Thu, 9 May 2024 18:22:51 GMT (envelope-from git) Date: Thu, 9 May 2024 18:22:51 GMT Message-Id: <202405091822.449IMp8x056368@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 82f43db382cc - main - ip17x: fix non-debug build List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 82f43db382cc4aea2a3f34f08da9a97ab023d5fb Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=82f43db382cc4aea2a3f34f08da9a97ab023d5fb commit 82f43db382cc4aea2a3f34f08da9a97ab023d5fb Author: Ed Maste AuthorDate: 2024-05-08 13:20:44 +0000 Commit: Ed Maste CommitDate: 2024-05-09 18:22:11 +0000 ip17x: fix non-debug build PR: 278847 Reviewed by: jhibbits Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45133 --- sys/dev/etherswitch/ip17x/ip17x.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/etherswitch/ip17x/ip17x.c b/sys/dev/etherswitch/ip17x/ip17x.c index 218c0c293662..65e548ba293b 100644 --- a/sys/dev/etherswitch/ip17x/ip17x.c +++ b/sys/dev/etherswitch/ip17x/ip17x.c @@ -556,7 +556,7 @@ ip17x_ifmedia_sts(if_t ifp, struct ifmediareq *ifmr) static int ip17x_readreg(device_t dev, int addr) { - struct ip17x_softc *sc; + struct ip17x_softc *sc __diagused; sc = device_get_softc(dev); IP17X_LOCK_ASSERT(sc, MA_OWNED); @@ -568,7 +568,7 @@ ip17x_readreg(device_t dev, int addr) static int ip17x_writereg(device_t dev, int addr, int value) { - struct ip17x_softc *sc; + struct ip17x_softc *sc __diagused; sc = device_get_softc(dev); IP17X_LOCK_ASSERT(sc, MA_OWNED); From nobody Thu May 9 18:41:23 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb17S1TsZz5KG7W; Thu, 09 May 2024 18:41: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 4Vb17S0nk8z4ckb; Thu, 9 May 2024 18:41:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715280084; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7Ne2+2MeyxYMhS8yxpoJmwWMJmoHO0OxNpXgpNn4n5g=; b=tn7XYGW2XKStYGvBb4BYW08lzA0JuF/9h1gDR7HDiL3NnC3QImygoqM5czbznPxIaowP+Q HERCo24WipGcEFkZzesZwALd+hYhGtwCphZlkhxu+mxoHmS6ykpCObINCzG1C3sndfVjDm 7JQ2uD4SdwrXT1iY2/LTKAndqfso++cm5OILiwaVfp15WWZ/jfaUAj1PEoJgEcZ0KUJFio H0uFHnt8LbTKOBrVJpJJ3QlioF8pgltggIwTfsDOVcXuFfm2zs4A1U5WahJwTExtC4aWYF Z8i2VCxiOaTioopy7xqdeeyVAm0cZl2MYQVmXAkoyXaUHaGVr1UuOxWXtZRQuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715280084; a=rsa-sha256; cv=none; b=MnVM+tLtxAfGwm2SO4JZIsEWFDcMlNuQ1z+FBzaBKKOAGIz6VTUTRCkDECLLg7u4Ubo2Qu VS/ZfJg/r5AiZaPB3FNDvaDK96GgEvkn3gc9fj9COKH5PYSLUX2rdLsjSMtCned5tW+kFF Fbx36eTXJSNpqfu2OJAtNpDpxaM2CS55UW7Dy/eY6rFhsplDx3G25w9TjSQvnvhKVjGezv JX4nvgM/xyt+UNicaW0QjzJvf8l6jPWKFGSYbF/4imuYbuvy99agK1ej5GFJq3imBjhW1I oL6BaHkLNUozkKJOAoR5YmJLnFhrKQRvXLchoEL8zC6y+j2lOkJ49sF5cL5Aog== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715280084; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7Ne2+2MeyxYMhS8yxpoJmwWMJmoHO0OxNpXgpNn4n5g=; b=On4IJkLHuFQQEhKNYEnxFqwfrl+abNtVlxn/OLjgKNu/cHQOQaIkD93nTwKYGB+z2GxyhK tZCfWNg0Ilugfyz9EZaYX5zOupdygKwzWCUIk9cXNpPNg1f/BuN3ktZPG3jve/VFebKC24 4Qi09zZQk6vVcOp/nosfczGW/Tn9Ia7oE9V833sVBqUmdJfVtsXHNS59s++LGcM7HNFc6k Wwh1hoICJTJcgzqVaREW6wKgzDZgVnF1YULuTGYxR5mdI3cRjKfrXb5oksh4mrbQMGcwva KJJYgr4buCAjjvUqpzXsr2zqpxJx3U+GFqBM0lpiE0daI39Bdg5eaSH8MMVpJQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb17S0NxGz1KFL; Thu, 9 May 2024 18:41: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 449IfNOn084551; Thu, 9 May 2024 18:41:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449IfN8A084548; Thu, 9 May 2024 18:41:23 GMT (envelope-from git) Date: Thu, 9 May 2024 18:41:23 GMT Message-Id: <202405091841.449IfN8A084548@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ruslan Bukin Subject: git: 5687c71d5f36 - main - snd_hdsp(4): RME HDSP 9632 and HDSP 9652 sound card driver. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: br X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5687c71d5f369aa39cd295fa64b596b2dce2c997 Auto-Submitted: auto-generated The branch main has been updated by br: URL: https://cgit.FreeBSD.org/src/commit/?id=5687c71d5f369aa39cd295fa64b596b2dce2c997 commit 5687c71d5f369aa39cd295fa64b596b2dce2c997 Author: Florian Walpen AuthorDate: 2024-05-09 18:36:40 +0000 Commit: Ruslan Bukin CommitDate: 2024-05-09 18:36:40 +0000 snd_hdsp(4): RME HDSP 9632 and HDSP 9652 sound card driver. Add a sound(4) bridge device driver for the RME HDSP 9632 and HDSP 9652 sound cards. These cards require a nowadays rare PCI 32bit (not PCIe) slot, but still see use due to their value and wealth of features. The HDSP 9632 is mostly comparable to the newer HDSPe AIO, while the HDSP 9652 is similar to the HDSPe RayDAT. These HDSPe PCIe cards are supported by the snd_hdspe(4) driver which was taken as a starting point for development of snd_hdsp(4). Implementation is kept separately due to substantial differences in hardware configuration and to allow easy removal in case PCI 32bit support would be phased out in the future. The snd_hdsp(4) kernel module is not enabled by default, and can be loaded at runtime with kldload(8) or during boot via loader.conf(5). Basic operation was tested with both cards, not including all optional cable connectors and expansion boards. Features should be roughly on par with the snd_hdspe(4) supported cards. Reviewed by: christos, br Differential Revision: https://reviews.freebsd.org/D45112 --- share/man/man4/Makefile | 1 + share/man/man4/pcm.4 | 3 + share/man/man4/snd_hdsp.4 | 154 +++++ sys/conf/NOTES | 2 + sys/conf/files | 2 + sys/dev/sound/driver.c | 1 + sys/dev/sound/pci/hdsp-pcm.c | 1134 ++++++++++++++++++++++++++++++++ sys/dev/sound/pci/hdsp.c | 793 ++++++++++++++++++++++ sys/dev/sound/pci/hdsp.h | 257 ++++++++ sys/modules/sound/driver/Makefile | 2 +- sys/modules/sound/driver/hdsp/Makefile | 7 + 11 files changed, 2355 insertions(+), 1 deletion(-) diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 595da069f73c..c5ba7e46deb8 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -519,6 +519,7 @@ MAN= aac.4 \ snd_es137x.4 \ snd_fm801.4 \ snd_hda.4 \ + snd_hdsp.4 \ snd_hdspe.4 \ snd_ich.4 \ snd_maestro3.4 \ diff --git a/share/man/man4/pcm.4 b/share/man/man4/pcm.4 index e406bd2c8343..5fcaca7220b9 100644 --- a/share/man/man4/pcm.4 +++ b/share/man/man4/pcm.4 @@ -101,6 +101,8 @@ The following bridge device drivers are available: .It .Xr snd_hda 4 (enabled by default on amd64, i386) .It +.Xr snd_hdsp 4 +.It .Xr snd_hdspe 4 .It .Xr snd_ich 4 (enabled by default on amd64, i386) @@ -609,6 +611,7 @@ A device node is not created properly. .Xr snd_es137x 4 , .Xr snd_fm801 4 , .Xr snd_hda 4 , +.Xr snd_hdsp 4 , .Xr snd_hdspe 4 , .Xr snd_ich 4 , .Xr snd_maestro3 4 , diff --git a/share/man/man4/snd_hdsp.4 b/share/man/man4/snd_hdsp.4 new file mode 100644 index 000000000000..23eb98a3ccc2 --- /dev/null +++ b/share/man/man4/snd_hdsp.4 @@ -0,0 +1,154 @@ +.\" Copyright (c) 2012 Ruslan Bukin +.\" Copyright (c) 2024 Florian Walpen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" 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. +.\" +.Dd May 1, 2024 +.Dt SND_HDSP 4 +.Os +.Sh NAME +.Nm snd_hdsp +.Nd "RME HDSP bridge device driver" +.Sh SYNOPSIS +To compile this driver into the kernel, place the following lines in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device sound" +.Cd "device snd_hdsp" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, place the +following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +snd_hdsp_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +bridge driver allows the generic audio driver +.Xr sound 4 +to attach to RME HDSP audio devices. +.Sh HARDWARE +The +.Nm +driver supports the following audio devices: +.Pp +.Bl -bullet -compact +.It +RME HDSP 9632 +.It +RME HDSP 9652 +.El +.Pp +By default, each +.Xr pcm 4 +device corresponds to a physical port on the sound card. +For ADAT ports, 8 channel, 4 channel and 2 channel formats are supported. +The effective number of ADAT channels is 8 channels at single speed +(32kHz-48kHz) and 4 channels at double speed (64kHz-96kHz). +Only the HDSP 9632 can operate at quad speed (128kHz-192kHz), ADAT is +disabled in this mode. +Depending on sample rate and channel format selected, not all pcm channels can +be mapped to ADAT channels and vice versa. +.Sh LOADER TUNABLES +These settings can be entered at the +.Xr loader 8 +prompt or in +.Xr loader.conf 5 . +.Bl -tag -width indent +.It Va hw.hdsp.unified_pcm +If set to 1, all physical ports are combined into one unified pcm device. +When opened in multi-channel audio software, this makes all ports available +at the same time, and fully synchronized. +For resulting channel numbers consult the following table: +.El +.Bl -column "Sound Card" "Single Speed" "Double Speed" "Quad Speed" +.Sy "Sound Card" Ta Sy "Single Speed" Ta Sy "Double Speed" Ta Sy "Quad Speed" +.It "" Ta "Play | Rec" Ta "Play | Rec" Ta "Play | Rec" +.It HDSP 9632 Ta " 12 | 12" Ta " 8 | 8" Ta " 4 | 4" +.It HDSP 9652 Ta " 26 | 26" Ta " 14 | 14" Ta " - | -" +.El +.Sh SYSCTL TUNABLES +These settings and informational values can be accessed at runtime with the +.Xr sysctl 8 +command. +If multiple RME HDSP sound cards are installed, each device has a separate +configuration. +To adjust the following sysctl identifiers for a specific sound card, insert +the respective device number in place of +.Ql 0 . +.Bl -tag -width indent +.It Va dev.hdsp.0.sample_rate +Set a fixed sample rate from 32000, 44100, 48000, up to 192000. +This is usually required for digital connections (AES, S/PDIF, ADAT). +The default value of 0 adjusts the sample rate according to pcm device settings. +.It Va dev.hdsp.0.period +The number of samples processed per interrupt, from 32, 64, 128, up to 4096. +Setting a lower value here results in less latency, but increases system load +due to frequent interrupt processing. +Extreme values may cause audio gaps and glitches. +.It Va dev.hdsp.0.clock_list +Lists possible clock sources to sync with, depending on the hardware model. +This includes internal and external master clocks as well as incoming digital +audio signals like AES, S/PDIF and ADAT. +.It Va dev.hdsp.0.clock_preference +Select a preferred clock source from the clock list. +HDSP cards will sync to this clock source when available, but fall back to +auto-sync with any other digital clock signal they receive. +Set this to +.Ql internal +if the HDSP card should act as master clock. +.It Va dev.hdsp.0.clock_source +Shows the actual clock source in use (read only). +This differs from what is set as clock preference when in auto-sync mode. +.It Va dev.hdsp.0.sync_status +Display the current sync status of all external clock sources. +Status indications are +.Ql none +for no signal at all, +.Ql lock +for when a valid signal is present, and +.Ql sync +for accurately synchronized signals (required for recording digital +audio). +.El +.Pp +Where appropriate these sysctl values are modeled after official RME software on +other platforms, and adopt their terminology. +Consult the RME user manuals for additional information. +.Sh SEE ALSO +.Xr sound 4 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 15.0 . +.Sh AUTHORS +.An -nosplit +Based on +.Xr snd_hdspe 4 +originally written by +.An Ruslan Bukin . +All adaptation to HDSP cards by +.An Florian Walpen . diff --git a/sys/conf/NOTES b/sys/conf/NOTES index fec65452ba0f..bcaac1c85899 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -2093,6 +2093,7 @@ device sound # snd_fm801: Forte Media FM801 PCI. # snd_hda: Intel High Definition Audio (Controller) and # compatible. +# snd_hdsp: RME HDSP 9632 and HDSP 9652 # snd_hdspe: RME HDSPe AIO and RayDAT. # snd_ich: Intel ICH AC'97 and some more audio controllers # embedded in a chipset, for example nVidia @@ -2120,6 +2121,7 @@ device snd_envy24ht device snd_es137x device snd_fm801 device snd_hda +device snd_hdsp device snd_hdspe device snd_ich device snd_maestro3 diff --git a/sys/conf/files b/sys/conf/files index 4858b5868994..7fd79bb0345d 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -3115,6 +3115,8 @@ dev/sound/pci/hda/hdaa_patches.c optional snd_hda pci dev/sound/pci/hda/hdac.c optional snd_hda pci dev/sound/pci/hda/hdac_if.m optional snd_hda pci dev/sound/pci/hda/hdacc.c optional snd_hda pci +dev/sound/pci/hdsp.c optional snd_hdsp pci +dev/sound/pci/hdsp-pcm.c optional snd_hdsp pci dev/sound/pci/hdspe.c optional snd_hdspe pci dev/sound/pci/hdspe-pcm.c optional snd_hdspe pci dev/sound/pcm/ac97.c optional sound diff --git a/sys/dev/sound/driver.c b/sys/dev/sound/driver.c index 927941ab3d01..6bfe6c51fa3e 100644 --- a/sys/dev/sound/driver.c +++ b/sys/dev/sound/driver.c @@ -67,6 +67,7 @@ MODULE_DEPEND(snd_driver, snd_envy24ht, 1, 1, 1); MODULE_DEPEND(snd_driver, snd_es137x, 1, 1, 1); MODULE_DEPEND(snd_driver, snd_fm801, 1, 1, 1); MODULE_DEPEND(snd_driver, snd_hda, 1, 1, 1); +MODULE_DEPEND(snd_driver, snd_hdsp, 1, 1, 1); MODULE_DEPEND(snd_driver, snd_hdspe, 1, 1, 1); MODULE_DEPEND(snd_driver, snd_ich, 1, 1, 1); MODULE_DEPEND(snd_driver, snd_maestro3, 1, 1, 1); diff --git a/sys/dev/sound/pci/hdsp-pcm.c b/sys/dev/sound/pci/hdsp-pcm.c new file mode 100644 index 000000000000..9ba0e5e345d0 --- /dev/null +++ b/sys/dev/sound/pci/hdsp-pcm.c @@ -0,0 +1,1134 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2012-2021 Ruslan Bukin + * Copyright (c) 2023-2024 Florian Walpen + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 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. + */ + +/* + * RME HDSP driver for FreeBSD (pcm-part). + * Supported cards: HDSP 9632, HDSP 9652. + */ + +#include + +#include +#include + +#include +#include + +#include + +#define HDSP_MATRIX_MAX 8 + +struct hdsp_latency { + uint32_t n; + uint32_t period; + float ms; +}; + +static struct hdsp_latency latency_map[] = { + { 7, 32, 0.7 }, + { 0, 64, 1.5 }, + { 1, 128, 3 }, + { 2, 256, 6 }, + { 3, 512, 12 }, + { 4, 1024, 23 }, + { 5, 2048, 46 }, + { 6, 4096, 93 }, + + { 0, 0, 0 }, +}; + +struct hdsp_rate { + uint32_t speed; + uint32_t reg; +}; + +static struct hdsp_rate rate_map[] = { + { 32000, (HDSP_FREQ_32000) }, + { 44100, (HDSP_FREQ_44100) }, + { 48000, (HDSP_FREQ_48000) }, + { 64000, (HDSP_FREQ_32000 | HDSP_FREQ_DOUBLE) }, + { 88200, (HDSP_FREQ_44100 | HDSP_FREQ_DOUBLE) }, + { 96000, (HDSP_FREQ_48000 | HDSP_FREQ_DOUBLE) }, + { 128000, (HDSP_FREQ_32000 | HDSP_FREQ_QUAD) }, + { 176400, (HDSP_FREQ_44100 | HDSP_FREQ_QUAD) }, + { 192000, (HDSP_FREQ_48000 | HDSP_FREQ_QUAD) }, + + { 0, 0 }, +}; + +static uint32_t +hdsp_adat_slot_map(uint32_t speed) +{ + /* ADAT slot bitmap depends on sample rate. */ + if (speed <= 48000) + return (0x000000ff); /* 8 channels single speed. */ + else if (speed <= 96000) + return (0x000000aa); /* 4 channels (1,3,5,7) double speed. */ + else + return (0x00000000); /* ADAT disabled at quad speed. */ +} + +static uint32_t +hdsp_port_slot_map(uint32_t ports, uint32_t speed) +{ + uint32_t slot_map = 0; + + if (ports & HDSP_CHAN_9632_ALL) { + /* Map HDSP 9632 ports to slot bitmap. */ + if (ports & HDSP_CHAN_9632_ADAT) + slot_map |= (hdsp_adat_slot_map(speed) << 0); + if (ports & HDSP_CHAN_9632_SPDIF) + slot_map |= (0x03 << 8); /* 2 channels SPDIF. */ + if (ports & HDSP_CHAN_9632_LINE) + slot_map |= (0x03 << 10); /* 2 channels line. */ + if (ports & HDSP_CHAN_9632_EXT_BOARD) + slot_map |= (0x0f << 12); /* 4 channels extension. */ + } else if ((ports & HDSP_CHAN_9652_ALL) && (speed <= 96000)) { + /* Map HDSP 9652 ports to slot bitmap, no quad speed. */ + if (ports & HDSP_CHAN_9652_ADAT1) + slot_map |= (hdsp_adat_slot_map(speed) << 0); + if (ports & HDSP_CHAN_9652_ADAT2) + slot_map |= (hdsp_adat_slot_map(speed) << 8); + if (ports & HDSP_CHAN_9652_ADAT3) + slot_map |= (hdsp_adat_slot_map(speed) << 16); + if (ports & HDSP_CHAN_9652_SPDIF) + slot_map |= (0x03 << 24); /* 2 channels SPDIF. */ + } + + return (slot_map); +} + +static uint32_t +hdsp_slot_first(uint32_t slots) +{ + return (slots & (~(slots - 1))); /* Extract first bit set. */ +} + +static uint32_t +hdsp_slot_first_row(uint32_t slots) +{ + uint32_t ends; + + /* Ends of slot rows are followed by a slot which is not in the set. */ + ends = slots & (~(slots >> 1)); + /* First row of contiguous slots ends in the first row end. */ + return (slots & (ends ^ (ends - 1))); +} + +static uint32_t +hdsp_slot_first_n(uint32_t slots, unsigned int n) +{ + /* Clear all but the first n slots. */ + for (uint32_t slot = 1; slot != 0; slot <<= 1) { + if ((slots & slot) && n > 0) + --n; + else + slots &= ~slot; + } + return (slots); +} + +static unsigned int +hdsp_slot_count(uint32_t slots) +{ + return (bitcount32(slots)); +} + +static unsigned int +hdsp_slot_offset(uint32_t slots) +{ + return (hdsp_slot_count(hdsp_slot_first(slots) - 1)); +} + +static unsigned int +hdsp_slot_channel_offset(uint32_t subset, uint32_t slots) +{ + uint32_t preceding; + + /* Make sure we have a subset of slots. */ + subset &= slots; + /* Include all slots preceding the first one of the subset. */ + preceding = slots & (hdsp_slot_first(subset) - 1); + + return (hdsp_slot_count(preceding)); +} + +static uint32_t +hdsp_port_first(uint32_t ports) +{ + return (ports & (~(ports - 1))); /* Extract first bit set. */ +} + +static unsigned int +hdsp_port_slot_count(uint32_t ports, uint32_t speed) +{ + return (hdsp_slot_count(hdsp_port_slot_map(ports, speed))); +} + +static unsigned int +hdsp_port_slot_count_max(uint32_t ports) +{ + return (hdsp_slot_count(hdsp_port_slot_map(ports, 48000))); +} + +static uint32_t +hdsp_channel_play_ports(struct hdsp_channel *hc) +{ + return (hc->ports & (HDSP_CHAN_9632_ALL | HDSP_CHAN_9652_ALL)); +} + +static uint32_t +hdsp_channel_rec_ports(struct hdsp_channel *hc) +{ + return (hc->ports & (HDSP_CHAN_9632_ALL | HDSP_CHAN_9652_ALL)); +} + +static int +hdsp_hw_mixer(struct sc_chinfo *ch, unsigned int dst, + unsigned int src, unsigned short data) +{ + struct sc_pcminfo *scp; + struct sc_info *sc; + uint32_t value; + int offset; + + scp = ch->parent; + sc = scp->sc; + + offset = 0; + value = (HDSP_MIN_GAIN << 16) | (uint16_t) data; + + if (ch->dir != PCMDIR_PLAY) + return (0); + + switch (sc->type) { + case HDSP_9632: + /* Mixer is 2 rows of sources (inputs, playback) per output. */ + offset = dst * (2 * HDSP_MIX_SLOTS_9632); + /* Source index in the second row (playback). */ + offset += HDSP_MIX_SLOTS_9632 + src; + break; + case HDSP_9652: + /* Mixer is 2 rows of sources (inputs, playback) per output. */ + offset = dst * (2 * HDSP_MIX_SLOTS_9652); + /* Source index in the second row (playback). */ + offset += HDSP_MIX_SLOTS_9652 + src; + break; + default: + return (0); + } + + /* + * We have to write mixer matrix values in pairs, with the second + * (odd) value in the upper 16 bits of the 32 bit value. + * Make value offset even and shift value accordingly. + * Assume the paired value to be silenced, since we only set gain + * on the diagonal where src and dst are the same. + */ + if (offset % 2) { + offset -= 1; + value = (value << 16) | HDSP_MIN_GAIN; + } + + hdsp_write_4(sc, HDSP_MIXER_BASE + offset * sizeof(uint16_t), value); + + return (0); +}; + +static int +hdspchan_setgain(struct sc_chinfo *ch) +{ + uint32_t port, ports; + uint32_t slot, slots; + unsigned int offset; + unsigned short volume; + + /* Iterate through all physical ports of the channel. */ + ports = ch->ports; + port = hdsp_port_first(ports); + while (port != 0) { + /* + * Get slot map from physical port. + * Unlike DMA buffers, the hardware mixer's channel mapping + * does not change with double or quad speed sample rates. + */ + slots = hdsp_port_slot_map(port, 48000); + slot = hdsp_slot_first(slots); + + /* Treat first slot as left channel. */ + volume = ch->lvol * HDSP_MAX_GAIN / 100; + while (slot != 0) { + offset = hdsp_slot_offset(slot); + hdsp_hw_mixer(ch, offset, offset, volume); + + slots &= ~slot; + slot = hdsp_slot_first(slots); + + /* Subsequent slots all get the right channel volume. */ + volume = ch->rvol * HDSP_MAX_GAIN / 100; + } + + ports &= ~port; + port = hdsp_port_first(ports); + } + + return (0); +} + +static int +hdspmixer_init(struct snd_mixer *m) +{ + struct sc_pcminfo *scp; + struct sc_info *sc; + int mask; + + scp = mix_getdevinfo(m); + sc = scp->sc; + if (sc == NULL) + return (-1); + + mask = SOUND_MASK_PCM; + + if (hdsp_channel_play_ports(scp->hc)) + mask |= SOUND_MASK_VOLUME; + + if (hdsp_channel_rec_ports(scp->hc)) + mask |= SOUND_MASK_RECLEV; + + snd_mtxlock(sc->lock); + pcm_setflags(scp->dev, pcm_getflags(scp->dev) | SD_F_SOFTPCMVOL); + mix_setdevs(m, mask); + snd_mtxunlock(sc->lock); + + return (0); +} + +static int +hdspmixer_set(struct snd_mixer *m, unsigned dev, + unsigned left, unsigned right) +{ + struct sc_pcminfo *scp; + struct sc_chinfo *ch; + int i; + + scp = mix_getdevinfo(m); + +#if 0 + device_printf(scp->dev, "hdspmixer_set() %d %d\n", + left, right); +#endif + + for (i = 0; i < scp->chnum; i++) { + ch = &scp->chan[i]; + if ((dev == SOUND_MIXER_VOLUME && ch->dir == PCMDIR_PLAY) || + (dev == SOUND_MIXER_RECLEV && ch->dir == PCMDIR_REC)) { + ch->lvol = left; + ch->rvol = right; + if (ch->run) + hdspchan_setgain(ch); + } + } + + return (0); +} + +static kobj_method_t hdspmixer_methods[] = { + KOBJMETHOD(mixer_init, hdspmixer_init), + KOBJMETHOD(mixer_set, hdspmixer_set), + KOBJMETHOD_END +}; +MIXER_DECLARE(hdspmixer); + +static void +hdspchan_enable(struct sc_chinfo *ch, int value) +{ + struct sc_pcminfo *scp; + struct sc_info *sc; + uint32_t slot, slots; + unsigned int offset; + int reg; + + scp = ch->parent; + sc = scp->sc; + + if (ch->dir == PCMDIR_PLAY) + reg = HDSP_OUT_ENABLE_BASE; + else + reg = HDSP_IN_ENABLE_BASE; + + ch->run = value; + + /* Iterate through all slots of the channel's physical ports. */ + slots = hdsp_port_slot_map(ch->ports, sc->speed); + slot = hdsp_slot_first(slots); + while (slot != 0) { + /* Set register to enable or disable slot. */ + offset = hdsp_slot_offset(slot); + hdsp_write_1(sc, reg + (4 * offset), value); + + slots &= ~slot; + slot = hdsp_slot_first(slots); + } +} + +static int +hdsp_running(struct sc_info *sc) +{ + struct sc_pcminfo *scp; + struct sc_chinfo *ch; + device_t *devlist; + int devcount; + int i, j; + int running; + + running = 0; + + devlist = NULL; + devcount = 0; + + if (device_get_children(sc->dev, &devlist, &devcount) != 0) + running = 1; /* On error, avoid channel config changes. */ + + for (i = 0; running == 0 && i < devcount; i++) { + scp = device_get_ivars(devlist[i]); + for (j = 0; j < scp->chnum; j++) { + ch = &scp->chan[j]; + if (ch->run) { + running = 1; + break; + } + } + } + +#if 0 + if (running == 1) + device_printf(sc->dev, "hdsp is running\n"); +#endif + + free(devlist, M_TEMP); + + return (running); +} + +static void +hdsp_start_audio(struct sc_info *sc) +{ + + sc->ctrl_register |= (HDSP_AUDIO_INT_ENABLE | HDSP_ENABLE); + hdsp_write_4(sc, HDSP_CONTROL_REG, sc->ctrl_register); +} + +static void +hdsp_stop_audio(struct sc_info *sc) +{ + + if (hdsp_running(sc) == 1) + return; + + sc->ctrl_register &= ~(HDSP_AUDIO_INT_ENABLE | HDSP_ENABLE); + hdsp_write_4(sc, HDSP_CONTROL_REG, sc->ctrl_register); +} + +static void +buffer_mux_write(uint32_t *dma, uint32_t *pcm, unsigned int pos, + unsigned int pos_end, unsigned int width, unsigned int channels) +{ + unsigned int slot; + + for (; pos < pos_end; ++pos) { + for (slot = 0; slot < width; slot++) { + dma[slot * HDSP_CHANBUF_SAMPLES + pos] = + pcm[pos * channels + slot]; + } + } +} + +static void +buffer_mux_port(uint32_t *dma, uint32_t *pcm, uint32_t subset, uint32_t slots, + unsigned int pos, unsigned int samples, unsigned int channels) +{ + unsigned int slot_offset, width; + unsigned int chan_pos; + + /* Translate DMA slot offset to DMA buffer offset. */ + slot_offset = hdsp_slot_offset(subset); + dma += slot_offset * HDSP_CHANBUF_SAMPLES; + + /* Channel position of the slot subset. */ + chan_pos = hdsp_slot_channel_offset(subset, slots); + pcm += chan_pos; + + /* Only copy channels supported by both hardware and pcm format. */ + width = hdsp_slot_count(subset); + + /* Let the compiler inline and loop unroll common cases. */ + if (width == 1) + buffer_mux_write(dma, pcm, pos, pos + samples, 1, channels); + else if (width == 2) + buffer_mux_write(dma, pcm, pos, pos + samples, 2, channels); + else if (width == 4) + buffer_mux_write(dma, pcm, pos, pos + samples, 4, channels); + else if (width == 8) + buffer_mux_write(dma, pcm, pos, pos + samples, 8, channels); + else + buffer_mux_write(dma, pcm, pos, pos + samples, width, channels); +} + +static void +buffer_demux_read(uint32_t *dma, uint32_t *pcm, unsigned int pos, + unsigned int pos_end, unsigned int width, unsigned int channels) +{ + unsigned int slot; + + for (; pos < pos_end; ++pos) { + for (slot = 0; slot < width; slot++) { + pcm[pos * channels + slot] = + dma[slot * HDSP_CHANBUF_SAMPLES + pos]; + } + } +} + +static void +buffer_demux_port(uint32_t *dma, uint32_t *pcm, uint32_t subset, uint32_t slots, + unsigned int pos, unsigned int samples, unsigned int channels) +{ + unsigned int slot_offset, width; + unsigned int chan_pos; + + /* Translate DMA slot offset to DMA buffer offset. */ + slot_offset = hdsp_slot_offset(subset); + dma += slot_offset * HDSP_CHANBUF_SAMPLES; + + /* Channel position of the slot subset. */ + chan_pos = hdsp_slot_channel_offset(subset, slots); + pcm += chan_pos; + + /* Only copy channels supported by both hardware and pcm format. */ + width = hdsp_slot_count(subset); + + /* Let the compiler inline and loop unroll common cases. */ + if (width == 1) + buffer_demux_read(dma, pcm, pos, pos + samples, 1, channels); + else if (width == 2) + buffer_demux_read(dma, pcm, pos, pos + samples, 2, channels); + else if (width == 4) + buffer_demux_read(dma, pcm, pos, pos + samples, 4, channels); + else if (width == 8) + buffer_demux_read(dma, pcm, pos, pos + samples, 8, channels); + else + buffer_demux_read(dma, pcm, pos, pos + samples, width, channels); +} + + +/* Copy data between DMA and PCM buffers. */ +static void +buffer_copy(struct sc_chinfo *ch) +{ + struct sc_pcminfo *scp; + struct sc_info *sc; + uint32_t row, slots; + uint32_t dma_pos; + unsigned int pos, length, remainder, offset, buffer_size; + unsigned int channels; + + scp = ch->parent; + sc = scp->sc; + + channels = AFMT_CHANNEL(ch->format); /* Number of PCM channels. */ + + /* HDSP cards read / write a double buffer, twice the latency period. */ + buffer_size = 2 * sc->period * sizeof(uint32_t); + + /* Derive buffer position and length to be copied. */ + if (ch->dir == PCMDIR_PLAY) { + /* Buffer position scaled down to a single channel. */ + pos = sndbuf_getreadyptr(ch->buffer) / channels; + length = sndbuf_getready(ch->buffer) / channels; + /* Copy no more than 2 periods in advance. */ + if (length > buffer_size) + length = buffer_size; + /* Skip what was already copied last time. */ + offset = (ch->position + buffer_size) - pos; + offset %= buffer_size; + if (offset <= length) { + pos = (pos + offset) % buffer_size; + length -= offset; + } + } else { + /* Buffer position scaled down to a single channel. */ + pos = sndbuf_getfreeptr(ch->buffer) / channels; + /* Get DMA buffer write position. */ + dma_pos = hdsp_read_2(sc, HDSP_STATUS_REG); + dma_pos &= HDSP_BUF_POSITION_MASK; + dma_pos %= buffer_size; + /* Copy what is newly available. */ + length = (dma_pos + buffer_size) - pos; + length %= buffer_size; + } + + /* Position and length in samples (4 bytes). */ + pos /= 4; + length /= 4; + buffer_size /= sizeof(uint32_t); + + /* Split copy length to wrap around at buffer end. */ + remainder = 0; + if (pos + length > buffer_size) + remainder = (pos + length) - buffer_size; + + /* Iterate through rows of contiguous slots. */ + slots = hdsp_port_slot_map(ch->ports, sc->speed); + slots = hdsp_slot_first_n(slots, channels); + row = hdsp_slot_first_row(slots); + + while (row != 0) { + if (ch->dir == PCMDIR_PLAY) { + buffer_mux_port(sc->pbuf, ch->data, row, slots, pos, + length - remainder, channels); + buffer_mux_port(sc->pbuf, ch->data, row, slots, 0, + remainder, channels); + } else { + buffer_demux_port(sc->rbuf, ch->data, row, slots, pos, + length - remainder, channels); + buffer_demux_port(sc->rbuf, ch->data, row, slots, 0, + remainder, channels); + } + + slots &= ~row; + row = hdsp_slot_first_row(slots); + } + + ch->position = ((pos + length) * 4) % buffer_size; +} + +static int +clean(struct sc_chinfo *ch) +{ + struct sc_pcminfo *scp; + struct sc_info *sc; + uint32_t *buf; + uint32_t slot, slots; + unsigned int offset; + + scp = ch->parent; + sc = scp->sc; + buf = sc->rbuf; + + if (ch->dir == PCMDIR_PLAY) + buf = sc->pbuf; + + /* Iterate through all of the channel's slots. */ + slots = hdsp_port_slot_map(ch->ports, sc->speed); + slot = hdsp_slot_first(slots); + while (slot != 0) { + /* Clear the slot's buffer. */ + offset = hdsp_slot_offset(slot); + bzero(buf + offset * HDSP_CHANBUF_SAMPLES, HDSP_CHANBUF_SIZE); + + slots &= ~slot; + slot = hdsp_slot_first(slots); + } + + ch->position = 0; + + return (0); +} + +/* Channel interface. */ +static void * +hdspchan_init(kobj_t obj, void *devinfo, struct snd_dbuf *b, + struct pcm_channel *c, int dir) +{ + struct sc_pcminfo *scp; + struct sc_chinfo *ch; + struct sc_info *sc; + int num; + + scp = devinfo; + sc = scp->sc; + + snd_mtxlock(sc->lock); + num = scp->chnum; + + ch = &scp->chan[num]; + + if (dir == PCMDIR_PLAY) + ch->ports = hdsp_channel_play_ports(scp->hc); + else + ch->ports = hdsp_channel_rec_ports(scp->hc); + + ch->run = 0; + ch->lvol = 0; + ch->rvol = 0; + + /* Support all possible ADAT widths as channel formats. */ + ch->cap_fmts[0] = + SND_FORMAT(AFMT_S32_LE, hdsp_port_slot_count(ch->ports, 48000), 0); + ch->cap_fmts[1] = + SND_FORMAT(AFMT_S32_LE, hdsp_port_slot_count(ch->ports, 96000), 0); + ch->cap_fmts[2] = + SND_FORMAT(AFMT_S32_LE, hdsp_port_slot_count(ch->ports, 192000), 0); *** 1526 LINES SKIPPED *** From nobody Thu May 9 19:08:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb1kz3nNlz5KK1g; Thu, 09 May 2024 19: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 4Vb1kz3FXYz4g4J; Thu, 9 May 2024 19: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=1715281723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WrVSG+zaU2GvNnoOxjIi1a8SO5j6YYnnNYJyZcsOhwQ=; b=Sy5j0Tke4mrIjVfTFTyL09txmW9dLjknSS/PNGZQZsJAYmBIkO51F2o1krJfFrAL9lk2Db bxnFJGOiTKShWa0Bv149jIeDUXzv9pjMXn8IjgsBybqO67JwyQ31244Jxu79ctWMU4aFRi a30NRx7YVd6kYtJEEMO7ITFK+TYJi/XVFlRlnNSlApTqL1N1BZ8120e7ukLPS412Z3soJN 0glmZn5fCv7RPN980b27ua9mnJM53eVuJMTlALu74yJHj3TriMjjlVHhv1BTqd8sl+q1CS D0XZhdEfvNH/SabsN4PqFbeav7RGdK9gY4HkBfh5I5oXvMiCB0in2Cmfr04IzA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715281723; a=rsa-sha256; cv=none; b=LQqxGgk3JTa6LXdPC1EPe+iWEP6HC+LKRKoNcptRr2jMiFlNm/ZHrOhwYaLfNuoZJxgxmp YqheeciF+dY16f3ow3N7/Vt9ek3qmvyEZPaSeFewR8ov9sSw0Rq1u5ON9/6xkDspNuEFQK yko+jgHxe7kP9Ggo8GdIgWv9PJVqBcKReCnAyNfURfJ3m0yp+6S2/U66X8QDecFHKpHjhT VgqbTTTFaLP0qfBn3ouVVNYjR7ZkCxLAzJrg+hr1NeMaDVayWyUVhjhYN9WDdrXQ+bPUT+ ebcMQ8sEcJVU7dQh2iIl5JB5GWzeVi89yhEVdbL1kG8Tv5w9cXYQItwOX9WXuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715281723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WrVSG+zaU2GvNnoOxjIi1a8SO5j6YYnnNYJyZcsOhwQ=; b=i7aeAlW2ct6XAEOxN83Sv7S3bIwpPlRdwPWg93ObYcFDv4I2VPVCXfhxfSLhV8KsW6NJr3 kXQUJoNhxTbFC7ssUFFPFBK9kYbJZNOfEo9NaTVlXXjVMD4qklAjdXfe6XKS+CmbalszAd IVvI4p/znJze7O4nK4jRSo8gUdPkgoak1fLLyv2hZwQvb9h5Cb1+IJi7FN4YrsfdiQ6ms5 dMAvwycSoGQYNQz3j19sYMCzfvkNu6g9kqxvMg9zwMjYPwksirnqxKpbukEUQb1fK9J3x+ flOjvHGP1iP4aljT8V1L/quuQTTTOiK2ix0irm12A79Ejv4v3hNh/oVa1PQSUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb1kz2rDfz1L09; Thu, 9 May 2024 19:08: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 449J8hC0025686; Thu, 9 May 2024 19:08:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449J8hnS025683; Thu, 9 May 2024 19:08:43 GMT (envelope-from git) Date: Thu, 9 May 2024 19:08:43 GMT Message-Id: <202405091908.449J8hnS025683@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 2f31a5eb75f1 - main - sound: Remove nmix variable from mixer_oss_mixerinfo() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2f31a5eb75f1e47b5c49f574e8ce48d2c863e9d3 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=2f31a5eb75f1e47b5c49f574e8ce48d2c863e9d3 commit 2f31a5eb75f1e47b5c49f574e8ce48d2c863e9d3 Author: Christos Margiolis AuthorDate: 2024-05-09 19:07:48 +0000 Commit: Christos Margiolis CommitDate: 2024-05-09 19:07:48 +0000 sound: Remove nmix variable from mixer_oss_mixerinfo() nmix is used to compare against oss_mixerinfo->dev, which is a user-supplied value to select the mixer device (if not -1, in which case we'll select the default one) we want to fetch the information of. It is also used to set oss_mixerinfo->dev in case it is -1. However, nmix is at best redundant, since we have the loop counter already (i), and confusing at worst. For example, suppose a system with 3 mixer devices. We call SNDCTL_MIXERINFO with oss_mixerinfo->dev=1, meaning we want to get information for /dev/mixer1. Suppose /dev/mixer0 detaches while inside the loop, so we'll hit the loop's "continue" case, and nmix won't get incremented (i.e will stay 0 for now). At this point nmix counts 1 device less, so when it reaches 1, we'll be fetching /dev/mixer2's information instead of /dev/mixer1's. This is also true in case the mixer device disappears prior to the call to mixer_oss_mixerinfo(). Simply remove nmix and use the loop counter to both set oss_mixerinfo->dev and check against it in case a non -1 value is supplied. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D45135 --- sys/dev/sound/pcm/mixer.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/sys/dev/sound/pcm/mixer.c b/sys/dev/sound/pcm/mixer.c index 4e67a0227506..a37b94dce43a 100644 --- a/sys/dev/sound/pcm/mixer.c +++ b/sys/dev/sound/pcm/mixer.c @@ -1431,7 +1431,7 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) { struct snddev_info *d; struct snd_mixer *m; - int nmix, i; + int i; /* * If probing the device handling the ioctl, make sure it's a mixer @@ -1442,7 +1442,6 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) d = NULL; m = NULL; - nmix = 0; /* * There's a 1:1 relationship between mixers and PCM devices, so @@ -1462,7 +1461,7 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) if (d->mixer_dev != NULL && d->mixer_dev->si_drv1 != NULL && ((mi->dev == -1 && d->mixer_dev == i_dev) || - mi->dev == nmix)) { + mi->dev == i)) { m = d->mixer_dev->si_drv1; mtx_lock(m->lock); @@ -1474,7 +1473,7 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) * sure to unlock when existing. */ bzero((void *)mi, sizeof(*mi)); - mi->dev = nmix; + mi->dev = i; snprintf(mi->id, sizeof(mi->id), "mixer%d", i); strlcpy(mi->name, m->name, sizeof(mi->name)); mi->modify_counter = m->modify_counter; @@ -1538,8 +1537,7 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) mi->legacy_device = i; */ mtx_unlock(m->lock); - } else - ++nmix; + } PCM_UNLOCK(d); From nobody Thu May 9 19:08:44 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb1l04n0Rz5KJqD; Thu, 09 May 2024 19: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 4Vb1l048T7z4fwt; Thu, 9 May 2024 19: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=1715281724; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VmiLsTOHM0KT562g+nKuPwqFOBj8Qaj+Ps33r9CBEm0=; b=b+Abb5NiSSeWvLqWzC6+0B0WB5TMpq3p/gyENmfbM6xMS1Po9XY9CPwM8L/qZJXnuHWAKZ SFj4uj98igV5nQfXZVAM7J/BFhBiGTS6P2+VhNxmA3udLabRY9kDXFLcS8VitdZhm/QJjM XLPX0e+zwI8W4rRVVEMzobs++SvRPEVhy/QeL7FbbRyolIrTt4siRTgbTfRKMXC2GIvUaA Fqlbuk3Zj9VIY2a2DtHdtcQSWOlsgMJlk3+NpqLoO4uFnBIYL4Ft3IDmplpuAT3GWyIGyB 4uc9fGOuniwOIb5zNW1ltHQvKDBDxdqexrlqmTjarmqn7DgnOuKC/fMOFSx7cQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715281724; a=rsa-sha256; cv=none; b=wMpULbCgR6SM5QfZ7EGyDGEqufKQ8QNOMq9QsFBXp6QOwMgHqm0lrvel6SgC5/jl5BzTrA BpcqNZZTC1zL2xL9nLrErFKz8PUKovw1BH4eNcXjXZ1ntiZy/ISM6+Ci50uFte0MA4qyOn nQe7wwjVtQmtVSfZXKliYxe3v6GyToKWrioK931RGdQIGPejXaOCzWpKG9MC+WrEdo6B33 Ty8OuN6KSKJILAgAX6+6R839OnSDzgKnTiUykt1KEMILZuwfWOFo1zipB9Du9bMvpW9x56 GtjLSVTTeA9/jI4bknLkbod7uIkm9ZPFTuPm4XkkQk7UMrcY86pOsGrSbnh94Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715281724; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VmiLsTOHM0KT562g+nKuPwqFOBj8Qaj+Ps33r9CBEm0=; b=la+EsJngWmd8XpWp7IbOB3v8Pve7KT00pHGNZj195LVTZj//cNJn8WIq8Nu6nLbAKIZPwi Qbqq9FxxIPEKZZaYUtFXRUDp3elwaZyINDRROX/uGOIf0A0b0Jlc1Zz85bc5efZ2Wwbgaz 7dxPXhSuSMDqzDh7ADiQJH4nniVvsfJ8AbPL3DOXNX+xGFm7RTMFbVXrNEMOSBvLDI6Jhm P4DdQVsbv+PdlHEoRwUMVSG3TTP6aEbCCpto9C6KlcyZXJ2dlKSMH0v5POywsRkb2ap7Hg L1YU/s0qoNUJk7asTcczsd64Vx9Cs+qxF3xFYUVwKFWzcovJyyz2oxiaBb2bIw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb1l03jQRz1KnP; Thu, 9 May 2024 19:08: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 449J8i7B025724; Thu, 9 May 2024 19:08:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449J8iGI025721; Thu, 9 May 2024 19:08:44 GMT (envelope-from git) Date: Thu, 9 May 2024 19:08:44 GMT Message-Id: <202405091908.449J8iGI025721@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 59d98edae3e1 - main - sound: Fix oss_sysinfo->numcards List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 59d98edae3e1a6fffd292e4393c49862d624f25f Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=59d98edae3e1a6fffd292e4393c49862d624f25f commit 59d98edae3e1a6fffd292e4393c49862d624f25f Author: Christos Margiolis AuthorDate: 2024-05-09 19:08:01 +0000 Commit: Christos Margiolis CommitDate: 2024-05-09 19:08:01 +0000 sound: Fix oss_sysinfo->numcards According to the OSS manual, oss_sysinfo->numcards holds the number of detected audio devices in the system, while the current ncards variable, whose value is assigned to oss_sysinfo->numcards, holds the number of currently registered devices only. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: dev_submerge.ch, emaste Differential Revision: https://reviews.freebsd.org/D45136 --- sys/dev/sound/pcm/sound.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index 17a7138519ac..3e95fd0e0ea4 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -708,11 +708,9 @@ sound_oss_sysinfo(oss_sysinfo *si) struct snddev_info *d; struct pcm_channel *c; - int j, ncards; + int j; size_t i; - ncards = 0; - strlcpy(si->product, si_product, sizeof(si->product)); strlcpy(si->version, si_version, sizeof(si->version)); si->versionnum = SOUND_VERSION; @@ -720,7 +718,7 @@ sound_oss_sysinfo(oss_sysinfo *si) /* * Iterate over PCM devices and their channels, gathering up data - * for the numaudios, ncards, and openedaudio fields. + * for the numaudios and openedaudio fields. */ si->numaudios = 0; bzero((void *)&si->openedaudio, sizeof(si->openedaudio)); @@ -740,7 +738,6 @@ sound_oss_sysinfo(oss_sysinfo *si) PCM_LOCK(d); si->numaudios += PCM_CHANCOUNT(d); - ++ncards; CHN_FOREACH(c, d, channels.pcm) { CHN_UNLOCKASSERT(c); @@ -771,7 +768,7 @@ sound_oss_sysinfo(oss_sysinfo *si) si->nummidis = 0; si->numtimers = 0; si->nummixers = mixer_count; - si->numcards = ncards; + si->numcards = devclass_get_maxunit(pcm_devclass); /* OSSv4 docs: Intended only for test apps; API doesn't really have much of a concept of cards. Shouldn't be used by applications. */ From nobody Thu May 9 19:08:45 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb1l16tmMz5KJtF; Thu, 09 May 2024 19:08: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 4Vb1l157hDz4g6t; Thu, 9 May 2024 19: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=1715281725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Mb/OxwdftvzQFWmi9dPlFpDrIv21wKwLHZ/3GcJnw58=; b=Ra4JGLJo6o0YWl+rLjkyqk6dFuM2G6PD4jfIsX8WykIDMYZSF2CnLJ9nJjFnuFOa3WJsHr S9M4fBtcs2/Derk/Hg1/5z9Jai0byC99S46DoxyiEkVW+0VyI9DBOD2UeSdSVSkHEtryxC tkyCzoQUCTPWKrDvhYIG2OqP/Id0dRj6sj5ZoJNEAC2pYo6TDMmxWzW+7pRHDh8C23MOyc KCPYzZ9iL+d8jxLp9qF/IELw/VDOsObPtvrw7/er5EAwzK/izZKUBFZ9HonY0RhjPo/pbT MuazIKLocpDt+ignYmH7VfXCEEdD4YurTZJIRGIv9z/+RAu3B0XLHy7P0eayeg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715281725; a=rsa-sha256; cv=none; b=VwdW5KtZCfDQiJlnmFrthONSWh5y/tQDLeDdOpe+9VX6sbewrAMTUEtdc2LonYlmyjwC0w FkpziXN7YPe58ESrAqTlxTnnMBi4He8UF7ksBNJ1nJe4cpqzBLWSZcvVl/5GHJt+7zJCAD Ye34e0Ua5ZGlvV0T0Cw04gFjn3/0xPMUvyspXV7xBwAE9B0/AZVLJCc4pvUbIDn8Tr1IDi t2D+6JlbgW7LG7g+UKWA0TrGfqWZ4UY1765cgSQSbmoRRA6fcpF3NlyWqbQeEjsl0AKgaG SG9+5UO2UruC3uazADMvJF3kbRp6elspx8NYBrCr4Bw+j+Yh7ybUWY7Kzw6axw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715281725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Mb/OxwdftvzQFWmi9dPlFpDrIv21wKwLHZ/3GcJnw58=; b=E11hTyI6A3HBZXhgXcOzsKeDgMX47e4ZHTmLaPpSn+wmW7tMArS1IdxIivJFda5zRIZ4R7 6Pi0sxeqdkM0XdL7oPGFwr7odbZBCJTqcN4hhGNuYo3JRrNVYd8JJC62mAoPhlsxdVcEfx eXPHjKEvshP1MS/Mk48ijp255/2UG3T7AMPBsvi+wg3KhJyMZa5ctihDSEpSZyf7gnLYbH ooSw8XFcc13uYz0m4jOsjiP7T+29bRjjKsXYklO0lxnfA7BRMZO3ACI1hnmpRRJLMhEL+o kATUthASToopnn1hGX2GTvR1fFE4DhL1G8lCYQfc8U0GAYVWrS4u4btrnfhSEQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb1l14k2Dz1Kch; Thu, 9 May 2024 19:08: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 449J8jhK025777; Thu, 9 May 2024 19:08:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449J8j2b025774; Thu, 9 May 2024 19:08:45 GMT (envelope-from git) Date: Thu, 9 May 2024 19:08:45 GMT Message-Id: <202405091908.449J8j2b025774@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: e6df8c379b0c - main - sound: Add missing oss_mixerinfo devnode and legacy_device fields List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e6df8c379b0cf2f6d715d4903fcb1f279e38173e Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=e6df8c379b0cf2f6d715d4903fcb1f279e38173e commit e6df8c379b0cf2f6d715d4903fcb1f279e38173e Author: Christos Margiolis AuthorDate: 2024-05-09 19:08:11 +0000 Commit: Christos Margiolis CommitDate: 2024-05-09 19:08:28 +0000 sound: Add missing oss_mixerinfo devnode and legacy_device fields They are missing from soundcard.h and are in fact used by some applications, such as OSS' ossinfo(1): http://manuals.opensound.com/developer/ossinfo.c.html The new size for filler is chosen according to the most recent official version of soundcard.h, which includes those 2 fields. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D45137 --- sys/dev/sound/pcm/mixer.c | 11 +++++------ sys/sys/soundcard.h | 4 +++- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/sys/dev/sound/pcm/mixer.c b/sys/dev/sound/pcm/mixer.c index a37b94dce43a..9811496853c8 100644 --- a/sys/dev/sound/pcm/mixer.c +++ b/sys/dev/sound/pcm/mixer.c @@ -1516,6 +1516,7 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) * Mixer extensions currently aren't supported, so * leave @sa oss_mixerinfo::nrext blank for now. */ + /** * @todo Fill in @sa oss_mixerinfo::priority (requires * touching drivers?) @@ -1529,13 +1530,11 @@ mixer_oss_mixerinfo(struct cdev *i_dev, oss_mixerinfo *mi) * default mixer. Other devices use values 1 to 9 * depending on the estimated probability of being the * default device. - * - * XXX Described by Hannu@4Front, but not found in - * soundcard.h. - strlcpy(mi->devnode, devtoname(d->mixer_dev), - sizeof(mi->devnode)); - mi->legacy_device = i; */ + + snprintf(mi->devnode, sizeof(mi->devnode), "/dev/mixer%d", i); + mi->legacy_device = i; + mtx_unlock(m->lock); } diff --git a/sys/sys/soundcard.h b/sys/sys/soundcard.h index ddd8a51d29a5..64f57742a52b 100644 --- a/sys/sys/soundcard.h +++ b/sys/sys/soundcard.h @@ -1925,7 +1925,9 @@ typedef struct oss_mixerinfo * as the default mixer. */ int priority; - int filler[254]; /* Reserved */ + oss_devnode_t devnode; + int legacy_device; + int filler[245]; /* Reserved */ } oss_mixerinfo; typedef struct oss_midi_info From nobody Thu May 9 19:08:46 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb1l31wk3z5KJwH; Thu, 09 May 2024 19: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 4Vb1l266nsz4g9c; Thu, 9 May 2024 19: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=1715281726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zKhYha5y2bfLG/cKLGrq+pFrzRzvD4qiuIN9fGSC/bs=; b=sos5K+NFP8MijqASZEU6ktQlsb1rGI4i3PFK7qolCvJ/SG16OfPMoGs0QYtvg6EQq5bFJu zTwN4/Dt0/kcLnFAUndFkxH2CnchoArd77WfIJJ/AwudznZyWBPSYgnRHoi+qb6J0k4p4w tc1QYTIIMlk5xiVnCm1C5wOpId5ij7U1Oc/rMTHLhBu5Nb/thj5Abjd31CcH1mSBM8N4Ru 1UhlKFX1YKGs0V/1i88g6ALPwBgg0VInebjhTe4ZE9gDITUi1XbwARGRJc3rQpq4OXSOxf JSCEt/XwwWhJF4Fh5AbKCDmEGMe3DN3S/K/byqPif1gXlbwSqk9M5hIC9s3BdA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715281726; a=rsa-sha256; cv=none; b=p1w0Mt/bXSxSkokZkwHN+bqkQX36RqMfCQ9eXo0uJlT9yZT4QZO6Qzr5osOyRJ5K9gAvs4 UpmMxeviWJy2tu7Ujch8Q7nck6mPFngVVZghvGsQ6SniBLRDyhvuB0KTf+6ZgXL6qk2BDg sPrf9oV2vJDfj58Tor5C/kXIRbpmwzr9I3wmiW+MYsWuqwea1/TYJYiYVFW5z3edCBz1Gc 8ZuLyo/gn5xefBi9GYaQaj7VdFAlQRhJOWjmqBrfYNSjY2okourfEiwHpLOdVZfgJnFEiS Zkf89TsjydnLYSECxlDXH7WSjyvPmw9JcRxFbUPnrRugBofsQrDWBdu4DYqeIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715281726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zKhYha5y2bfLG/cKLGrq+pFrzRzvD4qiuIN9fGSC/bs=; b=lpHJKxrpzMjQhylxslbKuA3iF/2QibgYhMbk9JLtRUV8JI5xA2VweZnUWephDp5oVh2Z+U jZVPQ3+Dh+Ws6A7LGAgmLJs1M51FMOzXp5//HCjaZOfM78zuk2dtc5EYZnmY1CwyjGqAPW 9ooC/2LJtna+3y0C8yyeUn+ew5k1OgTVLwOOnTxmPok+9MC8n2R5j1T9BAxtSs8Q/bsW2w 2puet2u9sNn4r+bGKYYoF65tXC1b6+ZdlAuhrVSvVJjseRzzc8sJZYeCcG7RRWeHXXRPFn A6E0FzhYqgLgBCGGbSQoyMUYLavG3ovZN0XnksqR5Mke854U3TpII8mXx5i7sw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb1l25kvWz1KWg; Thu, 9 May 2024 19:08: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 449J8k9F025819; Thu, 9 May 2024 19:08:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449J8kNA025816; Thu, 9 May 2024 19:08:46 GMT (envelope-from git) Date: Thu, 9 May 2024 19:08:46 GMT Message-Id: <202405091908.449J8kNA025816@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: 24d5cc14dd60 - main - sound: Rename oss_audioinfo->real_device to oss_audioinfo->legacy_device List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 24d5cc14dd60b49553ff3ee7830305621f782ff1 Auto-Submitted: auto-generated The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=24d5cc14dd60b49553ff3ee7830305621f782ff1 commit 24d5cc14dd60b49553ff3ee7830305621f782ff1 Author: Christos Margiolis AuthorDate: 2024-05-09 19:08:17 +0000 Commit: Christos Margiolis CommitDate: 2024-05-09 19:08:34 +0000 sound: Rename oss_audioinfo->real_device to oss_audioinfo->legacy_device The OSS manual now documents this field as "legacy_device". Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: dev_submerge.ch Differential Revision: https://reviews.freebsd.org/D45138 --- sys/dev/sound/pcm/dsp.c | 4 ++-- sys/sys/soundcard.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index fe816db54697..6e5fad048d40 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -2224,9 +2224,9 @@ dsp_oss_audioinfo(struct cdev *i_dev, oss_audioinfo *ai) ai->mixer_dev = (d->mixer_dev != NULL) ? unit : -1; /** * @note - * @c real_device - OSSv4 docs: "Obsolete." + * @c legacy_device - OSSv4 docs: "Obsolete." */ - ai->real_device = -1; + ai->legacy_device = -1; snprintf(ai->devnode, sizeof(ai->devnode), "/dev/dsp%d", unit); ai->enabled = device_is_attached(d->dev) ? 1 : 0; /** diff --git a/sys/sys/soundcard.h b/sys/sys/soundcard.h index 64f57742a52b..b5434b930215 100644 --- a/sys/sys/soundcard.h +++ b/sys/sys/soundcard.h @@ -1878,7 +1878,7 @@ typedef struct oss_audioinfo int card_number; int port_number; int mixer_dev; - int real_device; /* Obsolete field. Replaced by devnode */ + int legacy_device; /* Obsolete field. Replaced by devnode */ int enabled; /* 1=enabled, 0=device not ready at this moment */ int flags; /* For internal use only - no practical From nobody Thu May 9 23:20:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7Km3Nm0z5KGVw; Thu, 09 May 2024 23: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 4Vb7Km05z0z44Dk; Thu, 9 May 2024 23: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=1715296844; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w86smXO9dhq8f25gZaagbvhYDLvw3yGijmJYZtP5u6w=; b=x4pWHd21xo7YfsXVpwbPfVEcj3zzCHFNubq0UezP5cWn/B6vP9zarFEM5jdWj9WyF4IXW1 9klAWsJZUQuyPVhR6XsNSmobSaB+75uVRvIP//1Ue9Hmd5rZZmubyzqLdPXLTL2DLd/poL B6wWTjo40JK1MEH6c2NgPeFno4Um4Gv2AtiAD5DvTu1qBnkM759hrqW2iIbhKcGMH16Q3p bCpaLEup9CLUPJsS8URWGJtsOsjWwdM4l9jIjYkKcluV3CrbDAWVmvNHCPEyCTrVB+HyCC XAeudwJbLHhBHoOZCUF//RsgtV4QewgbqyRCc87KdOJiscnVAtHG3m6sK7dAdw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715296844; a=rsa-sha256; cv=none; b=xwbCXcaJrItWfFvZ9bbPNovIKX0GlNi9hJsWZ8SPhxsRyx3aIxv20o92/9H8l3eJFSOJ+3 wvsMwAdyf1EEq7DBiCKpVuEFBVnXJyJ6JXxrx+m8a+ihPXMeEzEpGo9OLAh0d3yyAGfiPR grbzP1UMtJRTHDowEtRCYD/D/GP1YYZ4+wgfnVS/L1vIkEXgq9pqleQnQ/bcpY2A7xkg2d ojzFlov35Ni1VcSqjRGtm07zGZMSl37TA2FCm0n70LEj7N4FcsKdM6+ImZ4PEJFD8CiICK dSpEzdbe4g3R5fd8G4dWgJXnepYqbMlG91DEJIia4SA84gFvs4Fzi3o4fMy2zQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296844; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w86smXO9dhq8f25gZaagbvhYDLvw3yGijmJYZtP5u6w=; b=wlTBSMcaByeO6yn98DOxVuhXQXTe4lnZJhDEtAgObS6c3tEiWKhoQNtsYHlQxrns2RLP05 UzRHdERoPNnHUQdHu2MAH+UiwW6zK0P98HJSSgjQrm/H1YVfvNXOuWfu8KGiKUFFWeEILd 3fzH2Y6lQYJDiKMH+5JNeheN46J7oVH3TYwG+15yp6iHgL/Mr0Ee8JlRU0Ev2waPzMG82o NQO7EUkyN8S8J6Dv3xMt/8TeYgZ3aIDy8ZzyWMyv4ju/RVB2oAdNa78RpNOb913ub0Vx1t W4qydN9oREZhYGn48GNfV/leYF2L33kr1KORKgX2v757mhsZDzy+pCTYkeuWtA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7Kl6nZkz1SDh; Thu, 9 May 2024 23: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 449NKhU2056601; Thu, 9 May 2024 23: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 449NKhkx056598; Thu, 9 May 2024 23:20:43 GMT (envelope-from git) Date: Thu, 9 May 2024 23:20:43 GMT Message-Id: <202405092320.449NKhkx056598@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: e64318e76ed9 - main - arm/pmu: remove passing trap frame as argument List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e64318e76ed90e8ef2666a9c5628e036d2cc8817 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=e64318e76ed90e8ef2666a9c5628e036d2cc8817 commit e64318e76ed90e8ef2666a9c5628e036d2cc8817 Author: Elliott Mitchell AuthorDate: 2024-05-09 23:04:34 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:14:29 +0000 arm/pmu: remove passing trap frame as argument While otherwise a handy potential approach, getting the trap frame via the argument isn't documented and isn't supposed to be used. Adjust pmu_intr() to instead use curthread->td_intr_frame, which is the proper way. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1126 --- sys/arm/arm/pmu.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/sys/arm/arm/pmu.c b/sys/arm/arm/pmu.c index 98d8cdcf2df8..050121934447 100644 --- a/sys/arm/arm/pmu.c +++ b/sys/arm/arm/pmu.c @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -65,9 +66,6 @@ uint32_t ccnt_hi[MAXCPU]; static int pmu_intr(void *arg) { -#ifdef HWPMC_HOOKS - struct trapframe *tf; -#endif uint32_t r; #if defined(__arm__) && (__ARM_ARCH > 6) u_int cpu; @@ -87,10 +85,8 @@ pmu_intr(void *arg) #ifdef HWPMC_HOOKS /* Only call into the HWPMC framework if we know there is work. */ - if (r != 0 && pmc_intr) { - tf = arg; - (*pmc_intr)(tf); - } + if (r != 0 && pmc_intr) + (*pmc_intr)(curthread->td_intr_frame); #endif return (FILTER_HANDLED); From nobody Thu May 9 23:20:44 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7Kn23vrz5KGPr; Thu, 09 May 2024 23: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 4Vb7Kn0bB5z44b5; Thu, 9 May 2024 23: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=1715296845; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I4IwQQ6mNKeZxvnBE5u1zhrZxGVqISO2O87Qx1hsIbc=; b=Vspde5xs6Faw0VvjwOI3MapZ2igJCvYLOY/fH4U/QKpuEorJ24pOGH7aLfKzaQ0UBa3imR 7gGRICyYUHtneZHLPYsJkP0MGXOg46jUBDm6hz67F4KjQoIhKGDIySVrwXFlPeUVV+FV5A aF9Z+CWd0rR1TE0O5UxQXz4WgoflFrfghI85NXfO/kl8Aa7ZmnDu7WdTxLxLmJ/XkUvgn2 Agk2C8WmuihSxIGvRSfmZK0rWnaBpszyQDqG/WbfsNRHplTt6p3I6yVnqcpisb/yIU181h a+PE/9iJOjPOQDLtxpvRXC3Wd+N5aFxFkohce1G3Kneo4kV4WfVPCO7mArnJkQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715296845; a=rsa-sha256; cv=none; b=C+YKPY/oYKk0wjadnbSzkPQoUquzLtyp1GIPCU/0bN1NRpmG0pCoVQ40Wdz4TreVWgQ9l7 pwpPWIwj75x/GIMmgRXz7YfLjISnCZHAXose3IGFljAL/ErOEVUvsqQ8g0+2R90066Dj2T E1gojLH7BDPg7LUL8UnyrNMGQgyEsw44ftnmyxA99bWt7lyQor2rc+vpB5iAhbfmSSks4d +NChbr0up8H71VT88titwVQWui/OoJAZufNrOi33GjieMYsbFU6JKrAhOMH84BaHV729ux C4KbsgbQOXVMgLa62toCbrX89XgLO/yfbBSEvN6bKRKoNMEqSeMSYorkNJaVyQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296845; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I4IwQQ6mNKeZxvnBE5u1zhrZxGVqISO2O87Qx1hsIbc=; b=hS87KFVRmPtII28vd+qS4Ko4QeACoCvTTbRM/vODvMq4VjkNdVfxDq35E5fOjxzafPGkvL O/RzXgBU88lq3f47vLNI96VcGNPC4Ynqa9djahq2nq/SwZYK1LUfF1rxMZ9kTcT7EV4NsY faj/0FFzrgogP22nicWepQucp6B1tCkkoKwtGisAWGQ9a7Eat5vDiKVH+OBJC4KB4pDizY vcxsFrJtj/UGRddCyDWyQCafOlP5BBlsh4xziIkIqZOZ02+gxkZ4fJzT0KK1wXWDPCm/J6 PbGx8HvLPcWppiur/WbrUaeHMsy26CU28+kjc0LOKOgKWwREf0lKCHs5V+qBqQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7Kn0CgNz1RHZ; Thu, 9 May 2024 23: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 449NKirq057298; Thu, 9 May 2024 23: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 449NKiep057282; Thu, 9 May 2024 23:20:44 GMT (envelope-from git) Date: Thu, 9 May 2024 23:20:44 GMT Message-Id: <202405092320.449NKiep057282@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: cd04887b9569 - main - kern/intr: change ->ie_irq to unsigned List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cd04887b9569494496e25bdda241cbdb947f6b6f Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=cd04887b9569494496e25bdda241cbdb947f6b6f commit cd04887b9569494496e25bdda241cbdb947f6b6f Author: Elliott Mitchell AuthorDate: 2024-05-09 23:04:34 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:14:33 +0000 kern/intr: change ->ie_irq to unsigned All architecture implementations actually want this to be unsigned. INTRNG the equivalent is overtly unsigned. x86 and PowerPC merely avoid the need to explicitly convert at several points. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1126 --- sys/kern/kern_intr.c | 2 +- sys/sys/interrupt.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/kern/kern_intr.c b/sys/kern/kern_intr.c index 912504f8b1d0..928bfabb5c61 100644 --- a/sys/kern/kern_intr.c +++ b/sys/kern/kern_intr.c @@ -276,7 +276,7 @@ intr_event_update(struct intr_event *ie) } int -intr_event_create(struct intr_event **event, void *source, int flags, int irq, +intr_event_create(struct intr_event **event, void *source, int flags, u_int irq, void (*pre_ithread)(void *), void (*post_ithread)(void *), void (*post_filter)(void *), int (*assign_cpu)(void *, int), const char *fmt, ...) diff --git a/sys/sys/interrupt.h b/sys/sys/interrupt.h index 9fa0adf9139f..f3c67e43d428 100644 --- a/sys/sys/interrupt.h +++ b/sys/sys/interrupt.h @@ -121,7 +121,7 @@ struct intr_event { int ie_count; /* Loop counter. */ int ie_warncnt; /* Rate-check interrupt storm warns. */ struct timeval ie_warntm; - int ie_irq; /* Physical irq number if !SOFT. */ + u_int ie_irq; /* Physical irq number if !SOFT. */ int ie_cpu; /* CPU this event is bound to. */ volatile int ie_phase; /* Switched to establish a barrier. */ volatile int ie_active[2]; /* Filters in ISR context. */ @@ -175,7 +175,7 @@ struct _cpuset; int intr_event_bind_ithread_cpuset(struct intr_event *ie, struct _cpuset *mask); int intr_event_create(struct intr_event **event, void *source, - int flags, int irq, void (*pre_ithread)(void *), + int flags, u_int irq, void (*pre_ithread)(void *), void (*post_ithread)(void *), void (*post_filter)(void *), int (*assign_cpu)(void *, int), const char *fmt, ...) __printflike(9, 10); From nobody Thu May 9 23:20:46 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7Kp43PXz5KGbt; Thu, 09 May 2024 23: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 4Vb7Kp1bgRz44Dl; Thu, 9 May 2024 23:20:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=38b3c2n52llAcnR8aFzPlFCnLASr+tClrzoDaq/2itg=; b=gnxUMg071EvzvgL+exs8WbO8O52cbw9VMU9gtEubkVWx/GmLmIR2SKknhOKf/n8hT8oZj+ wAa6Lqi9f2b+GqDGyqZbxW8aKxEr0k7brtRwD4ncZQ0Svb9xNA+IQR8Jp/j4C9CLWooW1Z hCHt2HV1HJvsK2Af4Xbrzi9xC5NaMV317/k15qZvSerGXFjHJJeqVX7IdoW13ZTo8kaL50 zNn+ZUJ3WYqCxJmP+oDZni0Hp49PP56RHcL4mz7E5m5j/tmXpq3hGP8blcE+lHnUfueNQz I/xkqbd3M8vO6Ft/tmZXHrmED6VRhU3Lv4c74SRJGGEie9frFrxzdIHcoNgzFg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715296846; a=rsa-sha256; cv=none; b=B4LEovBHOFdbxAGTLUKaBqIpGHBhT2lcTeh2xh0jE8gH/b8P1DuCuBJX9xy2+7qLrFlvt7 aRBmEYlb0sFsjFliq+WNb9ClaZk1r590LhAdEDhIwVfAh1XrRx7D48aPI1QdgIUrlQjHq0 Hc9T8JXK86pI3a3LjlPf0DJpbwIgFfka7DdWXJfX+QwefWpMhcDKcQV0ccrebpynVSWx6/ SmreMZRgZMT+MkYokSgWhaK40MBWb/y+q0gN4E9DixDCRpkjayOVsPx4GhU10cIO25WraU 1zQkAUqZchM+AkVTYG/EwEBqZHIB6864LvQ4qkoN7OZjbLp1ifK3gyJVUuOmsg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=38b3c2n52llAcnR8aFzPlFCnLASr+tClrzoDaq/2itg=; b=RXaec/KnHQiU8kmB9/z5mUxvEs2Dzy5bJcYJgsGkVkl96CD9rcWdZSt2yVwYQWcR7z8UI7 x3uo8upnc9SeJQ8vk135wzuYb20Qi7d3/tuIZe/ZfGQ3fZcspgG1pB/eAOQ2ohfdaXKdpT iJtnYUnZoXev/m/rO0mRtLsW7biSfG+047cNmeJ8KhEM4E1XK4G3m3doo5u+ID/+87AeL4 oy3pHHoAmD/ORMpJlnDA5yWMkNta3PDX86S9BJTwgNQonbw7SzX0Rg8ADJRoC2D5620NP3 vZHqLd+a2/vnWhKgpWSnoxmGUp8Ti+sAywMya/6ZgLeCFQhBK1C+/ZihggeLLw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7Kp1CS3z1S3F; Thu, 9 May 2024 23: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 449NKkfv057613; Thu, 9 May 2024 23: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 449NKkmO057610; Thu, 9 May 2024 23:20:46 GMT (envelope-from git) Date: Thu, 9 May 2024 23:20:46 GMT Message-Id: <202405092320.449NKkmO057610@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a9e0f316b3da - main - kern/intr: redeclare intr_setaffinity()'s third arg constant List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a9e0f316b3da4144c654cf77542bc5c51632e896 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a9e0f316b3da4144c654cf77542bc5c51632e896 commit a9e0f316b3da4144c654cf77542bc5c51632e896 Author: Elliott Mitchell AuthorDate: 2024-05-09 23:04:35 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:14:35 +0000 kern/intr: redeclare intr_setaffinity()'s third arg constant This matches reality and allows removal of a __DECONST(). Fixes: 4c72d075a57 ("LinuxKPI: const argument to irq_set_affinity_hint()") Fixes: 9b33b154b53 ("Add support to cpuset for binding hardware interrupts") Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1126 --- sys/compat/linuxkpi/common/include/linux/interrupt.h | 2 +- sys/kern/kern_intr.c | 4 ++-- sys/sys/interrupt.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/interrupt.h b/sys/compat/linuxkpi/common/include/linux/interrupt.h index d5f9a0ae7a47..dfd9816da8be 100644 --- a/sys/compat/linuxkpi/common/include/linux/interrupt.h +++ b/sys/compat/linuxkpi/common/include/linux/interrupt.h @@ -133,7 +133,7 @@ irq_set_affinity_hint(int vector, const cpumask_t *mask) int error; if (mask != NULL) - error = intr_setaffinity(vector, CPU_WHICH_IRQ, __DECONST(cpumask_t *, mask)); + error = intr_setaffinity(vector, CPU_WHICH_IRQ, mask); else error = intr_setaffinity(vector, CPU_WHICH_IRQ, cpuset_root); diff --git a/sys/kern/kern_intr.c b/sys/kern/kern_intr.c index 928bfabb5c61..9073e0d7af01 100644 --- a/sys/kern/kern_intr.c +++ b/sys/kern/kern_intr.c @@ -443,10 +443,10 @@ intr_lookup(int irq) } int -intr_setaffinity(int irq, int mode, void *m) +intr_setaffinity(int irq, int mode, const void *m) { struct intr_event *ie; - cpuset_t *mask; + const cpuset_t *mask; int cpu, n; mask = m; diff --git a/sys/sys/interrupt.h b/sys/sys/interrupt.h index f3c67e43d428..899d65e386e0 100644 --- a/sys/sys/interrupt.h +++ b/sys/sys/interrupt.h @@ -188,7 +188,7 @@ int intr_event_suspend_handler(void *cookie); int intr_event_resume_handler(void *cookie); int intr_getaffinity(int irq, int mode, void *mask); void *intr_handler_source(void *cookie); -int intr_setaffinity(int irq, int mode, void *mask); +int intr_setaffinity(int irq, int mode, const void *mask); void _intr_drain(int irq); /* LinuxKPI only. */ int swi_add(struct intr_event **eventp, const char *name, driver_intr_t handler, void *arg, int pri, enum intr_type flags, From nobody Thu May 9 23:20:47 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7Kr06Ykz5KGYf; Thu, 09 May 2024 23: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 4Vb7Kq2bx4z44MC; Thu, 9 May 2024 23: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=1715296847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d9vleVoPXhvLyclU/y4LYUocjv0jLSkvxCaI2eI83cg=; b=USpu361QzT7aFfiVAdNaSpFVJXBKQ5x/lSpDxglMSgyxDin/dIDe4tLQw0nE+Qh/YWwQbm ly8/W3phXUzbsS2YHEN24uPE5zsvceLOS1+NN76iW5Mz9NXCL6EV87O6kBLlzox5eLXgzL qUwOyQkjtb1rWT6jys/hkMat07vHP6rzQCv6agmjhcIAQM6BWKLlO92EPDAlmUvjFkgH0D 7y2Dyrm3YfE4jGEdRMA44fO8SwZ6O/A37fGuErJy+NL//a4j7KR7sdKYxYuO89CZWDO+uQ dNUnvHaXZR9Ty1lYsATBuuCqgKI0P1u21w3qM9/uLpbJX+KXWZAzSASaDF1pNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715296847; a=rsa-sha256; cv=none; b=FGCdm4Eq6YKqTeJWkHdxg+6C2Dm5sVKBKj2npC47LHk/Ms8HiQaY6hA3tMoOfV78HyXroy cA3MdJglqKHU4M5PjQN1rsPMmdBTWxSgxXrGkwwcoDHTyWdKjQ4NvOC8xbFBoejfRad7lQ MaCxIdEmldlGjMb53nEEBwicIEb/tru4FRoR6e0u/F43KdaMcAfnV61+dNHeMQAqQtI3nh pgHD8KXiDoE4RQHfVcEsGIXDdYh0tu4aJBqzTxVn5RZYyCwGhP5/GaorZsbX3CrafavGNY PFkHkjKANHBhIExKP0CyXWLMclF0QHeCMaoa194c50nLs4C4KoPetCPG2Vtpsg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d9vleVoPXhvLyclU/y4LYUocjv0jLSkvxCaI2eI83cg=; b=LdrN5CwEvbQHTQTKWDkpMKakAdHcDDz3PgT/gYcBJIucopLS7oH+l2W8YmpO0Ul7SNpOGA hpnqgIa3AWOuF6uR3XU1laZc1xyGdL6Q6UzSxJyF30CQG/iI0yxarS+IiwLm0GWb4gaKey 24COyBcIkOnmRgD+yPnKrwb5kIRpw1Js47hC27CJ66hk6dkuMUn6ncT5DYWbikk9CvwajQ xH5hUu6A9+B4iXwtr2w6pDvtKZYlEfdxanr34xfUDoVrGcpzxRWmCchMY+eoq/WveDFvPG fAoVSInZcUBXowYSAoRrV8Dh9b3MRrXu8vFlQsSAUu6Ij5Omel1NYln33ug6DA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7Kq2BmLz1RlN; Thu, 9 May 2024 23:20: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 449NKlsI057666; Thu, 9 May 2024 23: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 449NKlIt057663; Thu, 9 May 2024 23:20:47 GMT (envelope-from git) Date: Thu, 9 May 2024 23:20:47 GMT Message-Id: <202405092320.449NKlIt057663@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 9f3a552f9e1a - main - intrng: switch flag arguments to unsigned List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9f3a552f9e1a7dbe707f143a8b8e0cdc00a8014e Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=9f3a552f9e1a7dbe707f143a8b8e0cdc00a8014e commit 9f3a552f9e1a7dbe707f143a8b8e0cdc00a8014e Author: Elliott Mitchell AuthorDate: 2024-05-09 23:04:35 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:14:38 +0000 intrng: switch flag arguments to unsigned The flag variables behind these are all unsigned. As such adjust the declarations to match reality and reduce the number of mismatches. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1126 --- sys/kern/subr_intr.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/kern/subr_intr.c b/sys/kern/subr_intr.c index 5958f9025b27..210989868415 100644 --- a/sys/kern/subr_intr.c +++ b/sys/kern/subr_intr.c @@ -149,7 +149,7 @@ static bool intr_ipi_dev_frozen; static struct mtx pic_list_lock; static SLIST_HEAD(, intr_pic) pic_list; -static struct intr_pic *pic_lookup(device_t dev, intptr_t xref, int flags); +static struct intr_pic *pic_lookup(device_t dev, intptr_t xref, u_int flags); /* Interrupt source definition. */ static struct mtx isrc_table_lock; @@ -744,7 +744,7 @@ isrc_add_handler(struct intr_irqsrc *isrc, const char *name, * Lookup interrupt controller locked. */ static inline struct intr_pic * -pic_lookup_locked(device_t dev, intptr_t xref, int flags) +pic_lookup_locked(device_t dev, intptr_t xref, u_int flags) { struct intr_pic *pic; @@ -775,7 +775,7 @@ pic_lookup_locked(device_t dev, intptr_t xref, int flags) * Lookup interrupt controller. */ static struct intr_pic * -pic_lookup(device_t dev, intptr_t xref, int flags) +pic_lookup(device_t dev, intptr_t xref, u_int flags) { struct intr_pic *pic; @@ -789,7 +789,7 @@ pic_lookup(device_t dev, intptr_t xref, int flags) * Create interrupt controller. */ static struct intr_pic * -pic_create(device_t dev, intptr_t xref, int flags) +pic_create(device_t dev, intptr_t xref, u_int flags) { struct intr_pic *pic; @@ -818,7 +818,7 @@ pic_create(device_t dev, intptr_t xref, int flags) * Destroy interrupt controller. */ static void -pic_destroy(device_t dev, intptr_t xref, int flags) +pic_destroy(device_t dev, intptr_t xref, u_int flags) { struct intr_pic *pic; From nobody Thu May 9 23:20:48 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7Ks0QD9z5KGc0; Thu, 09 May 2024 23: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 4Vb7Kr4QHBz44Z6; Thu, 9 May 2024 23: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=1715296848; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=foU+bh8N7Ck/XZv3Tkks6+7s48d7mjXwjweuXDm6DmA=; b=UCdqGUrBmab4DeUmgP8q6NNyw22m/f+cEehwk6JxgqsWbvVDwlZUivb6p/P5BOiqTcq+bf QDQXhC2GybC5zc2FGyApP3llicHkBGtDT563PsNXF32t7Jgm6S8OmL6H9b7WrbDuAVbFI+ 8Qvv+fGmdXNEiPcO6LKaGquHRF6K0kPF+0lkQhwqb2MS1O16himz8vX1bs2L/ciOgTondG pf30p1wnxAOLfK3KV4RMREUCyi5OFYmaKsD261PwgjEQ5pc1TF40QWX4ZpevVJ9tVznlQq mZ4fw3nh6R3YCd/93LrVZeurpJT1gM/mo1XL8KR4jhLiu2Xv5nqRHq9xwxHOXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715296848; a=rsa-sha256; cv=none; b=kv0s65E/qOU2LxEZQWE4XCKDhiS0RpmsYrhKXzhhOahCrB7NaQ0HIufv4MPOv7VCAL0moS sBcNj4hdpIj7JcFCbHhlQz6jUi3/krRu9dTcBjhDWR70ma9Dkt8hpbMco6CGsh8AK/pxik j/51ykS5nloBH/y5fGTUhEz4FPwiCqtdAfN5+zP8nwcb0aMV/rDZjH7f7VZLKgc2AuMooP EvbpTty/doD3fuH2RyIRJV3crXEh7dwsEBRWAavR3laluhg8Tkeg65N3I5j8Ks0ozA+MLV W15oTC4UvRoEhJ2r4eEvnGpSH8yrQqIoroDR41PlLPf6p92eAXNFssD7ITSfFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296848; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=foU+bh8N7Ck/XZv3Tkks6+7s48d7mjXwjweuXDm6DmA=; b=G33+mEWPe31/OqpKGTeU+7DXAoXfMo18i75Nq+5SCGHV8T/StsAFqhC8l33Z66rKMSv4On il5eRRsrCNY1Tuuik6k/wxf8ySvVcoAsNJNB9y1cU7+j8oq5JarcY2rO2zkrthvF81LNfs lJoa5KTWDpNw4vs9Yjhkft88dXesAgn6gJPi+FPI63Ou+i7UZ8OgJCAYD8pB8omz48xecT TINKjJK2lc2pIJNI1wWbZi45fcglFiEOksPDiu5RxEObP1dXF5gYU2WhFKHPQjsKfnsxod 8bTzWAGYquC0Gv5g63gnGN7gPFZ/Lcn0HwVmBRIVmTBuPmlwIpvaxuCrecGuiw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7Kr3BDzz1S3G; Thu, 9 May 2024 23: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 449NKmmV057708; Thu, 9 May 2024 23:20:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449NKmd0057705; Thu, 9 May 2024 23:20:48 GMT (envelope-from git) Date: Thu, 9 May 2024 23:20:48 GMT Message-Id: <202405092320.449NKmd0057705@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 99adf661ab63 - main - sys: declare bit sets unsigned List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 99adf661ab635a956abc2998689fd42c85f8ccc5 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=99adf661ab635a956abc2998689fd42c85f8ccc5 commit 99adf661ab635a956abc2998689fd42c85f8ccc5 Author: Elliott Mitchell AuthorDate: 2024-05-09 23:04:35 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:14:41 +0000 sys: declare bit sets unsigned Substantially reduce the number of signed/unsigned issues (warnings if enabled). While these are presently disabled for FreeBSD, being able to enable another warning would be good. Differential Revision: https://reviews.freebsd.org/D32793 Reviewed by: imp, jhibbits Pull Request: https://github.com/freebsd/freebsd-src/pull/1126 --- sys/sys/_bitset.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/sys/_bitset.h b/sys/sys/_bitset.h index 87bc722fe5f8..2b3be3bbec61 100644 --- a/sys/sys/_bitset.h +++ b/sys/sys/_bitset.h @@ -36,7 +36,7 @@ * Macros addressing word and bit within it, tuned to make compiler * optimize cases when SETSIZE fits into single machine word. */ -#define _BITSET_BITS (sizeof(long) * 8) +#define _BITSET_BITS (sizeof(unsigned long) * 8) #define __howmany(x, y) (((x) + ((y) - 1)) / (y)) @@ -44,7 +44,7 @@ #define __BITSET_DEFINE(_t, _s) \ struct _t { \ - long __bits[__bitset_words((_s))]; \ + unsigned long __bits[__bitset_words((_s))]; \ } /* From nobody Thu May 9 23:20:49 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7Kt0HWFz5KGSp; Thu, 09 May 2024 23: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 4Vb7Ks4fgvz44HB; Thu, 9 May 2024 23: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=1715296849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yu+8grKTCq8H/18lKTCJRO3h0S+i04WSArtlOrua2iY=; b=Bl5f5oEn/M/MI/S+WL09Yz969WfLAUN+VR+InnFUL80gQvp4bKWlvmaTUeg0tIWaz/uVoV Nom1KbePVUSN0DTIq+aSb7DUejCmKbGR4s2rL8THy2DTuk0sGf/oTZZWbDgPawkk/2Ee5p b50ZOFGKeqlxFZUBExiB0QAGb00KscnehD2huxdPefqunQ6ukdIPesEtPsp1dm7EsXCb6H zSzmoSM/PbycPfxqrL41vEfvXgJDS4gxb4XVJ6nFbWjTFWlKZEUNLu3t1T7al86As7GwXE 9Gn74ZCu00oXQFKYZ6lcYYx0ioCj5nN7h/u/EaiGh1o02xV+orL06aNvL3kGsA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715296849; a=rsa-sha256; cv=none; b=pGGCjxF3glLm1O0MTs7T+d+e27eJmptVtqC1ZCwZZjKP0RFN+hUacr+PFcz9cvDl3jBYme lmhvKklSDKOWMqNVxq9xe0NZZVF231f8NYH4ztwSbdnLMvwU9YY4sNhVcPFpoNghkTIPo7 B4uCQYOGLzPVzn7v4Pc9nT8Xx7w+LRL1QRTHBXq8JATv1it6WFP+XcKsIg5K5KpkeXRnh/ q5sP8gieoJsPQe8KpU6na3p6L6fzekO3iBt7ql8YD0jSyo5wjK4QBDGTyB2kizk9LVsrtD 3PuPBc6TTEGilqG6xP17Zmjx8noDFk4e/Gf0P4LR4PgXa56H5Ls2X+x5ZnMnzg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Yu+8grKTCq8H/18lKTCJRO3h0S+i04WSArtlOrua2iY=; b=a/ejxRADooz1sF9DwDp+wuGxooFmZfBjGg+ZemSjU6yG7M/K7YVyngu/H8owTEI7y9zeE/ rizSN/GDAqJITf/HWBuhlwtwz3BKJDkBXCy170g3DZ65lqK4zzd/3g7MmKu5W08jnh2PxW oXSQtVxvGkcO0ZBf/v97jdIfOoNT6Opl9gYayQYFpS6U4bmuLSIFBUpReKBLDaNOpY2GSs f4phQHCb9YkUQdO01NB5I/PNYdnXa+F2d9bFTt46kpt/HDJiWgmWhJJuQdS1u5zMKz/hdP QUUINWNa4bPDL+J1bxtalfnT0K7CvoF2ybj76jWgwSp3AXAHGuegB/natFtnbw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7Ks49dYz1Rxl; Thu, 9 May 2024 23: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 449NKn7I057750; Thu, 9 May 2024 23: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 449NKnZk057747; Thu, 9 May 2024 23:20:49 GMT (envelope-from git) Date: Thu, 9 May 2024 23:20:49 GMT Message-Id: <202405092320.449NKnZk057747@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 98c276811aec - main - arm: add missing atomic-pointer functions List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 98c276811aece750cd93cec53cd6c8f926519da5 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=98c276811aece750cd93cec53cd6c8f926519da5 commit 98c276811aece750cd93cec53cd6c8f926519da5 Author: Elliott Mitchell AuthorDate: 2024-05-09 23:04:35 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:14:59 +0000 arm: add missing atomic-pointer functions The pointer function types were missing for these functions, so add them. Valuable for places where type sizes vary by architecture. Differential Revision: https://reviews.freebsd.org/D37778 Reviewed by: imp, andrew Pull Request: https://github.com/freebsd/freebsd-src/pull/1126 --- sys/arm/include/atomic.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/sys/arm/include/atomic.h b/sys/arm/include/atomic.h index 2cf97017b04a..88b5bd7acbc5 100644 --- a/sys/arm/include/atomic.h +++ b/sys/arm/include/atomic.h @@ -1052,6 +1052,12 @@ atomic_thread_fence_seq_cst(void) dmb(); } +#define atomic_add_ptr atomic_add_32 +#define atomic_add_acq_ptr atomic_add_acq_32 +#define atomic_add_rel_ptr atomic_add_rel_32 +#define atomic_subtract_ptr atomic_subtract_32 +#define atomic_subtract_acq_ptr atomic_subtract_acq_32 +#define atomic_subtract_rel_ptr atomic_subtract_rel_32 #define atomic_clear_ptr atomic_clear_32 #define atomic_clear_acq_ptr atomic_clear_acq_32 #define atomic_clear_rel_ptr atomic_clear_rel_32 @@ -1059,15 +1065,16 @@ atomic_thread_fence_seq_cst(void) #define atomic_set_acq_ptr atomic_set_acq_32 #define atomic_set_rel_ptr atomic_set_rel_32 #define atomic_fcmpset_ptr atomic_fcmpset_32 -#define atomic_fcmpset_rel_ptr atomic_fcmpset_rel_32 #define atomic_fcmpset_acq_ptr atomic_fcmpset_acq_32 +#define atomic_fcmpset_rel_ptr atomic_fcmpset_rel_32 #define atomic_cmpset_ptr atomic_cmpset_32 #define atomic_cmpset_acq_ptr atomic_cmpset_acq_32 #define atomic_cmpset_rel_ptr atomic_cmpset_rel_32 +#define atomic_fetchadd_ptr atomic_fetchadd_32 +#define atomic_readandclear_ptr atomic_readandclear_32 #define atomic_load_acq_ptr atomic_load_acq_32 #define atomic_store_rel_ptr atomic_store_rel_32 #define atomic_swap_ptr atomic_swap_32 -#define atomic_readandclear_ptr atomic_readandclear_32 #define atomic_add_int atomic_add_32 #define atomic_add_acq_int atomic_add_acq_32 From nobody Thu May 9 23:20:50 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7Kv1n1lz5KGW7; Thu, 09 May 2024 23:20: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 4Vb7Kt5XTbz44FG; Thu, 9 May 2024 23: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=1715296850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nra0xFd0HVXxcYBwV0QbL6hqAMnhHrUBc5M1xFldxDc=; b=Q/XERysO8uPO/td7VgiT9kM3zzfCnvTrM9lFO/vz5Jeqekvq9/bT9uTaxXiBLDItmjkEU0 ZWhm1zcA0M/iqj784cdR9XrQeTNH2ixhBHDlLDdcs9flyD/edOZdl0AY8arkDYNOxtOevt 8815w6OgD41/NEmlJGMX/kHdK2Fre9GyTVoCiNFRWCu0TyRox6Wwhs61MRs9PEpz9zOfYC Xcq4b9P7bkZxkIuJs4DZhus8D1EXWNXe47C0LHOnNq11QV2v8MIStk+Sg6ejFQ73yniO92 BIVlfbGTJojY6ftlmJQisJgIiePhnhBppkKqz9hXkMU0oWNcNqd6e8iAXgEBuw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715296850; a=rsa-sha256; cv=none; b=j9wrYuUi7ZP5OpIiTgeNVJJkbLjZ9+b++aJD16rRuz1VhUiax7spD6+ylMXvTPnhokzVml f43H45nuJyhF6Z2M618KBalcTqUBQSuXWQb+7meNEQ58gA67xBn1qVeIjXJuCM5hOTY0aC uQ5WSbc5NFOf9F/E9uyHL8EYKa9Mv8vUZpKqzg1A+i6VAq+c2GlpMC3ZF74/XD/T7ltBYu MxRN61JohowDQH9rjWIJ7GN4Oarm1jfxBns+M8m1VxWukyuwX6uYbANoCjTmFSjV4zqFyH yFvduNQE98SBJqHRO6TEgHG1anMSWPDmvs42zQKyH1+F7VtZigsBsgC5UTfSKw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715296850; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nra0xFd0HVXxcYBwV0QbL6hqAMnhHrUBc5M1xFldxDc=; b=epErLe0K0YtkWsgrQtVcRYQ/IDyBjhzvwIKGhR1F1mIt/jv7EmXnurnHaAG+iNV8str0/d l20P2oNsCG5uLAsP5VJtD3ncVz2Yak8HacPYkeqQ+ygJ84QTkALU9pLdlWydmKsVzSB2JW vB/uudEDZ+fiuE8z8pxGBFuKzCYi/6aboEDUvSAEGKXB95VmDNtk7jlJa9LVQqNgp1EQ8k 2a3rjO5MPB1FsZovWHVOenRYTSwl4sUJOzrLb2StWy3GkSGkfEXXMHbVbPA/666FGls9Fz tnHaKmzpWnzaYPbUKQOE0d0I6oJCmuRr6/AJVcGATc/AFcoMazOgqN0HWWyIqg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7Kt58kRz1S3H; Thu, 9 May 2024 23: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 449NKohK057811; Thu, 9 May 2024 23: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 449NKom9057808; Thu, 9 May 2024 23:20:50 GMT (envelope-from git) Date: Thu, 9 May 2024 23:20:50 GMT Message-Id: <202405092320.449NKom9057808@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: d9817976625f - main - intr/x86: replace use of vector in interface with intsrc List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d9817976625ff9655f481066905cf9abac5520ab Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=d9817976625ff9655f481066905cf9abac5520ab commit d9817976625ff9655f481066905cf9abac5520ab Author: Elliott Mitchell AuthorDate: 2024-05-09 23:04:35 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:15:07 +0000 intr/x86: replace use of vector in interface with intsrc Several x86 interrupt core functions were already operating on intsrc structures. Now switch the remaining 3 to intsrc for consistency. Swap the order of intr_add_handler()'s first two arguments. This matches INTRNG and is more consistent with other functions in this interface. Differential Revision: https://reviews.freebsd.org/D35386 Reviewed by: imp, markj (previous version) Pull Request: https://github.com/freebsd/freebsd-src/pull/1126 --- sys/x86/include/intr_machdep.h | 10 +++++----- sys/x86/include/xen/arch-intr.h | 4 ++-- sys/x86/x86/intr_machdep.c | 19 ++++--------------- sys/x86/x86/nexus.c | 21 +++++++++++++++++---- 4 files changed, 28 insertions(+), 26 deletions(-) diff --git a/sys/x86/include/intr_machdep.h b/sys/x86/include/intr_machdep.h index 64f0174ea637..d7bfcdc126a9 100644 --- a/sys/x86/include/intr_machdep.h +++ b/sys/x86/include/intr_machdep.h @@ -138,12 +138,12 @@ void elcr_write_trigger(u_int irq, enum intr_trigger trigger); #ifdef SMP void intr_add_cpu(u_int cpu); #endif -int intr_add_handler(const char *name, int vector, driver_filter_t filter, - driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep, - int domain); -int intr_config_intr(int vector, enum intr_trigger trig, +int intr_add_handler(struct intsrc *isrc, const char *name, + driver_filter_t filter, driver_intr_t handler, void *arg, + enum intr_type flags, void **cookiep, int domain); +int intr_config_intr(struct intsrc *isrc, enum intr_trigger trig, enum intr_polarity pol); -int intr_describe(u_int vector, void *ih, const char *descr); +int intr_describe(struct intsrc *isrc, void *ih, const char *descr); void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame); u_int intr_next_cpu(int domain); struct intsrc *intr_lookup_source(int vector); diff --git a/sys/x86/include/xen/arch-intr.h b/sys/x86/include/xen/arch-intr.h index eae3994108cc..5ce0ca06e925 100644 --- a/sys/x86/include/xen/arch-intr.h +++ b/sys/x86/include/xen/arch-intr.h @@ -67,7 +67,7 @@ xen_arch_intr_add_handler(const char *name, driver_filter_t filter, struct xenisrc *isrc, void **cookiep) { - return (intr_add_handler(name, isrc->xi_arch.vector, filter, handler, + return (intr_add_handler(&isrc->xi_arch.intsrc, name, filter, handler, arg, flags, cookiep, 0)); } @@ -75,7 +75,7 @@ static inline int xen_arch_intr_describe(struct xenisrc *isrc, void *cookie, const char *descr) { - return (intr_describe(isrc->xi_arch.vector, cookie, descr)); + return (intr_describe(&isrc->xi_arch.intsrc, cookie, descr)); } static inline int diff --git a/sys/x86/x86/intr_machdep.c b/sys/x86/x86/intr_machdep.c index 458a0cb396bb..023c3df22580 100644 --- a/sys/x86/x86/intr_machdep.c +++ b/sys/x86/x86/intr_machdep.c @@ -255,16 +255,12 @@ intr_lookup_source(int vector) } int -intr_add_handler(const char *name, int vector, driver_filter_t filter, +intr_add_handler(struct intsrc *isrc, const char *name, driver_filter_t filter, driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep, int domain) { - struct intsrc *isrc; int error; - isrc = intr_lookup_source(vector); - if (isrc == NULL) - return (EINVAL); error = intr_event_add_handler(isrc->is_event, name, filter, handler, arg, intr_priority(flags), flags, cookiep); if (error == 0) { @@ -303,13 +299,10 @@ intr_remove_handler(void *cookie) } int -intr_config_intr(int vector, enum intr_trigger trig, enum intr_polarity pol) +intr_config_intr(struct intsrc *isrc, enum intr_trigger trig, + enum intr_polarity pol) { - struct intsrc *isrc; - isrc = intr_lookup_source(vector); - if (isrc == NULL) - return (EINVAL); return (isrc->is_pic->pic_config_intr(isrc, trig, pol)); } @@ -513,14 +506,10 @@ atpic_reset(void) /* Add a description to an active interrupt handler. */ int -intr_describe(u_int vector, void *ih, const char *descr) +intr_describe(struct intsrc *isrc, void *ih, const char *descr) { - struct intsrc *isrc; int error; - isrc = intr_lookup_source(vector); - if (isrc == NULL) - return (EINVAL); error = intr_event_describe_handler(isrc->is_event, ih, descr); if (error) return (error); diff --git a/sys/x86/x86/nexus.c b/sys/x86/x86/nexus.c index 8f55b543eee2..aa62c920bcd8 100644 --- a/sys/x86/x86/nexus.c +++ b/sys/x86/x86/nexus.c @@ -458,6 +458,7 @@ nexus_setup_intr(device_t bus, device_t child, struct resource *irq, void *arg, void **cookiep) { int error, domain; + struct intsrc *isrc; /* somebody tried to setup an irq that failed to allocate! */ if (irq == NULL) @@ -476,8 +477,11 @@ nexus_setup_intr(device_t bus, device_t child, struct resource *irq, if (bus_get_domain(child, &domain) != 0) domain = 0; - error = intr_add_handler(device_get_nameunit(child), - rman_get_start(irq), filter, ihand, arg, flags, cookiep, domain); + isrc = intr_lookup_source(rman_get_start(irq)); + if (isrc == NULL) + return (EINVAL); + error = intr_add_handler(isrc, device_get_nameunit(child), + filter, ihand, arg, flags, cookiep, domain); if (error == 0) rman_set_irq_cookie(irq, *cookiep); @@ -524,15 +528,24 @@ static int nexus_config_intr(device_t dev, int irq, enum intr_trigger trig, enum intr_polarity pol) { - return (intr_config_intr(irq, trig, pol)); + struct intsrc *isrc; + + isrc = intr_lookup_source(irq); + if (isrc == NULL) + return (EINVAL); + return (intr_config_intr(isrc, trig, pol)); } static int nexus_describe_intr(device_t dev, device_t child, struct resource *irq, void *cookie, const char *descr) { + struct intsrc *isrc; - return (intr_describe(rman_get_start(irq), cookie, descr)); + isrc = intr_lookup_source(rman_get_start(irq)); + if (isrc == NULL) + return (EINVAL); + return (intr_describe(isrc, cookie, descr)); } static struct resource_list * From nobody Thu May 9 23:28:16 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7VT0tmzz5KHJB; Thu, 09 May 2024 23:28: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 4Vb7VT06sWz46ql; Thu, 9 May 2024 23:28:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715297297; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qZP7rRo7G3HjILSL8ZovzA7lRHTWRBliRnqiTRLiCEI=; b=niTszdmCeL6sM1IOMORpwaTEow8SPuNeNjhz9ACsfg6VjgbB4geeecNvo3kpCJh5yrrt1E Vq8SesEq801ipyFIooZH9H4lJ3ixjfToDgJzxqII4tW2rI7k3DKXQYfBk6MGCfOWCyDmQV ZpiRqRII+GhmVBJsDcijOro/FdM2MFlpZPe6/e0D9GDy14CZdx+gWpto6mHQmi2oRjk5ly CTSKfDZl1QpO0fnh5b8NYHLqkBOLaPViu3R01e1K4jhDJ3YRHhe4SivGQEonGgft6SIK9C x0p6kb+hhcc/x0s7aTOdww8eOB6l8Zh1sYSBzueHIkclBht7COxI1gQAyorhJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715297297; a=rsa-sha256; cv=none; b=GMHbpeW3ouhXjRVNnpG7mV4ky2fjscXUMxfIVghscpHraYk0NlQ54hTCe948WKJUX1N2v8 OI5Lpqx5ChiMCPLLHRsPXn4P/cGLksqUrlLnYx+ND1Q9M0c9va5QAWZeKbN7TPZSfguWtb +uq6niMDaOkX00kU++uPF6+GgT8E4x7DDFUynHqnNkct+U8jpK4mgSDPppdZ5ZZRa5Tp0I HQ/xD/C55Zvvm2EExzRh/VE21klqGCYnH/w9N7kCoItHYec4xHwvh4O8wuwr2cSIddVH0l BOqKVsEcFLeZn2WefgeKq24Wt2Q7sjwyRPhVTMxHUiiAJWLxG/NEDD5FDzoHQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715297297; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qZP7rRo7G3HjILSL8ZovzA7lRHTWRBliRnqiTRLiCEI=; b=FyNxkgSzB6ybS26cNnhVtbSAqVP0BqqZZKPonmwowvouIVq2B4g8Cv9SgVPgM05nlkeLbG 83W8pxFhvQBaS+gqW7lc+otLuDsjg0t8274ovE7Aft36GkQXFzlskmjv5Wdf/fAKtnOEwY i3YlsSuQL9RuiDTedFxww3RKuHaV/L2lhjeWKbrGEOFuqBMYwEjidqq6WuiCvAAu8QsL3U VJ0UsyM89dQ47QTrOpO7wXGBQczJ2J3UzHE0O16tpJRiTQea77U+bIiZwCohS3YAuGJ54e t5VPvPxAaj6OpU4LDEXF1/2CEjDlyT2yLfxIMVLvvC2j5c8xzDUY/xnQOyedvg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7VS6r5Xz1SQT; Thu, 9 May 2024 23:28: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 449NSGSk064819; Thu, 9 May 2024 23:28:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449NSGu8064816; Thu, 9 May 2024 23:28:16 GMT (envelope-from git) Date: Thu, 9 May 2024 23:28:16 GMT Message-Id: <202405092328.449NSGu8064816@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: cd917a17bc39 - main - arp.8: don't document a syntax that doesn't exist List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cd917a17bc39991bb1ee11b90716bcabfcd42791 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=cd917a17bc39991bb1ee11b90716bcabfcd42791 commit cd917a17bc39991bb1ee11b90716bcabfcd42791 Author: Lexi Winter AuthorDate: 2024-05-09 23:26:41 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:26:52 +0000 arp.8: don't document a syntax that doesn't exist The arp.8 manpage documents 'arp -d pub', but the 'pub' flag is not accepted by the arp command. Remove this incorrect documentation. Reviewed by: imp, gleb, mp Pull Request: https://github.com/freebsd/freebsd-src/pull/1215 --- usr.sbin/arp/arp.8 | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/usr.sbin/arp/arp.8 b/usr.sbin/arp/arp.8 index e2b81c6a1bb9..d31b2b482ba3 100644 --- a/usr.sbin/arp/arp.8 +++ b/usr.sbin/arp/arp.8 @@ -44,7 +44,6 @@ .Fl a .Nm .Fl d Ar hostname -.Op Cm pub .Nm .Fl d .Op Fl i Ar interface @@ -95,15 +94,8 @@ A super-user may delete an entry for the host called with the .Fl d flag. -If the -.Cm pub -keyword is specified, only the -.Dq published -.Tn ARP -entry -for this host will be deleted. .Pp -Alternatively, the +The .Fl d flag may be combined with the .Fl a From nobody Thu May 9 23:39:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb7lz6h0nz5KJSc; Thu, 09 May 2024 23:39: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 4Vb7lz68nwz49cv; Thu, 9 May 2024 23:39:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715297999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P7JEo+qRuZ6KlwKlXyKEirDLa3KSqlW/khfjEmHvgkY=; b=UyhMWiOsvcwEaHc9WUXn6qjLkKiSg95GDFAwLotChhRLmFbIxWOPkwmPBHo5ggmjz2VXQ/ prA8N9kgF+rlhV4+SdlRC+TAbr/mODY1EhexIQcBKyzkMQiXn8gUXRmlHdehQdhIqzh3ov gmLaF4P2zSNoNcqNcVJETU0DBQX39A2JsXp+O61q7pd9xFxoINvtg1hgRJ7a5bnOr2ZJZn 7wjuj4H79TkrVuxpmgg3IQruMb4+3OJhfK46vMrZyiov2tmHSDIRoWco20COcJoczjJu/S +3OOn+3OvSgIbwcRE782SifGEdVuxPgfwmbn7CPt1LnHr4lZvTwn8Lbh6BjDOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715297999; a=rsa-sha256; cv=none; b=qZ+Rrt/RQaYMIaeMsvrr25KHVmKX8jPomE+gga9TcNVO3CFdBqBhNAzMH1iXPcmGy2QKMp Q+dkxEfEn//BSDIQvMWc2WU04gf2fiw0gmTrpi4vHWaTzvGO/itHuL1uwBhR/llQ+0hU4h uuRp2MWrifJ4eQuyd03l9OVULgJMHNqUfpck017MEz3pb2hCZtWylCHhqS57ECkA27MjAi baVFk+QA83tZNXBMj2/m8GHq+xPq8vKVnq2U1xFlB4/JpcBuToXU26KS6AoT57JjSwwWQ9 A6fmdeXFkGDAKvaE62+CxB8au5dZYBiAT48qjOAtjOv0RHAiLvQoLttCH4pBiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715297999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P7JEo+qRuZ6KlwKlXyKEirDLa3KSqlW/khfjEmHvgkY=; b=hUh97DFsmG5FzJlc81IGEcERGzRqGIzvjiiaWvJoCkHzRwfDUnJxlh+kmOdZCq1vlf1HP1 mCqPyvc2TcnXZCZeCYGlsLefk6sPN0I7Apat8zVH74ImfeMcNPd5+J1u5A+E0igmhOyDqo tDlzQ3ZAUWu9YuftuLMbvXPg/GyTlu5FdV4TrpGpxPfvGd1JiOhFkLFu7Vy0b2jClos/qH kg3Wmz4oLmZ1wzVnMssyenTqHYalU3u21PlmyH8/BoXjNWkYyRu4AoNV/zpDlk4BlFvfty t1158VvRvwjgcmhIYrBeKlz7OKQ0XzaeZdmwdXx5oAlXsy90E7CYTyltNoC6DQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb7lz5ZwTz1Rmf; Thu, 9 May 2024 23:39: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 449NdxE5082134; Thu, 9 May 2024 23:39:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 449NdxGG082131; Thu, 9 May 2024 23:39:59 GMT (envelope-from git) Date: Thu, 9 May 2024 23:39:59 GMT Message-Id: <202405092339.449NdxGG082131@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 8c2f6c3be012 - main - Address module reproducibility issues List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8c2f6c3be0125142d3c1782e4b0ee0634c584b9e Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=8c2f6c3be0125142d3c1782e4b0ee0634c584b9e commit 8c2f6c3be0125142d3c1782e4b0ee0634c584b9e Author: Dan McGregor AuthorDate: 2024-05-09 23:37:52 +0000 Commit: Warner Losh CommitDate: 2024-05-09 23:37:56 +0000 Address module reproducibility issues Use .PATH & bare filename. This prevents the real source path from being included in the built object, which improves reproducibility. Signed-off-by: Dan McGregor Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1211 --- sys/modules/ice_ddp/Makefile | 4 +++- sys/modules/qatfw/qat_200xx/Makefile | 2 +- sys/modules/qatfw/qat_4xxx/Makefile | 2 +- sys/modules/qatfw/qat_c3xxx/Makefile | 2 +- sys/modules/qatfw/qat_c4xxx/Makefile | 2 +- sys/modules/qatfw/qat_c62x/Makefile | 2 +- sys/modules/qatfw/qat_dh895xcc/Makefile | 2 +- 7 files changed, 9 insertions(+), 7 deletions(-) diff --git a/sys/modules/ice_ddp/Makefile b/sys/modules/ice_ddp/Makefile index 7329f0897325..e0ef344a8283 100644 --- a/sys/modules/ice_ddp/Makefile +++ b/sys/modules/ice_ddp/Makefile @@ -1,5 +1,7 @@ +.PATH: ${SRCTOP}/sys/contrib/dev/ice + KMOD= ice_ddp -FIRMWS= ${SRCTOP}/sys/contrib/dev/ice/ice-1.3.36.0.pkg:ice_ddp:0x01032400 +FIRMWS= ice-1.3.36.0.pkg:ice_ddp:0x01032400 .include diff --git a/sys/modules/qatfw/qat_200xx/Makefile b/sys/modules/qatfw/qat_200xx/Makefile index ce80b75f78fd..97ec5080f1c8 100644 --- a/sys/modules/qatfw/qat_200xx/Makefile +++ b/sys/modules/qatfw/qat_200xx/Makefile @@ -4,6 +4,6 @@ KMOD= qat_200xx_fw -FIRMWS= ${SRCTOP}/sys/contrib/dev/qat/qat_200xx.bin:qat_200xx_fw:111 ${SRCTOP}/sys/contrib/dev/qat/qat_200xx_mmp.bin:qat_200xx_mmp_fw:111 +FIRMWS= qat_200xx.bin:qat_200xx_fw:111 qat_200xx_mmp.bin:qat_200xx_mmp_fw:111 .include diff --git a/sys/modules/qatfw/qat_4xxx/Makefile b/sys/modules/qatfw/qat_4xxx/Makefile index e4d3ed495f8a..fb7171bcaf45 100644 --- a/sys/modules/qatfw/qat_4xxx/Makefile +++ b/sys/modules/qatfw/qat_4xxx/Makefile @@ -4,6 +4,6 @@ KMOD= qat_4xxx_fw -FIRMWS= ${SRCTOP}/sys/contrib/dev/qat/qat_4xxx.bin:qat_4xxx_fw:111 ${SRCTOP}/sys/contrib/dev/qat/qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 +FIRMWS= qat_4xxx.bin:qat_4xxx_fw:111 qat_4xxx_mmp.bin:qat_4xxx_mmp_fw:111 .include diff --git a/sys/modules/qatfw/qat_c3xxx/Makefile b/sys/modules/qatfw/qat_c3xxx/Makefile index e0759fe3a99b..e5c8c0741fa2 100644 --- a/sys/modules/qatfw/qat_c3xxx/Makefile +++ b/sys/modules/qatfw/qat_c3xxx/Makefile @@ -4,6 +4,6 @@ KMOD= qat_c3xxx_fw -FIRMWS= ${SRCTOP}/sys/contrib/dev/qat/qat_c3xxx.bin:qat_c3xxx_fw:111 ${SRCTOP}/sys/contrib/dev/qat/qat_c3xxx_mmp.bin:qat_c3xxx_mmp_fw:111 +FIRMWS= qat_c3xxx.bin:qat_c3xxx_fw:111 qat_c3xxx_mmp.bin:qat_c3xxx_mmp_fw:111 .include diff --git a/sys/modules/qatfw/qat_c4xxx/Makefile b/sys/modules/qatfw/qat_c4xxx/Makefile index 7e859dcbd989..8b4e0cda6746 100644 --- a/sys/modules/qatfw/qat_c4xxx/Makefile +++ b/sys/modules/qatfw/qat_c4xxx/Makefile @@ -4,6 +4,6 @@ KMOD= qat_c4xxx_fw -FIRMWS= ${SRCTOP}/sys/contrib/dev/qat/qat_c4xxx.bin:qat_c4xxx_fw:111 ${SRCTOP}/sys/contrib/dev/qat/qat_c4xxx_mmp.bin:qat_c4xxx_mmp_fw:111 +FIRMWS= qat_c4xxx.bin:qat_c4xxx_fw:111 qat_c4xxx_mmp.bin:qat_c4xxx_mmp_fw:111 .include diff --git a/sys/modules/qatfw/qat_c62x/Makefile b/sys/modules/qatfw/qat_c62x/Makefile index ac1636b81e56..0385653bc7ff 100644 --- a/sys/modules/qatfw/qat_c62x/Makefile +++ b/sys/modules/qatfw/qat_c62x/Makefile @@ -4,6 +4,6 @@ KMOD= qat_c62x_fw -FIRMWS= ${SRCTOP}/sys/contrib/dev/qat/qat_c62x.bin:qat_c62x_fw:111 ${SRCTOP}/sys/contrib/dev/qat/qat_c62x_mmp.bin:qat_c62x_mmp_fw:111 +FIRMWS= qat_c62x.bin:qat_c62x_fw:111 qat_c62x_mmp.bin:qat_c62x_mmp_fw:111 .include diff --git a/sys/modules/qatfw/qat_dh895xcc/Makefile b/sys/modules/qatfw/qat_dh895xcc/Makefile index 7a377c088081..d277e3dc02f7 100644 --- a/sys/modules/qatfw/qat_dh895xcc/Makefile +++ b/sys/modules/qatfw/qat_dh895xcc/Makefile @@ -4,6 +4,6 @@ KMOD= qat_dh895xcc_fw -FIRMWS= ${SRCTOP}/sys/contrib/dev/qat/qat_895xcc.bin:qat_dh895xcc_fw:111 ${SRCTOP}/sys/contrib/dev/qat/qat_895xcc_mmp.bin:qat_dh895xcc_mmp_fw:111 +FIRMWS= qat_895xcc.bin:qat_dh895xcc_fw:111 qat_895xcc_mmp.bin:qat_dh895xcc_mmp_fw:111 .include From nobody Fri May 10 00:57:18 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vb9TB73tpz5KR36; Fri, 10 May 2024 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 4Vb9TB6Mw1z4JrP; Fri, 10 May 2024 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=1715302638; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A/XYkdCzeFxymV/qVoYP2uKYoTCAUsy1YFmgDWe8acY=; b=h59eIelAadmbEGsxa8oPC8EKwoN91KK2uVxSgfrmQ3/pxpM3AwJ+idATFPPq+tuqsyoRhr zWPuvXpLGXsiHoTl1pZQNcFex83a31o364ocPVvo1KIaYmRx6kHU08namM8xYfzHbQl/Bc Oc4woWsx+ei13yQ0toeCEI/M8jwsCIvKgIXgmoZsFtxOBPq+fRfItBznv2OU7emFHXIHY6 EcCurquuYG7hfXRijOhS2myNo9T+axo26aymGJrxZZARyHjzIB9sTEYoUukPLs2+zo05f/ 3yU81dyxtSf3scgP5S23fwpV4y5lWuIuCMF5Wzya68ezh2U0sqp+b9wSfj3KMA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715302638; a=rsa-sha256; cv=none; b=ZubAMRT+dvI37uoqQDrwT56ujDJlKKSzD23tFD2bQziR8rIFe1I9oBpgfGGTPvO+hUm1bs tZVOy/dHvE1jcmBLZR7vcwTUaXSBfoBgrivF/AHwketKilxRn9QolsAuVfE8r+vLnJTi7Z ppwNt/+ExKXsvR9DYgMYatWyEeEo9QAOOTjj9SYJSNxp+nCO/lleMQ+gLs9ukRME+Wd2Av 7vjTbl+Dib0dGHfojmw+JkwnlVNgQa5f7ogHOZx3bVqrVogIambgvNhl0DmVI2No5Hc2lW uVxeAgVtXMdQRcAxLcy5Vr+HsGuJzHm5pTDHwAMIt7xuz04DsrOuu/9IfMAxRQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715302638; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A/XYkdCzeFxymV/qVoYP2uKYoTCAUsy1YFmgDWe8acY=; b=CjrX7GZIvUOnf6bOsS6Rfd2BEYgd/9p4WCZtOVaV1EGNR2EnP8SL1F/DY6E6myz6BVODUw YBFT3qAO8FhQZ4ynj0ic0wdsT7aBB9gUzA32wgifn5fXV+y2Kh5DCJvalwAlG0SOugDjrb YdgzAxgRollvaKBBe4DLOaFBH1ECw5CyV9lxAPs5Z+pDPjHJt6pvTGm7AFAVJORm8kt7Nu yR/gzLi1wah12ZJy2tzXl1hsiK+FY4CCQm1eEXeeSrRtP2bfwXc0kpeU9Bz5s8Adgic1Y8 S1Ce0wZTootzcxkC55W4mRK9IB4LOQ1/xAEEXo+CzxwEOuOcpBtllyHAOdAkYw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vb9TB5fkNzGDc; Fri, 10 May 2024 00:57: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 44A0vIxF016477; Fri, 10 May 2024 00:57:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A0vIMJ016474; Fri, 10 May 2024 00:57:18 GMT (envelope-from git) Date: Fri, 10 May 2024 00:57:18 GMT Message-Id: <202405100057.44A0vIMJ016474@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Colin Percival Subject: git: 6437872c1d66 - main - New sysctl to disable NOMATCH until devmatch runs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6437872c1d665c2605f54e8ff040b0ba41edad07 Auto-Submitted: auto-generated The branch main has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=6437872c1d665c2605f54e8ff040b0ba41edad07 commit 6437872c1d665c2605f54e8ff040b0ba41edad07 Author: Isaac Cilia Attard AuthorDate: 2024-04-29 20:44:27 +0000 Commit: Colin Percival CommitDate: 2024-05-10 00:56:40 +0000 New sysctl to disable NOMATCH until devmatch runs Introduce hw.bus.devctl_nomatch_enabled and use it to suppress NOMATCH until devmatch runs There's a lot of NOMATCH events generated at boot. We also run devmatch once during early boot to load unmatched devices. To avoid redundant work, don't start generating NOMATCH events until after devmatch runs. Set hw.bus.devctl_nomatch_enabled=1 just before we run devmatch. The kernel will suppress NOMATCH events until this is set to true. This saves about 170ms from the boot on aarch64 running atop Apple M-series processors and the VMWare Fusion hypervisor. Reviewed by: imp, cperciva MFC after: 3 days Sponsored by: Google Summer of Code Pull Request: https://github.com/freebsd/freebsd-src/pull/1213 --- libexec/rc/rc.d/devmatch | 1 + sys/kern/kern_devctl.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/devmatch b/libexec/rc/rc.d/devmatch index 78050cfa4541..67bb14761614 100755 --- a/libexec/rc/rc.d/devmatch +++ b/libexec/rc/rc.d/devmatch @@ -46,6 +46,7 @@ devmatch_start() if [ -n "$one_nomatch" ]; then list=$(devmatch -p "${one_nomatch}" | sort -u) else + sysctl hw.bus.devctl_nomatch_enabled=1 list=$(devmatch | sort -u) fi diff --git a/sys/kern/kern_devctl.c b/sys/kern/kern_devctl.c index 12d4f9ebfc4d..0dd05a49c9ad 100644 --- a/sys/kern/kern_devctl.c +++ b/sys/kern/kern_devctl.c @@ -89,6 +89,9 @@ static int sysctl_devctl_queue(SYSCTL_HANDLER_ARGS); static int devctl_queue_length = DEVCTL_DEFAULT_QUEUE_LEN; SYSCTL_PROC(_hw_bus, OID_AUTO, devctl_queue, CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, NULL, 0, sysctl_devctl_queue, "I", "devctl queue length"); +static bool nomatch_enabled = false; +SYSCTL_BOOL(_hw_bus, OID_AUTO, devctl_nomatch_enabled, CTLFLAG_RWTUN, + &nomatch_enabled, 0, "enable nomatch events"); static void devctl_attach_handler(void *arg __unused, device_t dev); static void devctl_detach_handler(void *arg __unused, device_t dev, @@ -208,7 +211,8 @@ devctl_detach_handler(void *arg __unused, device_t dev, enum evhdev_detach state static void devctl_nomatch_handler(void *arg __unused, device_t dev) { - devaddq("?", "", dev); + if (nomatch_enabled) + devaddq("?", "", dev); } static int From nobody Fri May 10 01:30:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbBD41mQYz5KTvG; Fri, 10 May 2024 01:31: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 4VbBD36jfwz4MWn; Fri, 10 May 2024 01:30:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715304659; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mSLxVIRM75I8oXqwbRo4ycJ/LeTjpfOLwn4WBz5chmo=; b=NNES5WcBSZYsCeU+LYYWZINst2FRDlPhT14ynLxeFji06cX24pfyhYPJN+9M5TwK+WJ2nS 9GFbEfPR9dMpva8KIYtBKcbcRoSEuE8+qhETle7bgrr2VAVRVvhQIMCLoUgj7TAQL0tziz FBfZNYCLjoJ3tjmHBMgTaMpOYbU1zLhZFddB80rXvNI3gqQqANnruGsR8wtBK27dymmRWN oyi2+TC2yL9SfuB3wknfSgzYwF+TjBriVzjxT4tUwuWNZJtcZb1K2+80CEovuggdnQY5pC uGDpdiEn/wrolYdmiD1XeyaaffiO7XyTxGrXByp6NKC1SPTWi1Syc+GQPxeAEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715304659; a=rsa-sha256; cv=none; b=F9nYhgkFvETT0QzVuKzmewHstjm1Zb+5AGl157G5g1JwMaZ5ZXDhYR9/CV1NzJB9uN1Ly6 rDB8ICGfmQSbMhMUSxIzFVZwpjpzrcr0+8WzSDgBBme6ZwgNfGlau8+w6q0MApfBah/8LZ 6bmXouSAs8BOExZ4owYbJgRbLHEeAtl09bnxmyrYuAySanAUmdOvcYv64Dr0SANDoir2F+ 3HUhn4zxIQpz9at5UtyPP+/43XNNCs3pWbPHUxrAE+xCt6v1qY1gzDs/WEkrK1G4P3B5Wg q79gkyJbrq86c8V7+ifwLTo9cNtMZqr0azywQPp7cj676EmA5Gwuei62hQhGtA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715304659; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mSLxVIRM75I8oXqwbRo4ycJ/LeTjpfOLwn4WBz5chmo=; b=NErc4C+oaYh/iE6o2lbqReeBbtUWbSthbDdKRVpeog64oeCCQ8uNNGop39/rOZVRx2ALsE 7cSPX5sbdc4KUFUkTCKL9wwX7+NrtEoAK+hFJZvMgNfZmN8EQa+L9SDBSGsSv4H4YPzC4V b9S4ChVtyYExHvFVUbUuAb256u0gGhrlxEbNTFa9MPmnLMLXyc6VrjrOdfNZ7BoIIscjdU yllFODwVaxnW6iItsao+m5OfWifqnhbqdw+7e9z+gAea3gORNPZgfr7J3eL1rgnLGyCbKi TxeZKd2qmrFaPUiD4Ok6C5bi3deiShtkea8jYINTs2J7rgg0kljxMfOvaTuwQw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbBD362vvzHSq; Fri, 10 May 2024 01:30: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 44A1Uxav082136; Fri, 10 May 2024 01:30:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A1Ux4h082133; Fri, 10 May 2024 01:30:59 GMT (envelope-from git) Date: Fri, 10 May 2024 01:30:59 GMT Message-Id: <202405100130.44A1Ux4h082133@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: f77b5b295da3 - main - Allow -DNO_STRICT_REGEX to restore historic regex behavior List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f77b5b295da3146c3b601767cbc4e85e6713192c Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=f77b5b295da3146c3b601767cbc4e85e6713192c commit f77b5b295da3146c3b601767cbc4e85e6713192c Author: Simon J. Gerraty AuthorDate: 2024-05-10 01:29:43 +0000 Commit: Simon J. Gerraty CommitDate: 2024-05-10 01:29:43 +0000 Allow -DNO_STRICT_REGEX to restore historic regex behavior Allow restoring the behavior of '{' as described in regex(3). Ie. only treat it as start of bounds if followed by a digit. If NO_STRICT_REGEX is not defined, the behavior introduced by commit a4a801688c909ef39cbcbc3488bc4fdbabd69d66 is retained, otherwise the previous behavior is restored. Differential Revision: https://reviews.freebsd.org/D45134 --- lib/libc/regex/regcomp.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/lib/libc/regex/regcomp.c b/lib/libc/regex/regcomp.c index 7481d3ecf240..f34dc322d0bb 100644 --- a/lib/libc/regex/regcomp.c +++ b/lib/libc/regex/regcomp.c @@ -453,7 +453,9 @@ p_ere_exp(struct parse *p, struct branchc *bc) case '*': case '+': case '?': +#ifndef NO_STRICT_REGEX case '{': +#endif SETERROR(REG_BADRPT); break; case '.': @@ -536,6 +538,11 @@ p_ere_exp(struct parse *p, struct branchc *bc) break; } break; +#ifdef NO_STRICT_REGEX + case '{': /* okay as ordinary except if digit follows */ + (void)REQUIRE(!MORE() || !isdigit((uch)PEEK()), REG_BADRPT); + /* FALLTHROUGH */ +#endif default: if (p->error != 0) return (false); @@ -549,11 +556,19 @@ p_ere_exp(struct parse *p, struct branchc *bc) return (false); c = PEEK(); /* we call { a repetition if followed by a digit */ - if (!( c == '*' || c == '+' || c == '?' || c == '{')) + if (!( c == '*' || c == '+' || c == '?' || +#ifdef NO_STRICT_REGEX + (c == '{' && MORE2() && isdigit((uch)PEEK2())) +#else + c == '{' +#endif + )) return (false); /* no repetition, we're done */ +#ifndef NO_STRICT_REGEX else if (c == '{') (void)REQUIRE(MORE2() && \ (isdigit((uch)PEEK2()) || PEEK2() == ','), REG_BADRPT); +#endif NEXT(); (void)REQUIRE(!wascaret, REG_BADRPT); @@ -892,6 +907,9 @@ p_simp_re(struct parse *p, struct branchc *bc) (void)REQUIRE(EATTWO('\\', ')'), REG_EPAREN); break; case BACKSL|')': /* should not get here -- must be user */ +#ifdef NO_STRICT_REGEX + case BACKSL|'}': +#endif SETERROR(REG_EPAREN); break; case BACKSL|'1': From nobody Fri May 10 01:35:55 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbBKm0HT8z5KVM5; Fri, 10 May 2024 01:35: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 4VbBKl6tCNz4NhS; Fri, 10 May 2024 01:35:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715304956; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AAWJUN2w3xmfsSA3+bHKLd0kK/NoTD609/uAo61DCCw=; b=hESGMZeZ9Lfbz5vuQ5btcU0M+Y5Bi7BMMNe9Ab2lYGgxAFTN74WxAfolLYEOVUgFRdSGFa 9XUepl+O0DCNXTBQtzinaOuCq5Yo8kQXodP3N0/tESQd59z13Ktao0CMfoelcuIf28F4gt /MSU4Dau9gmZ7tBmmnq/Hj4rtpHYrTsNwgfojpMJwk1fDckd3a7LkW1vLrsyuHSTAxVUFK BLSF1DuYxj4Km+DdYVsESS8nyNPIjkBOmcCfxERTNu4pNr8amXFjXUiPM9nNyJzGqocT6J 2oPzR9hkZLcOkCgcU37Rd9yH0tsjlR+eqQgOWsFRtuc0MunlTH5yiz7mx46Fzg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715304956; a=rsa-sha256; cv=none; b=e3JOXPMGKlze72uk1DhjFNboLVlUe/Dcd2F24gBONxJSjiOW2BcGWSmWyLKlK7IvA/ribO 7VYlBBbqHGrS56iiMVapSBYmdHCj2RvZXSrx8P0gbmpoKrpzpIuodfUL/d74/1PV7p5f75 6g65DQt/nSCOyHOpuNTUWrzXXYL5KZwsl1eJ7Nbfrt0a9YEKEwSSzRzBCKCwmUFv20nXzg B+0eM+UGvgx8xvt0xtxRZlSLMRRn0MgB8rO2/6HZ4HmEHlN8ulYJU8s3YRj56V4UScDwrM 8OjyAzXn4ZZ/QCbxcFnURTj2QThB9YYagzkQJlKD6oJKfmexfN7pwUc5FdGS6w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715304956; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AAWJUN2w3xmfsSA3+bHKLd0kK/NoTD609/uAo61DCCw=; b=s6RHS/8lhfsOIl3+e/iAiyb6VOytthxyt5XZwrf/rYfehd+1DwFNKWDu3LJx3eoiplqdcY niuGbU06jKKVyzODquGNKK1a756LyelZ3nios7AWpy1onV3Ys+DV+khB8xQ2y6EotDRZsU ukOE7qSQcRjYmc5kw4DbnhXvnUQcHNyb1cQ3ElOUkgbUgOAOVkCsvxp6nbnKIYdGr2+AsJ ZaLYWrPqXj9VQ+FtW5GFEgXDY1sc/7lSHMoTuxrQHvqjSKffaHejyORyFsgeAixM1ZlIzj IXhz9mmpi9rj33RSSq8dYfAwUIJ7mizFU5gz/G54JLkUs4TKe620g0ePW0EGqA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbBKl6T0qzHJh; Fri, 10 May 2024 01:35:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44A1ZtqP083895; Fri, 10 May 2024 01:35:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A1ZtJD083892; Fri, 10 May 2024 01:35:55 GMT (envelope-from git) Date: Fri, 10 May 2024 01:35:55 GMT Message-Id: <202405100135.44A1ZtJD083892@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: fbe965591f8a - main - nfscl: Do not do readahead for directories List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fbe965591f8a0a32c805a279a2505d4c20d22d26 Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=fbe965591f8a0a32c805a279a2505d4c20d22d26 commit fbe965591f8a0a32c805a279a2505d4c20d22d26 Author: Rick Macklem AuthorDate: 2024-05-10 01:33:13 +0000 Commit: Rick Macklem CommitDate: 2024-05-10 01:35:10 +0000 nfscl: Do not do readahead for directories For a very long time, the NFS client has done readahead for directory blocks. Unlike data blocks, the readahead cannot begin until the Readdir RPC reply has been received, since the directory offset cookie in that Readdir RPC reply is needed. As such, the readahead is serialized and does not seem to provide any real benefit. Recent testing/benchmarking shows that removing this readahead code for Readdir does not have a negative impact on performance. Therefore, this patch deletes the readahead code for Readdir, which simplifies the code and may make future changes simpler. MFC after: 1 month --- sys/fs/nfsclient/nfs_clbio.c | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) diff --git a/sys/fs/nfsclient/nfs_clbio.c b/sys/fs/nfsclient/nfs_clbio.c index c691e797aa01..ed7149c27903 100644 --- a/sys/fs/nfsclient/nfs_clbio.c +++ b/sys/fs/nfsclient/nfs_clbio.c @@ -679,36 +679,6 @@ ncl_bioread(struct vnode *vp, struct uio *uio, int ioflag, struct ucred *cred) goto out; } - /* - * If not eof and read aheads are enabled, start one. - * (You need the current block first, so that you have the - * directory offset cookie of the next block.) - */ - NFSLOCKNODE(np); - if (nmp->nm_readahead > 0 && ncl_bioread_dora(vp) && - (bp->b_flags & B_INVAL) == 0 && - (np->n_direofoffset == 0 || - (lbn + 1) * NFS_DIRBLKSIZ < np->n_direofoffset) && - incore(&vp->v_bufobj, lbn + 1) == NULL) { - NFSUNLOCKNODE(np); - rabp = nfs_getcacheblk(vp, lbn + 1, NFS_DIRBLKSIZ, td); - if (rabp) { - if ((rabp->b_flags & (B_CACHE|B_DELWRI)) == 0) { - rabp->b_flags |= B_ASYNC; - rabp->b_iocmd = BIO_READ; - vfs_busy_pages(rabp, 0); - if (ncl_asyncio(nmp, rabp, cred, td)) { - rabp->b_flags |= B_INVAL; - rabp->b_ioflags |= BIO_ERROR; - vfs_unbusy_pages(rabp); - brelse(rabp); - } - } else { - brelse(rabp); - } - } - NFSLOCKNODE(np); - } /* * Unlike VREG files, whos buffer size ( bp->b_bcount ) is * chopped for the EOF condition, we cannot tell how large @@ -721,6 +691,7 @@ ncl_bioread(struct vnode *vp, struct uio *uio, int ioflag, struct ucred *cred) * in np->n_direofoffset and chop it off as an extra step * right here. */ + NFSLOCKNODE(np); n = lmin(uio->uio_resid, NFS_DIRBLKSIZ - bp->b_resid - on); if (np->n_direofoffset && n > np->n_direofoffset - uio->uio_offset) n = np->n_direofoffset - uio->uio_offset; From nobody Fri May 10 02:01:00 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbBth405bz5KXls; Fri, 10 May 2024 02:01: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 4VbBth2sP8z4Q88; Fri, 10 May 2024 02:01:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715306460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/ezdPNCIBwgXDb+Fi2pNsp6Bo2r10rj7XdRZhmrmXzk=; b=IGQr67eru+KnGEy1+Ippr10Rg6chSwSzq89rsksB8j8wZGY3FcfW75Clb6LoYNOYHn+ejG ++wRrnNA9slweX6DtUBU+SO4dV7q50L9KQ9a6nUWvXuiJ0LRRP+3fQQkBmHsSk+mthaBsW dlGGa9U58ueacbHcEGfa//Hhl7JaZoQn+e3HA44Sig6IwEf7RFNTR1ls2WJE6GJ/XJ0zsQ uje9wkC1n4r6c+Dz+2FdMZU9Te6zbIUOinhM0jKugsKUAvIjCcjGwmFJbokHEJ5lLNv40v OJD2s58aiiZXsLD9/qGULFkkDIesZjtZHpLKnepXV9n+lgMfdTBFQxzG3pwp3g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715306460; a=rsa-sha256; cv=none; b=Tmxs4zkRDpNacKl4NDZbImo9za72bPo/bSQGvfxD9D0CnN0q0YLXHd372tF0Q3jgGRqxrh 4BPIMW21mZwboxtipGQVRp7yahHAg9bAFS1wfBT+XOn9RzIjt/Y5IbYuDGe1REtSTZH7ol JMIahdzQJz13GdP5Gnk3HgvN5AyX03yBt5DfnEzvgGKaBwZzMuQEv0Wg/YPOFBRY1wxHTc IHHDYZHRRjoRivq2JQ+UscZDI4JJLpHsQRca6dGDdGdMWcVu9gra/RCDvDqChS8MQUnz6f Ir0XZ4O44e+tFlLN3SbxPE5Q//QnRDQDmY9Y4ag+9Y4sIjg1ssAJcWkoqU9neg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715306460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/ezdPNCIBwgXDb+Fi2pNsp6Bo2r10rj7XdRZhmrmXzk=; b=k10Jv84xpxEerjgy5yvPMLF3UyEI5/cIMqXh8r4e9d1ltjBtyth296VOKKSlbcUpzpBcA2 jBXocYvpPlL8oXGbAK0EYoVVUknGZC+yPfD/vm/PSXAkydQOR4CPSzXhi2E7+Rq3yJtVNd lISyXIa51lBDL8BD78cn0EcLLtlY8iAlXPuKofBzwDaINbrmH7W/x6m66Jymtz9rXfJKgK oWGrhxSGLLdZhqkkUuFukYTVsveGQC0ihNYXmXehrB6IC0tC/Sjp3qlRt7QN2X0RTl4Zgt Ip0hDUKisU+PoKd8XYFTvhEjtmJqGFji3iFWC9iGla+BqsFGzR1ovPU5+eFiBw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbBth2RmdzJ2q; Fri, 10 May 2024 02:01: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 44A2104J031526; Fri, 10 May 2024 02:01:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A210NT031523; Fri, 10 May 2024 02:01:00 GMT (envelope-from git) Date: Fri, 10 May 2024 02:01:00 GMT Message-Id: <202405100201.44A210NT031523@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 12be6f12e87a - main - Fix memory corruption in C++ demangler List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 12be6f12e87abc3e1edd3cc6cdc20334bdd63380 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=12be6f12e87abc3e1edd3cc6cdc20334bdd63380 commit 12be6f12e87abc3e1edd3cc6cdc20334bdd63380 Author: Justine Tunney AuthorDate: 2024-05-10 01:55:45 +0000 Commit: Warner Losh CommitDate: 2024-05-10 01:55:52 +0000 Fix memory corruption in C++ demangler The __cxa_demangle_gnu3() and cpp_demangle_gnu3() functions segfault on various libcxxabi test cases due to a copy and paste error. This change fixes that. This is a subset of https://github.com/libcxxrt/libcxxrt/pull/34 which fixes the immediate problem. Reviewed by: imp, emaste (I think) Pull Request: https://github.com/freebsd/freebsd-src/pull/1222 --- contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c | 2 +- contrib/libcxxrt/libelftc_dem_gnu3.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c b/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c index a84ca2649497..223878aa34ea 100644 --- a/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c +++ b/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c @@ -2138,7 +2138,7 @@ cpp_demangle_read_sname(struct cpp_demangle_data *ddata) assert(ddata->cur_output->size > 0); if (vector_read_cmd_find(&ddata->cmd, READ_TMPL) == NULL) ddata->last_sname = - ddata->cur_output->container[ddata->output.size - 1]; + ddata->cur_output->container[ddata->cur_output->size - 1]; ddata->cur += len; diff --git a/contrib/libcxxrt/libelftc_dem_gnu3.c b/contrib/libcxxrt/libelftc_dem_gnu3.c index e75d1694562e..dbdbd6f2414e 100644 --- a/contrib/libcxxrt/libelftc_dem_gnu3.c +++ b/contrib/libcxxrt/libelftc_dem_gnu3.c @@ -2472,7 +2472,7 @@ cpp_demangle_read_sname(struct cpp_demangle_data *ddata) assert(ddata->cur_output->size > 0); if (vector_read_cmd_find(&ddata->cmd, READ_TMPL) == NULL) ddata->last_sname = - ddata->cur_output->container[ddata->output.size - 1]; + ddata->cur_output->container[ddata->cur_output->size - 1]; ddata->cur += len; From nobody Fri May 10 02:09:48 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbC4r62XYz5KYL4; Fri, 10 May 2024 02:09: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 4VbC4r5X11z4QnX; Fri, 10 May 2024 02:09:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715306988; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+rulnx6Se60wshkxEWpi7T42a2D0RhXZF4PYfEQexPY=; b=bxkWRYZjemqvJZ4cWNURbllgrQS/+vfOINkQIaCLtWQG+Sk+SkVnGsEoGCZeifDZnr3E0P WCcPmaGwtGsLNTpMWYhHjzZCNc8vJhDXv/nEH+FX7RtgSOBN+zs4Njvy7fAnrP+7EDdRZS 3JiaTMMlcLd7uJK3CMS8O+9Saxa4brK/Tfg5I4HIxP2ZPXERDqVcslijEVDp+NYSpib95H DaokHRQc/2QXh41PFe+Mu+AsiU6JvNiXyjt5ec7Ot3VEcrw32d4xBo4k+S95JTh+KOP6D6 JI8yHBg+lTgHbqQjVRdbKzJ4KsynCzzYTAqu70dtlZz3QNqHYHRzQRkEZKjI5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715306988; a=rsa-sha256; cv=none; b=UoETVFa9HJiQ1lbSOPwjdomJrFwgly9kcU5ms8Op9Y346Sm8GWJ2lJ1q1z7cM4an0CACIX YshKHje8jEISDeuNDeIogB5/qWI1ElHtkg8y2DXU+7su/0QY7JrCv7dDgtG/Ww9R2GkeDg kPupwDOs0eoB8PLkyciotYcW6/IjUs/QDr14rix1Fz3ZPmHRr+7GIHFJi+CvCzjZlfnV6I NzXr7nGlVbhpawH74Gp/U5BQ1+cQdHwtIQFJQG1nEboencscqhDGxIlfkgKhnxebtw/wn8 kWWbf9IU9sy2wHr8pM3XKwMl+eO3c2QAp2RTDryjqtYS+u/XHz7oofoy4ITgKw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715306988; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+rulnx6Se60wshkxEWpi7T42a2D0RhXZF4PYfEQexPY=; b=bYDURaqNSSAitaK7m8dbG11p2EDh7QXFtIVqsaXo7wjYRchTKlv9WUet+uNf2QzBtOd5YQ dxKX8/HyjETEyD9IInpsRgLPkscFTGB0nnxb5O5jQAvhABZr25ZGsZ0JpyrPGeA4b2Bqqa P2ONK/SrumcQZ7NQeW9q+l4rcDd57Nbdh/nW4V8QbQwzPBjaGSnmseARfDi8APEVm/ql0L V5JH9KF67rA0cRy3X5h7trQY74s7s7MyWxMNE9oMnE+j0itZzjMzo4irtlbLx8rEnUp2PR 8aTWmDKfRWH0hMmeuxxTJVYYDNlYydp0HCtIgWhhxSYBwa8AmTyBTBPdcWIeQg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbC4r4t36zHrP; Fri, 10 May 2024 02:09: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 44A29mC4035960; Fri, 10 May 2024 02:09:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A29mZ4035957; Fri, 10 May 2024 02:09:48 GMT (envelope-from git) Date: Fri, 10 May 2024 02:09:48 GMT Message-Id: <202405100209.44A29mZ4035957@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 09025a714708 - main - ipfw: correctly report table manipulation errors List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 09025a7147084783bf1dd4d1bec463ceab8d16b4 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=09025a7147084783bf1dd4d1bec463ceab8d16b4 commit 09025a7147084783bf1dd4d1bec463ceab8d16b4 Author: Ben Wilber AuthorDate: 2024-05-10 02:08:15 +0000 Commit: Warner Losh CommitDate: 2024-05-10 02:08:18 +0000 ipfw: correctly report table manipulation errors Let ipfw(8) report the actual error instead of the error that may have come from calling printf(). Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1221 --- sbin/ipfw/tables.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sbin/ipfw/tables.c b/sbin/ipfw/tables.c index 7901950acadd..4c783e02f856 100644 --- a/sbin/ipfw/tables.c +++ b/sbin/ipfw/tables.c @@ -1037,6 +1037,9 @@ table_modify_record(ipfw_obj_header *oh, int ac, char *av[], int add, } } + /* Get real OS error */ + error = errno; + /* Report results back */ ptent = tent_buf; for (i = 0; i < count; ptent++, i++) { @@ -1089,8 +1092,6 @@ table_modify_record(ipfw_obj_header *oh, int ac, char *av[], int add, if (error == 0) return; - /* Get real OS error */ - error = errno; /* Try to provide more human-readable error */ switch (error) { From nobody Fri May 10 02:17:14 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbCFR0dKjz5KZ56; Fri, 10 May 2024 02:17: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 4VbCFQ752Bz4Rtw; Fri, 10 May 2024 02:17:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715307435; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iz1+OgaO8Q9o94QdyIYHjg4MpQNG/uneEBC8nbk/TRY=; b=XvjE77Icu6rvOKmw8w8jXgMcOUE3G30/yjR9UOrLV4dJWKKwIpXsmjyTe0ar+uUn+CAJDi VEY6/vU3rM8lG8Fa5Ktc1TSNrtwzlsXqMAk/3zMO2lByeyJbSeskInvPYnfAv+7xV9CtOE 5hFmnT5A7QAERNN3heQYRtl+8SWFvbTGx+xI7uvKCrE+1CngzzEbpBCnAtiOAm+G7j6vJv gX/eLa7cw8VtszrRHMrbdxicMfIY8DPhFod7pkUrsQU5D/YB5jzwUtcaqTrOaA4ucqJT6C qUFecN3Tnh25LJnkQbi5eUKgnXXnNADJXbvGzfeHa+AjYZWU9oqXHgLupmtr8w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715307435; a=rsa-sha256; cv=none; b=qyCu+EUF2Ys/lq5QFv6WHysy2lv6jeiZUXoJ2BDngbGGrehpxMzUC0NSWaUKsiVJqHrjEb gVvtcj16Bx8MmEi9tnUYBUSbfUNsBAGyzObyksZqHOo8zN3Ibw7Ckbcfd+NSvjbhG29t4b d+g/UJywgoS/Wkn8lN3YtlknFh2v/OtlTxki+80gc3p2hU+7uPw/ZOXGt7IrEAhu4Q9mBl pU2hLNv6Y9jR3YcznNdw2gNsmEc0060tdtLR+OI2A++7ZYTWjtN3wLpHc/vh3xvLfLYBx9 r57MHGdawdqCriVXzhhDgIbJ8lq17g67bgMZBGS/K/1nT9viELWhtcKSfUn3TQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715307435; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iz1+OgaO8Q9o94QdyIYHjg4MpQNG/uneEBC8nbk/TRY=; b=NoxMexuTXjEx3l/y1jdk0pvylzGyqNZBmD0ifo1EdcRCvynFtNOAk7kiO8ChW86lXFcE1j CKh7iJCwFhk6tJyCGLdAGyNAaSvloO4y2qtH4LQ7J5xfZf1t+SwWwkZ36FIWHc3sE9dX1s OQVp5gT0ooXLLAy8z9IY2cIqio4NtgpOt9hqPVkFIWJVIt94khT1BbvX35PaP8XPQePIch n5EOc5umgxjMSqO+QQSqpHX0NSkTxOPpegoyGWVfmbNQ7kQCYCdcUh0El/YyI4cRxGO0xP aFD8W3QPfiH8/cztjXjQ2o/tc0xJ8Hb5KikSHQ+n6AsMsmUFirdnCeT9Vdt5Kg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbCFQ6Z7rzJNc; Fri, 10 May 2024 02:17: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 44A2HEG8051911; Fri, 10 May 2024 02:17:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A2HEJv051908; Fri, 10 May 2024 02:17:14 GMT (envelope-from git) Date: Fri, 10 May 2024 02:17:14 GMT Message-Id: <202405100217.44A2HEJv051908@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: c733dc7a6f86 - main - ahc(4): Default to memory mapped IO List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c733dc7a6f866eeae0ac7762e6f1dee22e24c4d3 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=c733dc7a6f866eeae0ac7762e6f1dee22e24c4d3 commit c733dc7a6f866eeae0ac7762e6f1dee22e24c4d3 Author: HP van Braam AuthorDate: 2024-05-10 02:13:03 +0000 Commit: Warner Losh CommitDate: 2024-05-10 02:15:08 +0000 ahc(4): Default to memory mapped IO When this driver was written it made sense to make this default to off, but these days almost all BIOSses will do the right thing. Furthermore non-mmio communication only works on Intel architectures. So lets default to allowing mmio, but not change the semantics of the AHC_ALLOW_MEMIO flag to not break existing installs. Also document the already existing hint.ahc..allow_memio. Signed-off-by: HP van Braam Reviewed by: imp (small style tweak) Pull Request: https://github.com/freebsd/freebsd-src/pull/1219 --- share/man/man4/ahc.4 | 13 +++++++++---- sys/dev/aic7xxx/ahc_pci.c | 12 ++++++------ sys/powerpc/conf/GENERIC | 1 - sys/powerpc/conf/GENERIC64 | 1 - sys/powerpc/conf/GENERIC64LE | 1 - 5 files changed, 15 insertions(+), 13 deletions(-) diff --git a/share/man/man4/ahc.4 b/share/man/man4/ahc.4 index 7d5e092089bb..582b34fe2071 100644 --- a/share/man/man4/ahc.4 +++ b/share/man/man4/ahc.4 @@ -131,7 +131,7 @@ target on multiple SCSI IDs. .Pp To allow PCI adapters to use memory mapped I/O if enabled: .Pp -.Cd options AHC_ALLOW_MEMIO +.Cd options AHC_ALLOW_MEMIO=(0 -- disabled, 1 -- enabled) .Bd -ragged -offset indent Memory mapped I/O is more efficient than the alternative, programmed I/O. Most PCI BIOSes will map devices so that either technique for communicating @@ -141,12 +141,13 @@ the chip for memory mapped I/O. The typical symptom of this problem is a system hang if memory mapped I/O is attempted. .Pp Most modern motherboards perform the initialization correctly and work fine -with this option enabled. +with this option enabled and it is the default. This option can also be +dynamically configued through a device hint documented below. .Ed .Pp To statically configure one or more controllers to assume the target role: .Pp -.Cd options AHC_TMODE_ENABLE +.Cd options AHC_TMODE_ENABLE= .Bd -ragged -offset indent The value assigned to this option should be a bitmap of all units where target mode is desired. For example, a value of 0x25, would enable target mode on @@ -163,7 +164,11 @@ The following options are switchable by setting values in They are: .Bl -tag -width indent .It Va hint.ahc. Ns Ar N Ns Va .tmode_enable -A hint to define whether the SCSI target mode is enabled (0 -- disabled, 1 -- enabled). +A hint to define whether the SCSI target mode is enabled, defaults to disabled +(0 -- disabled, 1 -- enabled). +.It Va hint.ahc. Ns Ar N Ns Va .allow_memio +A hint to define whether memory mapped io is enabled or disabled for this +adapter, defaults to enabled (0 -- disabled, 1 -- enabled). .El .Ed .Sh HARDWARE diff --git a/sys/dev/aic7xxx/ahc_pci.c b/sys/dev/aic7xxx/ahc_pci.c index 1f9cd33f9e00..8109a6714814 100644 --- a/sys/dev/aic7xxx/ahc_pci.c +++ b/sys/dev/aic7xxx/ahc_pci.c @@ -138,7 +138,7 @@ ahc_pci_map_registers(struct ahc_softc *ahc) struct resource *regs; int regs_type; int regs_id; - int allow_memio; + int allow_memio = 1; regs = NULL; regs_type = 0; @@ -150,14 +150,14 @@ ahc_pci_map_registers(struct ahc_softc *ahc) "allow_memio", &allow_memio) != 0) { if (bootverbose) device_printf(ahc->dev_softc, "Defaulting to MEMIO "); -#ifdef AHC_ALLOW_MEMIO - if (bootverbose) - printf("on\n"); - allow_memio = 1; -#else +#if defined(AHC_ALLOW_MEMIO) && (AHC_ALLOW_MEMIO == 0) if (bootverbose) printf("off\n"); allow_memio = 0; +#else + if (bootverbose) + printf("on\n"); + allow_memio = 1; #endif } diff --git a/sys/powerpc/conf/GENERIC b/sys/powerpc/conf/GENERIC index 6083b4d2baca..dedaa931f4ef 100644 --- a/sys/powerpc/conf/GENERIC +++ b/sys/powerpc/conf/GENERIC @@ -119,7 +119,6 @@ device siis # SiliconImage SiI3124/SiI3132/SiI3531 SATA # SCSI Controllers device ahc # AHA2940 and onboard AIC7xxx devices -options AHC_ALLOW_MEMIO # Attempt to use memory mapped I/O device isp # Qlogic family device ispfw # Firmware module for Qlogic host adapters device mpt # LSI-Logic MPT-Fusion diff --git a/sys/powerpc/conf/GENERIC64 b/sys/powerpc/conf/GENERIC64 index 26b308a4e06e..2a5e3d377ab8 100644 --- a/sys/powerpc/conf/GENERIC64 +++ b/sys/powerpc/conf/GENERIC64 @@ -137,7 +137,6 @@ device nvd # expose NVMe namespaces as disks, depends on nvme # SCSI Controllers device aacraid # Adaptec by PMC RAID device ahc # AHA2940 and onboard AIC7xxx devices -options AHC_ALLOW_MEMIO # Attempt to use memory mapped I/O device isp # Qlogic family device ispfw # Firmware module for Qlogic host adapters device mrsas # LSI/Avago MegaRAID SAS/SATA, 6Gb/s and 12Gb/s diff --git a/sys/powerpc/conf/GENERIC64LE b/sys/powerpc/conf/GENERIC64LE index 84c27690211d..63e10df90200 100644 --- a/sys/powerpc/conf/GENERIC64LE +++ b/sys/powerpc/conf/GENERIC64LE @@ -133,7 +133,6 @@ device nvd # expose NVMe namespaces as disks, depends on nvme # SCSI Controllers device aacraid # Adaptec by PMC RAID device ahc # AHA2940 and onboard AIC7xxx devices -options AHC_ALLOW_MEMIO # Attempt to use memory mapped I/O device isp # Qlogic family device ispfw # Firmware module for Qlogic host adapters device mrsas # LSI/Avago MegaRAID SAS/SATA, 6Gb/s and 12Gb/s From nobody Fri May 10 02:41:24 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbCnK1GYnz5KcB4; Fri, 10 May 2024 02:41: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 4VbCnK0cvFz4Tm1; Fri, 10 May 2024 02:41:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715308885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=acKsMD5skJPB9DblRUbOsIL6LHcNhZeiVBFlHyAephM=; b=ZclE8FCw75NVB8Zx6HLnER+52wSKQX6hKu1JH6E02RPlsRwgPhsMB1EXX24VK4gWZhzOuZ fjX4oN84z0Wx4y+BGy9wrjvAxhSFi+WCVM5UkJAygudfui0ppCqUURWElOTCkpB3tzl2Ch iDS4PZ2FK70Wguiv7WynIMjFfcgFr2NPtvvnOtxrbi2E3gQbLVbHeXyJezUWagXBZPcNS+ GfXCNPm9jwng8U6SFvYiBbDwV5vnyofL9jSFET/pkw6ECM7MsGn9NA7GMh8vx683DE3091 0wfZdMC0rPJiwr63o9AFoZYW6YDYpYRLlX/Ft02sDXCyrCasfd4iyDdPECnRuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715308885; a=rsa-sha256; cv=none; b=HNg6z8gJgntH9kB1SRIDlqpJIbGH4qe7JahJr0kseVhtVLyqd3EYDh4tFcvdyGv9LSJvW/ ffybOauKN6U3qzmwafJAX/jpA+RBWnoEkBcSCn9+cVwv0R+zf2Z+TRZl07HZQP4wgt7oN8 4zBhfZ6yFfabNrH2SaBfZgwlVoRkfnaZY6ZtHTZH2Hdo2uabwoTNyg7S0FkOEWlbqNiysE DnAZFnB6JMp+B4bn+QtPG/7lRVgZOx2yTWJP/pcRR0x5zMj9IqFqwpvtEMMbC47Onn/VzC Xx9327RpQ4PDyOqXF33XTpmhAjIA6bs36yBY8PBix79pv/0Cs2J4A9cTW6VfvQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715308885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=acKsMD5skJPB9DblRUbOsIL6LHcNhZeiVBFlHyAephM=; b=rEBAVmxIJ/4QJRtarOEjiRhgYTRdjvOmdvZcV/wu6aNqutRKastWeT7WvMcg04EJKZs1sH VEBYJqXZsGh70KHUoCCj+M0T/6AWvJrhvpAkBtK0hn8jWhHY7BS58hIO3g2czzOEi3RRBD jJZHM9H13nU2mPMw3DP1tbF+ePqt/mzMXWcLRQdC+N4+J9PhW9IjmPzW1Lrm4Nz5m4mZ3K LDd+0h7xQ+6D/kkbZgIVv40eS7M1339XwdR2vjot68sdf7oCBDThptvLBIgLvV+tCy1oSJ t9+VkN8fQJXEkgxhNIW6beuyC6ynwronzY3kZ+ZzZ6vuU1yLgVteAyQ+26UJUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbCnK0DHbzJw9; Fri, 10 May 2024 02:41: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 44A2fOG5097940; Fri, 10 May 2024 02:41:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A2fOFU097937; Fri, 10 May 2024 02:41:24 GMT (envelope-from git) Date: Fri, 10 May 2024 02:41:24 GMT Message-Id: <202405100241.44A2fOFU097937@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 9f91b8aaf5da - main - Update README.md to add pointer to release page. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9f91b8aaf5da3b4fcf56e3e89a49b18a54b4f191 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=9f91b8aaf5da3b4fcf56e3e89a49b18a54b4f191 commit 9f91b8aaf5da3b4fcf56e3e89a49b18a54b4f191 Author: Lukas R. Jackson AuthorDate: 2024-05-10 02:36:19 +0000 Commit: Warner Losh CommitDate: 2024-05-10 02:40:46 +0000 Update README.md to add pointer to release page. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1151 --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 93599c66511d..bb0c34d39ec4 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,8 @@ See build(7), config(8), [FreeBSD handbook on building userland](https://docs.fr For information on the CPU architectures and platforms supported by FreeBSD, see the [FreeBSD website's Platforms page](https://www.freebsd.org/platforms/). +For official FreeBSD bootable images, see the [release page](https://download.freebsd.org/ftp/releases/ISO-IMAGES/). + Source Roadmap: --------------- | Directory | Description | From nobody Fri May 10 02:52:49 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbD2T3rmdz5KcbX; Fri, 10 May 2024 02:52: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 4VbD2T3M3Sz4Vkt; Fri, 10 May 2024 02:52:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715309569; h=from:from:reply-to:subject:subject: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/QMHVaKxlqOVpiX7dqOyV8LSnx+lznS98YYqfdLt6g=; b=sFK50dPnBBZGRdHw+8lGbKW5c+jglg+Ar45n3Ae0O/7+izQ/eSKw0N4DrgnwmvBu64QLes iHLx7rclnh6doOyZcVtFpVkELt/5IYTUnpQcXDH//L07eXElluJQ5lnrnfC9LlzBTUiVZx ptRf/ibM6nIYD1LnSbflctK8q9auRxfg4PJAAQAmDVxXhs8/6znpg6logRpC9LvtVNOL9u B0bs9huDn6JAprZlgQ/9VFpKR0rRJ9FsgYt5I+Wl4cDTZC8c903IcJ7+81cJiShb43RG02 CnQ/M0hPd7GIahzJBINqxd1NUzsMnCKS77x9eHAOgmUJbPizl7FIDkkGvUZgjQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715309569; a=rsa-sha256; cv=none; b=MigJeYgZWe8fL+DjLPQlTzDWDzYkXbM+DpXK/SCOYn1QQKGRQgYkGzagUpjEqsuSE5mu1/ FAsqNuSHqlWR3p7O6Ce5nE8V9wp/goxkhJ3HUEVK6cl5n8NM5bUwEXTFZH8Sa7y0XqCVvy 5u6ItQgJhGmZriXmwXNxseML6Cz/0dSsDzipOaq6zK/M4/kpEg3VsrmR5fN47NjND5DhAi itA35/5mb3U7K+Dtnfw/jhJgyWTn0X+W/z3VfH1XlmmBeBkUrF9/FofRBvtNkaPGKDyoZQ IHF+M8BWgVXtnT9AStVCH3TZz+ydchGhf0iqdFlBjJbz3BcZscAivAkYB4Py6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715309569; h=from:from:reply-to:subject:subject: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/QMHVaKxlqOVpiX7dqOyV8LSnx+lznS98YYqfdLt6g=; b=RR1e3YEKsxHUGunL5CjYq2DfaXY7R5qcYY2Z9DHbKrPwDziAD44OKQWFhyuSfjMu/EUrc8 HJKgr9/Vms+s0cxnuO4158OjWcqeQJPNQEXhAZC8jeS2Hvxlu0wYNRxIkWd2+GQff8WKwc 47NXF+w6df3KIAogKfRez/8Lb/Cdf1ntopc/I3esA8RZtW/JcMK1VRAsg9JQrdtoHdiL+q RxnDkA/7NsCtPE79Fwh5rVrUBkMc9255/PyAsmY7a+5G3SLeqBkJIC1eU20tf7fsPg5pFh 9y9VcSZjhw66h8HD3NeGUvOZKV4rPWsTiTs9XBxbGbeimHMW6X2bDUR/oqWN0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbD2T2yQdzK12; Fri, 10 May 2024 02:52: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 44A2qnQH017924; Fri, 10 May 2024 02:52:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A2qn3N017921; Fri, 10 May 2024 02:52:49 GMT (envelope-from git) Date: Fri, 10 May 2024 02:52:49 GMT Message-Id: <202405100252.44A2qn3N017921@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 5ccaab1797e5 - main - sysexits: Tidy deprecated header and manual List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5ccaab1797e5bdc404f2299ebaec1265547a4744 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=5ccaab1797e5bdc404f2299ebaec1265547a4744 commit 5ccaab1797e5bdc404f2299ebaec1265547a4744 Author: Alexander Ziaee AuthorDate: 2024-05-10 02:43:39 +0000 Commit: Warner Losh CommitDate: 2024-05-10 02:50:48 +0000 sysexits: Tidy deprecated header and manual was deprecated in the base system in a1432b4 for FreeBSD 8.0 and is retained only for backwards compatibility. Make that clear, since sysexits(3) suggested using it since it was in style(9) prior to this. MFC after: 1 week Co-authored-by: imp Fixes: a1432b4 Reviewed by: imp, pauamma (previous version) Pull Request https://github.com/freebsd/freebsd-src/pull/1195 --- include/sysexits.h | 7 ++++--- share/man/man3/sysexits.3 | 43 ++++++++++++++++++------------------------- 2 files changed, 22 insertions(+), 28 deletions(-) diff --git a/include/sysexits.h b/include/sysexits.h index f7247cc80080..3b24e131c647 100644 --- a/include/sysexits.h +++ b/include/sysexits.h @@ -35,9 +35,10 @@ /* * SYSEXITS.H -- Exit status codes for system programs. * - * This include file attempts to categorize possible error - * exit statuses for system programs, notably delivermail - * and the Berkeley network. + * This include file attempts to categorize error exit statuses + * for system programs, notably sendmail. These values exist only + * for interface compatibility, and are deprecated for FreeBSD + * base software. * * Error numbers begin at EX__BASE to reduce the possibility of * clashing with other exit statuses that random programs may diff --git a/share/man/man3/sysexits.3 b/share/man/man3/sysexits.3 index ef736192e439..62f79b286a16 100644 --- a/share/man/man3/sysexits.3 +++ b/share/man/man3/sysexits.3 @@ -1,7 +1,7 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause .\" -.\" Copyright (c) 1996 Joerg Wunsch -.\" -.\" All rights reserved. +.\" Copyright (c) 1996 Joerg Wunsch. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -23,27 +23,20 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" " -.Dd January 21, 2010 +.Dd May 9, 2024 .Dt SYSEXITS 3 .Os .Sh NAME .Nm sysexits -.Nd preferable exit codes for programs +.Nd legacy exit status codes for system programs .Sh SYNOPSIS .In sysexits.h .Sh DESCRIPTION -According to -.Xr style 9 , -it is not a good practice to call -.Xr exit 3 -with arbitrary values to indicate a failure condition when ending -a program. -Instead, the pre-defined exit codes from -.Nm -should be used, so the caller of the process can get a rough -estimation about the failure class without looking up the source code. -.Pp +Some commands attempt to describe the nature of a failure condition +by using these pre-defined exit codes. +This interface has been deprecated and is retained only for compatibility. +Its use is discouraged. +.Sh ERRORS The successful exit is always indicated by a status of 0, or .Sy EX_OK . Error numbers begin at @@ -112,8 +105,7 @@ The remote system returned something that was during a protocol exchange. .It Sy EX_NOPERM Pq 77 You did not have sufficient permission to perform the operation. -This -is not intended for file system problems, which should use +This is not intended for file system problems, which should use .Sy EX_NOINPUT or .Sy EX_CANTCREAT , @@ -131,12 +123,13 @@ parenthesis for easy reference. .Sh HISTORY The .Nm -file appeared somewhere after -.Bx 4.3 . +file first appeared in +.Bx 4 . .Sh AUTHORS This manual page was written by -.An J\(:org Wunsch -after the comments in -.In sysexits.h . +.An J\(:org Wunsch . .Sh BUGS -The choice of an appropriate exit value is often ambiguous. +.Bl -tag -width 0 -compact +.It This interface is not portable. +.It The choice of an appropriate exit value is often ambiguous. +.El From nobody Fri May 10 03:02:19 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbDFj3F0mz5KdXP for ; Fri, 10 May 2024 03:02:33 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-lj1-f176.google.com (mail-lj1-f176.google.com [209.85.208.176]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VbDFj1C1Tz4Y1n for ; Fri, 10 May 2024 03:02:33 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-lj1-f176.google.com with SMTP id 38308e7fff4ca-2e538a264e0so1549101fa.1 for ; Thu, 09 May 2024 20:02:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715310151; x=1715914951; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=C41MiZipjjaIlIRN+sV1yxnTeUk7RKu0WTmsAvM9+IQ=; b=xNpzpE16yS8m+uxrldwhlRpjGwPvz2S5ct74oZT/P6TrAK2+xlialvbTZG+EPC+rh7 xRMER52Vq4EiqicT7cZ/HNwJ9TiQ4KBlWo79GyoZdBC75YWQwBPdHdf/TM66gxup+nO6 Dx6DO011AtsxWP+5S4UyZK8fFGP+CfGHckB/uoMaKp7rbZ1Cymxssy9BI6qbsW9I/Vou nr6p3MGnm1vfsAfUHZTzJRONp6wdZootbeX39zzt2wCzh2ZAl7yD2gckuzFuCeSaA+Sf /xkZp3M7FPB+7YZqSqgo5qdbX3zVF7WypkZakqjD/BnVQXJ3ck7NfipDq2AbTps+p1Ns D/Og== X-Forwarded-Encrypted: i=1; AJvYcCWLpRJL6KXpqjLEyVEx/NSvzEfFUKBK6nonXGFQY8RsFRm6t8KYhWuBQCbY5XktzRYPMqX7xSyH/JC469qD7idHoh642vUBe2TGMVWgNokmng== X-Gm-Message-State: AOJu0YwS9hxRhO5dXLc162zl6kP+TvYoPtmbRfQcpa6Zq7qTg1DpytKn /bFJNpLcfYfu46nuInRPsO/Bsxf3iXCgmuJlMm6zjYbR20gZnCUTTsLqRv4eaXM= X-Google-Smtp-Source: AGHT+IHEarbwLbESqHYWuUNc4ILhLPm0mhogSwEjkn83bbNgKAo4/FS8Q/xfSfhUpegEK6Tz1hrbmQ== X-Received: by 2002:a2e:7205:0:b0:2e0:5d7:a39b with SMTP id 38308e7fff4ca-2e5203b43c8mr9176581fa.33.1715310150694; Thu, 09 May 2024 20:02:30 -0700 (PDT) Received: from smtpclient.apple ([131.111.5.246]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3502bbbbf20sm3209501f8f.93.2024.05.09.20.02.29 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 May 2024 20:02:30 -0700 (PDT) Content-Type: text/plain; charset=us-ascii List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.500.171.1.1\)) Subject: Re: git: 5ccaab1797e5 - main - sysexits: Tidy deprecated header and manual From: Jessica Clarke In-Reply-To: <202405100252.44A2qn3N017921@gitrepo.freebsd.org> Date: Fri, 10 May 2024 04:02:19 +0100 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <4B860CF7-445A-455B-9EB0-D1B5C1F51935@freebsd.org> References: <202405100252.44A2qn3N017921@gitrepo.freebsd.org> To: Warner Losh X-Mailer: Apple Mail (2.3774.500.171.1.1) X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Queue-Id: 4VbDFj1C1Tz4Y1n On 10 May 2024, at 03:52, Warner Losh wrote: >=20 > The branch main has been updated by imp: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D5ccaab1797e5bdc404f2299ebaec1265= 547a4744 >=20 > commit 5ccaab1797e5bdc404f2299ebaec1265547a4744 > Author: Alexander Ziaee > AuthorDate: 2024-05-10 02:43:39 +0000 > Commit: Warner Losh > CommitDate: 2024-05-10 02:50:48 +0000 >=20 > sysexits: Tidy deprecated header and manual >=20 > was deprecated in the base system in a1432b4 for = FreeBSD > 8.0 and is retained only for backwards compatibility. Make that = clear, > since sysexits(3) suggested using it since it was in style(9) prior > to this. Uh, https://reviews.freebsd.org/D27176 has some disagreement. Jess From nobody Fri May 10 03:26:19 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbDnS1xS1z5KggB for ; Fri, 10 May 2024 03:26:36 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ed1-x530.google.com (mail-ed1-x530.google.com [IPv6:2a00:1450:4864:20::530]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VbDnR4qkhz4ZSw for ; Fri, 10 May 2024 03:26:35 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ed1-x530.google.com with SMTP id 4fb4d7f45d1cf-573137ba8d7so4828334a12.0 for ; Thu, 09 May 2024 20:26:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1715311592; x=1715916392; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=g5B82aM9aCHcALYpL/uY/8f2NNs3Oy+TkzvMl1T9kDs=; b=Ot0HRQf8kbyt/o5dK/FdVBnMLshGeHFww6MdWZpuG865Iu7JqLlNEm0drqN2VfzcTP L0yNi4y5lmo2ENQ68ZIHYUKcWw0x7uhOw6jBLTwnJOlcqokqd8AJogFQ8GZsb1ckEa3M QpKNZX1No2iUH5KjL5k+ZtAeDN7lVpCWhKcLdX4v1NDoXh12mcWgDUtBemqTTX8cUs6K Qnymjql8SQHwTYLlHvoLiO+eyhfgvr/1sAX0skhfBLkpxZhHuPrA7aCWlaLtAQse+di3 InxkIseA0lhQUYMBftdj+EImcKAPT3a70ccS7Uki4vrYT3PLcifJkFZVUd8EFrMDsEr0 hOuQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715311592; x=1715916392; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=g5B82aM9aCHcALYpL/uY/8f2NNs3Oy+TkzvMl1T9kDs=; b=GPJGiTd1cW0d08FCI74+AZdnzpWo2XC/Z944iqZFsY77V18W3/kSTJ4JLWRhjd30eW 2KXgmSIrjTKogqwJazAGX9GfPyI1MGUyJZXG4buTWNTZ5Sko68pyuq34xiFQxNIqPCFN R0oat4BlHogAwxdORD6soJs5lu1CtAp3MGhLxRVvXQqMxKrS7tHiBLiqHiKH9FroZNph j8Xu5kODfl8aLkBAyre1z9mAuNN6ytBuS1nQ+94o3Uuv/sl1dal6iaqbM3BbkGHGKt4y fy7q9WGF/UWd6jBejjUlmLUWkeWd2IgOpSlot2d0TdTwDwmJkZ1kMsRf7+880rkT57uS n+Mg== X-Forwarded-Encrypted: i=1; AJvYcCWts3se8kYIDfHTNPZPpMqSPcV8yyr5Hdyv3VUO0oxj/id7yz9CRn5fIDs1M966adbIsRdG6bcd0uFPArkrMXLHRFi8Xg5BOMOtOELYjPRBjA== X-Gm-Message-State: AOJu0YxrlEzTIJvhxwRP9TQOFu0UgefAzoi72kDLpjysGPOpT24j0kSt 3ES6LT7aHy+jGCevHtHs1vvBzsUsqOpNtYRu5Z8K1GGIjCJToEkckZ0CUlSBpvtow5egNgB+U5h j3wqFAM3GctDjCURTPp4A577Z2LdWRp3pFBa5ug== X-Google-Smtp-Source: AGHT+IHi4RWfxtNME8uT6a5iPo1nmaL9EDfN2dDh67udzL9EVpG36GvyFU3myHLmUKOndWukjLQ3Nr4vqFyOkTgJyNU= X-Received: by 2002:a17:906:5291:b0:a59:9f88:f1f1 with SMTP id a640c23a62f3a-a5a2d1de7b1mr134579666b.19.1715311592201; Thu, 09 May 2024 20:26:32 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202405100252.44A2qn3N017921@gitrepo.freebsd.org> <4B860CF7-445A-455B-9EB0-D1B5C1F51935@freebsd.org> In-Reply-To: <4B860CF7-445A-455B-9EB0-D1B5C1F51935@freebsd.org> From: Warner Losh Date: Thu, 9 May 2024 21:26:19 -0600 Message-ID: Subject: Re: git: 5ccaab1797e5 - main - sysexits: Tidy deprecated header and manual To: Jessica Clarke Cc: Warner Losh , src-committers , "" , "" Content-Type: multipart/alternative; boundary="00000000000022259f0618111a99" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4VbDnR4qkhz4ZSw --00000000000022259f0618111a99 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, May 9, 2024, 9:02=E2=80=AFPM Jessica Clarke wr= ote: > On 10 May 2024, at 03:52, Warner Losh wrote: > > > > The branch main has been updated by imp: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D5ccaab1797e5bdc404f2299ebaec126= 5547a4744 > > > > commit 5ccaab1797e5bdc404f2299ebaec1265547a4744 > > Author: Alexander Ziaee > > AuthorDate: 2024-05-10 02:43:39 +0000 > > Commit: Warner Losh > > CommitDate: 2024-05-10 02:50:48 +0000 > > > > sysexits: Tidy deprecated header and manual > > > > was deprecated in the base system in a1432b4 for FreeBS= D > > 8.0 and is retained only for backwards compatibility. Make that > clear, > > since sysexits(3) suggested using it since it was in style(9) prior > > to this. > > Uh, https://reviews.freebsd.org/D27176 has some disagreement. > The project turned away from these around FreeBSD 4 or so, with bde leading the charge with many coming to agree with him. It was formalized in style.9 around FreeBSD 8 or so. This change reflects that history and is the status quo... It might be better to use it, but that needs to be more widely discussed and style.9 and this updated after that. If you feel strongly, then arch@ is likely the next step... Warner > --00000000000022259f0618111a99 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Thu, May 9, 2024, 9:02=E2=80=AFPM Jessica Clarke &l= t;jrtc27@freebsd.org> wrote:
On 10 May 2024, at 03:52, Warner Losh <imp@FreeBSD.org> wrote:
>
> The branch main has been updated by imp:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=3D5ccaab1797e5bdc404f= 2299ebaec1265547a4744
>
> commit 5ccaab1797e5bdc404f2299ebaec1265547a4744
> Author:=C2=A0 =C2=A0 =C2=A0Alexander Ziaee <concussi= ous@runbox.com>
> AuthorDate: 2024-05-10 02:43:39 +0000
> Commit:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org>
> CommitDate: 2024-05-10 02:50:48 +0000
>
>=C2=A0 =C2=A0 sysexits: Tidy deprecated header and manual
>
>=C2=A0 =C2=A0 <sysexits.h> was deprecated in the base system in a= 1432b4 for FreeBSD
>=C2=A0 =C2=A0 8.0 and is retained only for backwards compatibility.=C2= =A0 Make that clear,
>=C2=A0 =C2=A0 since sysexits(3) suggested using it since it was in styl= e(9) prior
>=C2=A0 =C2=A0 to this.

Uh, https://reviews.freebsd.org/D27176 h= as some disagreement.

The project turned away from these around FreeBSD 4 or= so, with bde leading the charge with many coming to agree with him. It was= formalized in style.9 around FreeBSD 8 or so. This change reflects that hi= story and is the status quo...

It might be better to use it, but that needs to be more widely discu= ssed and style.9 and this updated after that. If you feel strongly, then ar= ch@ is likely the next step...

Warner
--00000000000022259f0618111a99-- From nobody Fri May 10 04:36:09 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbGKj5PF6z5KnQT; Fri, 10 May 2024 04:36: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 4VbGKj4Y96z4gb8; Fri, 10 May 2024 04:36:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715315769; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Awa03B2rXTVcqeDtJB98Z/8XTbP1IYc4fI15mXnIbGI=; b=AGbZW+nd8MZo/1EOeIJTC5+o0hukYejglw5mw+KNAbtOS1qRsYYNmTcSwCwQZur/D3Jz+5 Y2iVdEXdGV7+MpugNdPXciaf2yAosSNkdGORdhjJFH4G+V5F8OWeqsRlgw2gwHWkGocqsa JkaJBQhIxyNSgIBQUG8NDqgiGukfTYu8ja1BZ6dCX9mYJYVOCNwvO7CNTPZSq/kQAhAvEM 7NEHUmlpHiY731ZhLsJbSdh09Lnf4lp9iGh8bjl4cK92JtoskrFEuzssZSpzwbdXmOnVJR j+CiWUTMhDtnNu6yFQ8sZnor+IUB4yRsyH1800x2pFZsMhcXo4RPZDhD+w1pAw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715315769; a=rsa-sha256; cv=none; b=jYjJ2k1dROmdwmxrT71o1FsRDDduOnya0wBwfnK+EBkxNsezjZmYKrOKuBh+Vi217L+KaR E3XzisRIEdrbBOESMUh1/QtJNs3DhycYTbjf9HgtknZJf2uB+8dMwv5LfgpOekx1nl+t1O wHOhP2bgk4ipDhwzOmC/00RFpjrKR/x0TPWOkdxcF7wJ64gnhPfubaIQdpIWnGFfna5BQf aRPgkZUSICeOvZ+f9S9YX7CfARSBZslbUOFwco78yuF1MNQtkMRfdi2PJrmIq6weWzX91T /xhWDtQI7LlwQlC5AsYwyZJS6SzdI6uI0rz4PTlBvqHmoQI/w+x5ld8YWTnjhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715315769; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Awa03B2rXTVcqeDtJB98Z/8XTbP1IYc4fI15mXnIbGI=; b=itimXtV7WtnMQgkFtvRYiA3VPMzlIR28BergKKGX0BP5PBVq6Cvo3w1TBQt3I+rEShymBD okP7LFt3dz7eRj2xao2L3AhsEy+wl33soPl20be8kVZV1oj+zkS7DuMzK+xBXlBPdUJCTQ QgOicLN598W6mMIJaS4uvmOdouOOLo+fVh/x0BAzorbqb3FzlPjfkHT6qRmdGZsbWnuFd/ g2ckL8Vxluplxe0zFClWjwE7AfBTZFdFkpn+Syoj35glVNGGGfef9hp5G1BxlSS+B+7S8s Ursr3Tei7sbXluBgHAkXHPcJxmaM9todUbrQ9t2PW1B/FtMZOn9ob3lFBgoCgg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbGKj47qHzMfY; Fri, 10 May 2024 04:36: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 44A4a9dO089737; Fri, 10 May 2024 04:36:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A4a9pI089734; Fri, 10 May 2024 04:36:09 GMT (envelope-from git) Date: Fri, 10 May 2024 04:36:09 GMT Message-Id: <202405100436.44A4a9pI089734@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 783baf00128f - main - at cron file is now in /etc/cron.d List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 783baf00128f6cf6fc08404eaad6a11b29d4025d Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=783baf00128f6cf6fc08404eaad6a11b29d4025d commit 783baf00128f6cf6fc08404eaad6a11b29d4025d Author: Paweł Krawczyk AuthorDate: 2024-05-10 04:21:18 +0000 Commit: Warner Losh CommitDate: 2024-05-10 04:34:06 +0000 at cron file is now in /etc/cron.d PR: 243380 Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1106 --- libexec/atrun/atrun.man | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libexec/atrun/atrun.man b/libexec/atrun/atrun.man index 1f49ad9fbb37..766953ef015d 100644 --- a/libexec/atrun/atrun.man +++ b/libexec/atrun/atrun.man @@ -16,7 +16,7 @@ runs jobs queued by The system .Xr crontab 5 file -.Pa /etc/crontab +.Pa /etc/cron.d/at must contain the line .Bd -literal */5 * * * * root /usr/libexec/atrun From nobody Fri May 10 04:36:10 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbGKk6hYNz5KnQW; Fri, 10 May 2024 04:36: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 4VbGKk5nSwz4gvV; Fri, 10 May 2024 04:36:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715315770; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bM5U5k/AvOvAyfQyx+rgo7TsJKu4nQI2mzI8SA/kQwE=; b=k8Rhr6SR8YXs4WrR0Pm1XbolOZvDxhoGkpoT7gt3jxRBXAeMjPh1lwT4QxgZ6W733dU6wv ys8ZwhQgGj/Pdxa/V9zAdTa9W9OS13GWxVM5Vpm5yvXzn5E+Fczl7xxL8Kv6WWu5wtegl4 CWfzeNlZN/escBMF1bNxLaq+6bklMcM29qSIXWBA71XKrYYGr4BqL/LaYM5hOH45ouYHpt 6YZWYHGzIsHCAKl98/9bog7mUYkWtmLK2RPBTDiBeZMYA9fKHi9LC+jutrvfAiRHFrTplp qDPhjLexV6i2LotrIoJLzC66a7lZv+G319K6R3SMot+tH22PLAGrlqMua0D5uw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715315770; a=rsa-sha256; cv=none; b=EOZHq5SwwbOePIPJYvWTc+x4igrqS0ynu6BnE7Ry7/NZUzvrogH1JPx2eMmHLnF8/XgYbP SI+qH6WCJN/dB5/bUfwT0b2TeiljRciqcWH7rWhRYIYD1hmrCjYXZmEGVdyw4uA9A0lShY dBPZUucpClSkIqk2nM8x+VJJc5FC0q/CiDZBrO2eEw68PNwOSztaLgPpVWdDCs6WfInx5J VlcwGlec5T3QNXqw8VaiMZntTMb+V2CwgZAqqMoa7VHYGjj/+GL7difhgK/End7hyvpMWG wDXlRyASsMODlWg8D1s+kdhviB8H+QgZETGdHmkfB8P8h/2qqfxZbf9tvtNaaw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715315770; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bM5U5k/AvOvAyfQyx+rgo7TsJKu4nQI2mzI8SA/kQwE=; b=I+MrWWendbIUXTPigRFu5bVl5qzVzN7UTS//G17YbQ+C3FOkLicPLFjsJKK644UmUa0hy9 8CA6nED2hH12DG8l0SUgA47ggZTrLpHSK7kk0SD6KASZBNWHUyuyj1TDoztBDx1vUTO3FH Lz0TE6VSYrj0msJdKTgnyNwzojDm1gP2RcYLuIcOX7eu1UrhO/lybe1PUwiba1ofw2rFWQ N/0HDdA26UrGAfvndj+pnximWyDvlKJbb5vkZUfJZbXnbl7Psw8dsSNmfgadNmtMLIiEak s6D5jBtWTjSkF8xH5nVIz8B8dpekftJUj41l31CQOBuwO/vGTesAiKTG4vx6Fg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbGKk5P04zN2X; Fri, 10 May 2024 04:36: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 44A4aA50089773; Fri, 10 May 2024 04:36:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A4aAMK089770; Fri, 10 May 2024 04:36:10 GMT (envelope-from git) Date: Fri, 10 May 2024 04:36:10 GMT Message-Id: <202405100436.44A4aAMK089770@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 042267e0cdda - main - Explain cron.d List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 042267e0cdda5cd90803b00a3d6a7dd1f403938d Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=042267e0cdda5cd90803b00a3d6a7dd1f403938d commit 042267e0cdda5cd90803b00a3d6a7dd1f403938d Author: Paweł Krawczyk AuthorDate: 2024-05-10 04:21:18 +0000 Commit: Warner Losh CommitDate: 2024-05-10 04:34:36 +0000 Explain cron.d Add details on the format of system cron files, which are mentioned in cron(8) which refers here but barely explained here. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1106 --- usr.sbin/cron/crontab/crontab.5 | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/usr.sbin/cron/crontab/crontab.5 b/usr.sbin/cron/crontab/crontab.5 index 12caa45cff46..e4e6fae0b01b 100644 --- a/usr.sbin/cron/crontab/crontab.5 +++ b/usr.sbin/cron/crontab/crontab.5 @@ -19,7 +19,7 @@ .\" .\" $Id: crontab.5,v 1.2 1998/08/14 00:32:38 vixie Exp $ .\" -.Dd March 29, 2020 +.Dd May 10, 2024 .Dt CRONTAB 5 .Os .Sh NAME @@ -151,11 +151,15 @@ usually does not read its mail. .Pp The format of a cron command is very much the V7 standard, with a number of upward-compatible extensions. -Each line has five time and date fields, -followed by a user name -(with optional ``:'' and ``/'' suffixes) -if this is the system crontab file, +.Pp +Each user cron line has five time and date fields, followed by a command. +.Pp +Each line in system crontab ( +.Pa /etc/crontab, /etc/cron.d, /usr/local/etc/cron.d +) has five time and date fields, followed by a valid user name +(with optional ``:'' and ``/'' suffixes), followed by a command. +.Pp Commands are executed by .Xr cron 8 when the minute, hour, and month of year fields match the current time, @@ -281,9 +285,15 @@ Note, however, that overlap may occur if the job is running when the file containing the job is modified and subsequently reloaded. The first run is scheduled for the specified number of seconds after cron is started or the crontab entry is reloaded. -.Sh EXAMPLE CRON FILE +.Sh EXAMPLE SYSTEM CRON FILE +.Bd -literal +# sample /etc/cron.d/vmstat +# run vmstat every five minutes +# note the username as sixth field! +*/5 * * * * root vmstat +.Ed +.Sh EXAMPLE USER CRON FILE .Bd -literal - # use /bin/sh to run commands, overriding the default set by cron SHELL=/bin/sh # mail any output to `paul', no matter whose crontab this is From nobody Fri May 10 04:45:36 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbGXc6vTmz5KnpC; Fri, 10 May 2024 04:45: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 4VbGXc632nz4jcP; Fri, 10 May 2024 04:45:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715316336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mE87muFYlNR+eR1+drvQ9VxWAtIb7CAGiRYt1jq4DdI=; b=U0ldFaRD3a9rgaMuGJ8UjfDAtznhehMhUwXni2wDbq9ogiFhsv/C3FQIzCWdYYETdC34SE VEXeY0NdKJ24vp3M+jk1mCfzjy+1rwsff0FPdk2DIyzaR7X9bdpwBktAITvL/AMk8cGklM 188tARIQ5FkAKeYQH62MS5eI+rwJv1qCWNRe6NzTqYqq4h0CIOeDEhKyxFe+pIeaP7d6YG vOHog3N3CjzCrwedADY4XpKc01Nqlev+4Zu78ydJASTKsimQJLV24I1HrBz2NvAIfFc+0A 8KWqvsO7Obn9GriofreHUT9c5pSolCqD38CK7dqDHf9aFdflksGtnx+gww5vsg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715316336; a=rsa-sha256; cv=none; b=Lm+E1kFGD0S2izbSoMFwpKonTl4zcJ78gyFgxo257FSO5nWr+kp3YJLkupmd3Bft/tQ5TH h/18dmaQJG/rB4B5srr2lFGazz1N2PmSTVX6zPAeFCg3azLxzjy330xRUG9EsW1fgKWXB1 0vr5KiWgAIsVfzojvvB8sJkm7aLcWSY3HMPPhgqyQzgQ2Vrc1q8OlV64uf7lSvmOvOo0Gh TDLr0vYXDN6yTmvi00BAtomnhQLtG2guKchucDfjwM1MM0RFyDqIET4kv0G/Ovo4MfZ7vU aQSP14GoDxPASTuzV8AAvnwTRWEQ0MdQFPJO0EpDdEc8xkdwKfg6pLJAGUqAsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715316336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mE87muFYlNR+eR1+drvQ9VxWAtIb7CAGiRYt1jq4DdI=; b=JnN+OCFuRXf+xgsY0uNEuHX7K+hEmiip30HEtu5pMtwg21+9N24MQ8kUDUWf1MUmfpCRJf pwMBEt+86dmtpPG5kYtRY9jazRmgWN7TtBL8mKNa918b/WHgFyT1IRBWeM1mCBgDhJM8jm qB2nDpLHzI6FotqcP2EFNnHwJSTv6hxjUeJfnHj+AurPWHapUReOM9VTFsXQwp1/bENUXy XRc4sJJVmAGk9iZtcKpRhwC/Uq4foVEpboRDKZovUHrPZRrl/Yfq7m1dLiTYZDf1I0ZPaH tjqBbR6V2+qgVrXQYJlhAUtoH9OwUnE3zHQP+BFKeXTPplmmOakN9plbtx3sAw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbGXc5YWVzNhT; Fri, 10 May 2024 04:45: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 44A4jaH4006413; Fri, 10 May 2024 04:45:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A4ja1S006410; Fri, 10 May 2024 04:45:36 GMT (envelope-from git) Date: Fri, 10 May 2024 04:45:36 GMT Message-Id: <202405100445.44A4ja1S006410@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: b01988d5e570 - main - mdconfig: Print options when listing devices List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b01988d5e570158534110ca309fe93112c5c62f1 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=b01988d5e570158534110ca309fe93112c5c62f1 commit b01988d5e570158534110ca309fe93112c5c62f1 Author: Ricardo Branco AuthorDate: 2024-05-10 04:42:22 +0000 Commit: Warner Losh CommitDate: 2024-05-10 04:43:09 +0000 mdconfig: Print options when listing devices PR: 278624 Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1210 --- sbin/mdconfig/mdconfig.c | 90 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 76 insertions(+), 14 deletions(-) diff --git a/sbin/mdconfig/mdconfig.c b/sbin/mdconfig/mdconfig.c index 740f800e3e79..d49eb6ed08e5 100644 --- a/sbin/mdconfig/mdconfig.c +++ b/sbin/mdconfig/mdconfig.c @@ -56,7 +56,7 @@ static struct md_ioctl mdio; static enum {UNSET, ATTACH, DETACH, RESIZE, LIST} action = UNSET; -static int nflag; +static int md_fd, nflag; static void usage(void) __dead2; static void md_set_file(const char *); @@ -65,6 +65,7 @@ static int md_query(const char *, const int, const char *); static int md_list(const char *, int, const char *); static char *geom_config_get(struct gconf *g, const char *name); static void md_prthumanval(char *length); +static void print_options(const char *s, const char *); #define OPT_VERBOSE 0x01 #define OPT_UNIT 0x02 @@ -86,11 +87,11 @@ usage(void) " mdconfig -l [-v] [-n] [-f file] [-u unit]\n" " mdconfig file\n"); fprintf(stderr, "\t\ttype = {malloc, vnode, swap}\n"); - fprintf(stderr, "\t\toption = {cache, cluster, compress, force,\n"); - fprintf(stderr, "\t\t mustdealloc, readonly, reserve, ro,\n"); - fprintf(stderr, "\t\t verify}\n"); + fprintf(stderr, "\t\toption = {async, cache, cluster, compress,\n"); + fprintf(stderr, "\t\t force, mustdealloc, readonly, ro,\n"); + fprintf(stderr, "\t\t reserve, verify}\n"); fprintf(stderr, "\t\tsize = %%d (512 byte blocks), %%db (B),\n"); - fprintf(stderr, "\t\t %%dk (kB), %%dm (MB), %%dg (GB), \n"); + fprintf(stderr, "\t\t %%dk (kB), %%dm (MB), %%dg (GB),\n"); fprintf(stderr, "\t\t %%dt (TB), or %%dp (PB)\n"); exit(1); } @@ -98,7 +99,7 @@ usage(void) int main(int argc, char **argv) { - int ch, fd, i, vflag; + int ch, i, vflag; char *p; char *fflag = NULL, *sflag = NULL, *tflag = NULL, *uflag = NULL; @@ -366,12 +367,12 @@ main(int argc, char **argv) if (!kld_isloaded("g_md") && kld_load("geom_md") == -1) err(1, "failed to load geom_md module"); - fd = open(_PATH_DEV MDCTL_NAME, O_RDWR, 0); - if (fd < 0) + md_fd = open(_PATH_DEV MDCTL_NAME, O_RDWR, 0); + if (md_fd < 0) err(1, "open(%s%s)", _PATH_DEV, MDCTL_NAME); if (action == ATTACH) { - i = ioctl(fd, MDIOCATTACH, &mdio); + i = ioctl(md_fd, MDIOCATTACH, &mdio); if (i < 0) err(1, "ioctl(%s%s)", _PATH_DEV, MDCTL_NAME); if (mdio.md_options & MD_AUTOUNIT) @@ -379,13 +380,13 @@ main(int argc, char **argv) } else if (action == DETACH) { if (mdio.md_options & MD_AUTOUNIT) errx(1, "-d requires -u"); - i = ioctl(fd, MDIOCDETACH, &mdio); + i = ioctl(md_fd, MDIOCDETACH, &mdio); if (i < 0) err(1, "ioctl(%s%s)", _PATH_DEV, MDCTL_NAME); } else if (action == RESIZE) { if (mdio.md_options & MD_AUTOUNIT) errx(1, "-r requires -u"); - i = ioctl(fd, MDIOCRESIZE, &mdio); + i = ioctl(md_fd, MDIOCRESIZE, &mdio); if (i < 0) err(1, "ioctl(%s%s)", _PATH_DEV, MDCTL_NAME); } else if (action == LIST) { @@ -399,10 +400,70 @@ main(int argc, char **argv) return (md_query(uflag, vflag, fflag)); } else usage(); - close(fd); + close(md_fd); return (0); } +static void +print_options(const char *dev, const char *file) +{ + struct md_ioctl mdiox; + int unit; + char sep = '\0'; + + if (sscanf(dev, "md%d", &unit) != 1) + err(1, "invalid device: %s", dev); + + memset(&mdiox, 0, sizeof(mdiox)); + mdiox.md_version = MDIOVERSION; + mdiox.md_unit = unit; + mdiox.md_file = file[0] == '-' ? NULL : strdup(file); + + if (ioctl(md_fd, MDIOCQUERY, &mdiox) < 0) + err(1, "ioctl(%s%s)", _PATH_DEV, MDCTL_NAME); + + if (mdiox.md_file != NULL) + free(mdiox.md_file); + + printf("\t"); + if (mdiox.md_options & MD_ASYNC) { + printf("%casync", sep); + sep = ','; + } + if (mdiox.md_options & MD_CACHE) { + printf("%ccache", sep); + sep = ','; + } + if (mdiox.md_options & MD_CLUSTER) { + printf("%ccluster", sep); + sep = ','; + } + if (mdiox.md_options & MD_COMPRESS) { + printf("%ccompress", sep); + sep = ','; + } + if (mdiox.md_options & MD_FORCE) { + printf("%cforce", sep); + sep = ','; + } + if (mdiox.md_options & MD_READONLY) { + printf("%creadonly", sep); + sep = ','; + } + if (mdiox.md_options & MD_RESERVE) { + printf("%creserve", sep); + sep = ','; + } + if (mdiox.md_options & MD_VERIFY) { + printf("%cverify", sep); + sep = ','; + } + if (mdiox.md_options & MD_MUSTDEALLOC) { + printf("%cmustdealloc", sep); + sep = ','; + } +} + static void md_set_file(const char *fn) { @@ -500,11 +561,12 @@ md_list(const char *units, int opt, const char *fflag) if (file == NULL) file = "-"; printf("\t%s", file); - file = NULL; label = geom_config_get(gc, "label"); if (label == NULL) - label = ""; + label = "-"; printf("\t%s", label); + print_options(pp->lg_name, file); + file = label = NULL; } opt |= OPT_DONE; if ((opt & OPT_LIST) && !(opt & OPT_VERBOSE)) From nobody Fri May 10 09:23:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNjL67XWz5J1m9; Fri, 10 May 2024 09:23: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 4VbNjL5cvBz4Dj1; Fri, 10 May 2024 09:23:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pbaAuCJCmYt+DVYQNlsZ4RMdPoxRKNIHM1Qr9gW2HDQ=; b=nekMkNeCCFBDLfVC5TdykqfIlVGkaaYf+7KW8LfkgTbgjpRMUhPODzkrUgWLKpk/CjD8P6 EfCrmxMNsDODXDSIt05VJFxs0oNbGY3HBNRSp7AU36/rqOJRQGVVgZltyc6p8dl2JNn3wI xHKuNWBPhrvUo4ZAOVrf2vXmfj0kRkc369S8l3obF6WSeDj19tQCIRBiOkIbL0sG1AF2Ed ofJphYFyXZQa9qa0JJp2h8zAnoUmSl5q0ccsO9syILoimLMZPCNO6cRqQZoZnH7PpC08G8 MU2fbsogwVikVjulUgNVCXwCFmZ37hp7/If/UF7BoB6S29iC2qaEZilj2grCow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333014; a=rsa-sha256; cv=none; b=Al/foARQDwp4v2aMgEIJ2vyMJGeXJN8UkrAgSj0H8G4LuxyFD+bRJaFhYLC9ULUZLI7Su6 24h+hWm52LiVF0P8H8R8uI8NWIdXaMQDRLojqvwt3oizFkFjUXUI60qOELie4kkwZ2m+oP DZyUSJwURgbqt9rAu1EE7t2BkKZFlRPEUqjLNna4MOj0QFz01tF6nlVeD20YDT/iZpKgE4 dt3zd3Do3rfnvWN5TJeNkz1G5picKTctzPM/kkNTHHgPkcoBdu3vvxyDAbGIV6YFVgTGf9 SMiv8rL6I2hNzoBioyMP51t68LDPkNYjWSHwGSNewFd/yvywmZVNm535jLL42Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pbaAuCJCmYt+DVYQNlsZ4RMdPoxRKNIHM1Qr9gW2HDQ=; b=yed7PZX5k4n1BuW521BRLxTHiIIDiszW8qq2NN5T4VtLSD/F5HKHqHZ03NnY6CztkK5SFW 35T2yMuRI4rnEZ8GaYuLMxxBnsVNAoF7kfxuxiFJA/CGbqYUtJ7b3ADaXwNHLCv3lX893+ Vlh4vYfoqGntSqK+cSFoIqEmdodeprwsZ3AENJb/KM2Ipkjj5Kcx2yjZQco8xLSWyuUUm9 bJxDC1G313XMNIbjrUb2dT7I/T7ZZ/Eg1zYz5J6l470a2M1ctUvm36zB+tJPXYhbswfohf 44+wjH2Ce/nxFNZOea7MR/sUB7hy9ax+WxXjo5kVVT+hfjEIGAVeRJ9kH9gCKQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNjL5CnZzXqB; Fri, 10 May 2024 09:23: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 44A9NYPM080111; Fri, 10 May 2024 09:23:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9NYVc080108; Fri, 10 May 2024 09:23:34 GMT (envelope-from git) Date: Fri, 10 May 2024 09:23:34 GMT Message-Id: <202405100923.44A9NYVc080108@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 44e72c6e2e6b - main - Add man page for nfslockd. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 44e72c6e2e6bcfa2cba89afb92fa05f6ac4d5660 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=44e72c6e2e6bcfa2cba89afb92fa05f6ac4d5660 commit 44e72c6e2e6bcfa2cba89afb92fa05f6ac4d5660 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 09:23:13 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 09:23:13 +0000 Add man page for nfslockd. PR: 130238 MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D45139 --- share/man/man4/Makefile | 1 + share/man/man4/nfslockd.4 | 45 ++++++++++++++++++++++++++++++++++++++++++ usr.sbin/rpc.lockd/lockd.c | 3 ++- usr.sbin/rpc.lockd/rpc.lockd.8 | 5 +++-- 4 files changed, 51 insertions(+), 3 deletions(-) diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index c5ba7e46deb8..5deb4ddea874 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -341,6 +341,7 @@ MAN= aac.4 \ netlink.4 \ netmap.4 \ ${_nfe.4} \ + nfslockd.4 \ ${_nfsmb.4} \ ng_async.4 \ ng_bpf.4 \ diff --git a/share/man/man4/nfslockd.4 b/share/man/man4/nfslockd.4 new file mode 100644 index 000000000000..770d9b8736b0 --- /dev/null +++ b/share/man/man4/nfslockd.4 @@ -0,0 +1,45 @@ +.\"- +.\" Copyright (c) 2024 Dag-Erling Smørgrav +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 8, 2024 +.Dt NFSLOCKD 4 +.Os +.Sh NAME +.Nm nfslockd +.Nd NFS advisory locking +.Sh SYNOPSIS +To compile this driver into the kernel, place the following lines in +your kernel configuration file: +.Bd -ragged -offset indent +.Cd "options NFSLOCKD" +.Ed +.Pp +Alternatively, to load the driver as a module at boot time, place the +following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +nfslockd_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver provides kernel support for NFSv3 advisory locking. +It works in tandem with +.Xr rpc.lockd 8 , +which will normally load it on startup if it is not already loaded or +compiled-in. +.Sh SEE ALSO +.Xr rpc.lockd 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 6.4 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Doug Rabson Aq Mt dfr@FreeBSD.org . diff --git a/usr.sbin/rpc.lockd/lockd.c b/usr.sbin/rpc.lockd/lockd.c index 7e0652d26533..0ac7ddfeea5c 100644 --- a/usr.sbin/rpc.lockd/lockd.c +++ b/usr.sbin/rpc.lockd/lockd.c @@ -188,7 +188,8 @@ main(int argc, char **argv) kernel_lockd_client = FALSE; if (modfind("nfslockd") < 0) { if (kldload("nfslockd") < 0) { - fprintf(stderr, "Can't find or load kernel support for rpc.lockd - using non-kernel implementation\n"); + fprintf(stderr, "Unable to load nfslockd(4), " + "using userland implementation\n"); } else { kernel_lockd = TRUE; } diff --git a/usr.sbin/rpc.lockd/rpc.lockd.8 b/usr.sbin/rpc.lockd/rpc.lockd.8 index 89f55087901d..89592a1cceaf 100644 --- a/usr.sbin/rpc.lockd/rpc.lockd.8 +++ b/usr.sbin/rpc.lockd/rpc.lockd.8 @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd November 21, 2019 +.Dd May 8, 2024 .Dt RPC.LOCKD 8 .Os .Sh NAME @@ -44,7 +44,7 @@ The .Nm utility provides monitored and unmonitored file and record locking services -in an NFS environment. +in an NFSv3 environment. To monitor the status of hosts requesting locks, the locking daemon typically operates in conjunction with @@ -137,6 +137,7 @@ RPC protocol specification for the network lock manager protocol. .El .Sh SEE ALSO .Xr syslog 3 , +.Xr nfslockd 4 , .Xr rc.conf 5 , .Xr rpc.statd 8 .Sh STANDARDS From nobody Fri May 10 09:30:07 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNrv4MD9z5J2SY; Fri, 10 May 2024 09:30: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 4VbNrv3vKwz4FwZ; Fri, 10 May 2024 09:30:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333407; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bXZt4j7qMkGUz7hpQ4HkW/JP17UR1+YU0JoAvpf43Ws=; b=hQY1UALU5oJNzEdBY97Qc8aImBdGj9DjUd+YJx2LwFno+E0ueD2rmTBlkvFGYXHkrNy+be xoqjwzkd9FW2gG9UyQtPfWkUPxY/9aIRoJpUI/VAv883sSf0DBRY548pQJ6Mg6/rz4bYSD iJpJTefzfSnOjQdFFixC47yAzVKKMfNacMzH5dkO8ipeyOPUQs1FKD+BZP0CWlJupkuU51 cjBd9hwB1k/WMfOqJBRPPQQLv5MMMudUzZnOG2mncttRSWpS0nfwdSGpdHfW9jfFyRv1W9 3VQgptqpndIB77huPoZ4fKBJvZa8nI7RVnaFpz+xEPkKWo4L0S1E0o5DKHSCng== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333407; a=rsa-sha256; cv=none; b=fKtf6WDgRcsOXL3XMLvL5lpLe2+5nu4+prKe5FXMonoBTUZyGIh8NbpmpW0F1EsbMehxjD 0GK965Hez551l73NGK4HjYr1cG9uJWofmTFbOr/vf9aH/YIW/wgrxatHDZJtX/k0DU1/rQ jA3oZPVhR/e+7BrvBLWLnzxbXFrFFyxbAvtV5G4ZS2xJ0SOsRlj8PwEnuAN2OMttzvc7JT Dfl9FmyPtzJXbANa6p+jGAFcfaiEnLqikA9NkbYgfgecilrXXrQj2f+arX0tHDa87hhxfl N7uKCN+Y/bjc0hSWBbboc/huB6PzBW8DnkDSj6M7eX7STinSbUY8e6AvLTwTUw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333407; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bXZt4j7qMkGUz7hpQ4HkW/JP17UR1+YU0JoAvpf43Ws=; b=XdL4STf4PLh4FWZWV0sF9AtkOYlU2mhNpYDeTvZIePtothOqUpwKgGPzrYcaBV6QMvNjTU 9nvZUA+vRG71Bl6ZupX2/ZCNpgCJ8uK6b4CbDInmdQPmadg9f4dTw1oMXjlC9iQe0ONcwC sYaIWuGfM0R8DnNO0ao3Uh6+G8ubrvN7QrvSIBtuBF9vr0gtyUs5DLpuOQKWouFa9zKxaU jnIEbRW2JbSvxDs+6L1GiH+aTpUJej0lFdUh/WngBlDQSZi6aLtWVYX7izqA46pFpl+Oud Mj8YXvnF/xkGOqs9e5qpw79SQCPrimiVsuVV5HjJq17XPh/wC9dc91fzisZeZg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNrv3RNCzXnB; Fri, 10 May 2024 09:30: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 44A9U7sl084229; Fri, 10 May 2024 09:30:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9U7B5084223; Fri, 10 May 2024 09:30:07 GMT (envelope-from git) Date: Fri, 10 May 2024 09:30:07 GMT Message-Id: <202405100930.44A9U7B5084223@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: e353ac0cfd5d - main - am64: Allow cpu.h to be included from assembly List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e353ac0cfd5d155c01253ee17c2bf23f888cb7de Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=e353ac0cfd5d155c01253ee17c2bf23f888cb7de commit e353ac0cfd5d155c01253ee17c2bf23f888cb7de Author: Andrew Turner AuthorDate: 2024-05-03 16:07:29 +0000 Commit: Andrew Turner CommitDate: 2024-05-10 09:29:24 +0000 am64: Allow cpu.h to be included from assembly Reviewed by: jhibbits, kevans Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D45081 --- sys/arm64/include/cpu.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/arm64/include/cpu.h b/sys/arm64/include/cpu.h index 8f5a9e3dbd3c..91ed3634c6d8 100644 --- a/sys/arm64/include/cpu.h +++ b/sys/arm64/include/cpu.h @@ -42,8 +42,10 @@ #ifndef _MACHINE_CPU_H_ #define _MACHINE_CPU_H_ +#if !defined(__ASSEMBLER__) #include #include +#endif #include #define TRAPF_PC(tfp) ((tfp)->tf_elr) @@ -198,6 +200,7 @@ #define CPU_MATCH_ERRATA_CAVIUM_THUNDERX_1_1 0 #endif +#if !defined(__ASSEMBLER__) extern char btext[]; extern char etext[]; @@ -268,6 +271,7 @@ ADDRESS_TRANSLATE_FUNC(s1e0w) ADDRESS_TRANSLATE_FUNC(s1e1r) ADDRESS_TRANSLATE_FUNC(s1e1w) +#endif /* !__ASSEMBLER__ */ #endif #endif /* !_MACHINE_CPU_H_ */ From nobody Fri May 10 09:30:08 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNrw5pDdz5J2dj; Fri, 10 May 2024 09:30: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 4VbNrw4PYrz4Fqs; Fri, 10 May 2024 09:30:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333408; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cDclrGGpo1kz7Iz8KUL9zoIpLhG4gna1L/2dO1qdfg0=; b=GLlx028OtQ2aBICgH2+pB4WPmMKz6FqG/kGBJwpKf803QFvqsiNB6MUE6DeDJPWfTchClY 4CuaUK72ZO+DUiGXiCETWmsen2HrwnJyBAMOxX53IMDX6+M1lDO639gOJx6T8OicHsgbkf x8ImJFFyrtES4c3S4ZV7w5TCcEnesv9ov8L6IYah3Zuou5lpf82y/KNISZSOLGO6Y/Rc7Q Maue0ngLDRS6tvLDjbliyjplSUraoh0Jsil6hNN8CUnkENndPsfZgJB55lmT0xu0+Aw34X p4h6CkEVg0k/23vvnny3pStR0n8bLTvrWp/m2ylPeKQN99LllO0bPRTHaeIJWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333408; a=rsa-sha256; cv=none; b=hjl/EcvXi6UNSkOtghOp+Xaol2b4rY5w4hf+1ZbgjfmiM7hnO4+Z8tzwPWR/NkWwvCDwD8 /oHBTM34F6ACF7rKmkk9wvW565sMRiAITNFDoeHg5vL5QDE6SYj00MXujxZKSHbgWplXtM n1slG7ktdvZPxInz5lfIY95BqbSg0MvX/SPm9/6n45w1Uasvcd7xWYQP4EG4GCCSSCyKfJ 6W5X+kRz5I2cUpli/AuK5is0+/5kGCzRUDEFa+Nsiv5feI/TzahX2v6tzAQBq31zxI95bi OlPoj7ONlMa/DM0fqQCcuwISLC8lM2TCssDDtBqX008pOXmTPQkpa1qKbSsUVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333408; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cDclrGGpo1kz7Iz8KUL9zoIpLhG4gna1L/2dO1qdfg0=; b=lvD53MWfKtddvKBLiKj1qHbCETeld0ffwa71dcDnFFMsxq6leBvmF3y8paRp70GD4bVPUB +Kh1HrtNV92bLKHdHSfI/wjNe9nSOYVliRtx0zLTgpZtk3zw8a9GgBlJMvDp/t63Aaaous EXj0tvQXK0RpFj2+36yMgyigbfaPXtIr5tYL0EeXhpCCVOVpAN3alnVTmhk3LxsW0v/uLx /3IXtWOvi3/zur32RKtARxlYDph0YcaDwYKTUjHoswo1OobZ50XXL8e0k3K67HG5bj9a3F UG5Znyr5bBK6mxRPufRi59XO6givZt5m+EclF10KtsHoDCbA+Uj682n8p41Aug== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNrw410rzXqF; Fri, 10 May 2024 09:30: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 44A9U8e8084511; Fri, 10 May 2024 09:30:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9U8BQ084506; Fri, 10 May 2024 09:30:08 GMT (envelope-from git) Date: Fri, 10 May 2024 09:30:08 GMT Message-Id: <202405100930.44A9U8BQ084506@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: c78ebc69c2aa - main - arm64: Support a shared release for spin-table List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c78ebc69c2aa5454b4dc8fd7451b3b0d031205b8 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=c78ebc69c2aa5454b4dc8fd7451b3b0d031205b8 commit c78ebc69c2aa5454b4dc8fd7451b3b0d031205b8 Author: Andrew Turner AuthorDate: 2024-04-29 14:23:42 +0000 Commit: Andrew Turner CommitDate: 2024-05-10 09:29:24 +0000 arm64: Support a shared release for spin-table When releasing multiple CPUs that share a release address we need them to wait for their turn to boot. Add a mechanism to do this by booting them until they enable the TLB before waiting their turn to enter init_secondary. Reviewed by: jhibbits, kevans Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D45082 --- sys/arm64/arm64/locore.S | 55 ++++++++++++++++++++++++++++++++++++++++---- sys/arm64/arm64/mp_machdep.c | 21 +++++++++++++---- 2 files changed, 67 insertions(+), 9 deletions(-) diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S index fd77938edae9..94a50b735bc6 100644 --- a/sys/arm64/arm64/locore.S +++ b/sys/arm64/arm64/locore.S @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -192,12 +193,50 @@ END(_start) #ifdef SMP /* - * mpentry(unsigned long) + * void + * mpentry_psci(unsigned long) * - * Called by a core when it is being brought online. + * Called by a core when it is being brought online with psci. * The data in x0 is passed straight to init_secondary. */ -ENTRY(mpentry) +ENTRY(mpentry_psci) + mov x26, xzr + b mpentry_common +END(mpentry_psci) + +/* + * void + * mpentry_spintable(void) + * + * Called by a core when it is being brought online with a spin-table. + * Reads the new CPU ID and passes this to init_secondary. + */ +ENTRY(mpentry_spintable) + ldr x26, =spintable_wait + b mpentry_common +END(mpentry_spintable) + +/* Wait for the current CPU to be released */ +LENTRY(spintable_wait) + /* Read the affinity bits from mpidr_el1 */ + mrs x1, mpidr_el1 + ldr x2, =CPU_AFF_MASK + and x1, x1, x2 + + adrp x2, ap_cpuid +1: + ldr x0, [x2, :lo12:ap_cpuid] + cmp x0, x1 + b.ne 1b + + str xzr, [x2, :lo12:ap_cpuid] + dsb sy + sev + + ret +LEND(mpentry_spintable) + +LENTRY(mpentry_common) /* Disable interrupts */ msr daifset, #DAIF_INTR @@ -228,6 +267,14 @@ ENTRY(mpentry) mp_virtdone: BTI_J + /* + * Allow this CPU to wait until the kernel is ready for it, + * e.g. with spin-table but each CPU uses the same release address + */ + cbz x26, 1f + blr x26 +1: + /* Start using the AP boot stack */ adrp x4, bootstack ldr x4, [x4, :lo12:bootstack] @@ -258,7 +305,7 @@ mp_virtdone: msr tpidr_el1, x18 b init_secondary -END(mpentry) +LEND(mpentry_common) #endif /* diff --git a/sys/arm64/arm64/mp_machdep.c b/sys/arm64/arm64/mp_machdep.c index 9c6175445572..bd13dde9cee0 100644 --- a/sys/arm64/arm64/mp_machdep.c +++ b/sys/arm64/arm64/mp_machdep.c @@ -106,7 +106,8 @@ static void ipi_stop(void *); static u_int fdt_cpuid; #endif -void mpentry(unsigned long cpuid); +void mpentry_psci(unsigned long cpuid); +void mpentry_spintable(void); void init_secondary(uint64_t); /* Synchronize AP startup. */ @@ -114,6 +115,7 @@ static struct mtx ap_boot_mtx; /* Used to initialize the PCPU ahead of calling init_secondary(). */ void *bootpcpu; +uint64_t ap_cpuid; /* Stacks for AP initialization, discarded once idle threads are started. */ void *bootstack; @@ -420,7 +422,10 @@ enable_cpu_spin(uint64_t cpu, vm_paddr_t entry, vm_paddr_t release_paddr) { vm_paddr_t *release_addr; - release_addr = pmap_mapdev(release_paddr, sizeof(*release_addr)); + ap_cpuid = cpu & CPU_AFF_MASK; + + release_addr = pmap_mapdev_attr(release_paddr, sizeof(*release_addr), + VM_MEMATTR_DEFAULT); if (release_addr == NULL) return (ENOMEM); @@ -432,6 +437,10 @@ enable_cpu_spin(uint64_t cpu, vm_paddr_t entry, vm_paddr_t release_paddr) "sev \n" ::: "memory"); + /* Wait for the target CPU to start */ + while (atomic_load_64(&ap_cpuid) != 0) + __asm __volatile("wfe"); + return (0); } @@ -475,7 +484,6 @@ start_cpu(u_int cpuid, uint64_t target_cpu, int domain, vm_paddr_t release_addr) bootstack = (char *)bootstacks[cpuid] + MP_BOOTSTACK_SIZE; printf("Starting CPU %u (%lx)\n", cpuid, target_cpu); - pa = pmap_extract(kernel_pmap, (vm_offset_t)mpentry); /* * A limited set of hardware we support can only do spintables and @@ -483,10 +491,13 @@ start_cpu(u_int cpuid, uint64_t target_cpu, int domain, vm_paddr_t release_addr) * PSCI branch here. */ MPASS(release_addr == 0 || !psci_present); - if (release_addr != 0) + if (release_addr != 0) { + pa = pmap_extract(kernel_pmap, (vm_offset_t)mpentry_spintable); err = enable_cpu_spin(target_cpu, pa, release_addr); - else + } else { + pa = pmap_extract(kernel_pmap, (vm_offset_t)mpentry_psci); err = enable_cpu_psci(target_cpu, pa, cpuid); + } if (err != 0) { pcpu_destroy(pcpup); From nobody Fri May 10 09:30:09 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNry04BQz5J2bb; Fri, 10 May 2024 09:30: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 4VbNrx50lwz4G3w; Fri, 10 May 2024 09:30:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jfiMc8qqNLP36l3d0FzA3IbrptCs1ym0H8zsxM/PPCY=; b=TJ4tIx0PZRmJN+9FXj2BcQcSQtT2SXi4ZF9czgkHGrWLwDeEzqLGYAhciuDq2HCGBn4UtM h3g9QliMkiTPw2ExPGIR5HP9NZaF0cXustPSHng3yS0Tef6PLwdkULkcl9SiXPv3YNWoL0 378/IO85ZWMgJflnSQIU1w6MElu/+BcLkgzPIUqbYZpakDSFkGD2mAslU9JFqi2R8JsZ6F iaFjqhSrP5NVQTYV5aF07Re4r3gwwOnYWOTNIB53GgvpN4zuUlO97W7tjgpL15QdWcqrI3 7IkZju2l8aZOkPuqzMPPNLeJGSXsHpuDf9zLSw2xAUy9qa7ZU1GOGB4IHqBcgQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333409; a=rsa-sha256; cv=none; b=x1gAgFKVBN9kwWAjmz+gCsVLmHWBIqGjR/wXgQW1avuCu8rFWBu1xzzqIfCSYrj/iekvM0 rs+2rBBmaf5GH0RNUtoGwgEu8xGt0WtBwmlB0dSb423x08yqkXp3EBU6hhi0SyCtZCo9tL yLMuENkkoOWBFPhTU5IByg3A2J+Fu+SQHF0KYLxgZRJRKz33YOxXepnL0cfi3tgpw4hotT rCjM2pnt9tauWpGLOTG90jSdfDOJkOc9X9K29ymgtZSIfCcrCoKtJSVdeZjlRLE/IE8+AZ bpfphMfCLxfNZ8keySQtrlz8r+UJEG2ArMlZDNFfTKns7QaWdeuy+zYc+dbDtg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jfiMc8qqNLP36l3d0FzA3IbrptCs1ym0H8zsxM/PPCY=; b=Zq8cv9+OKwC48RkzDrpSQ0JCdhHuB/iyrr54RW/CfmzV7nhq/fBdiDUY1YPeVVtoxO2QEt uNE5T6BBcZwxjAQEOXc2kInJLYVwtiCCRGx4maSJL4hoP+rt2YQP2YhqXEXZNFg4TUdHfr Bw6DrwLC5oNa9b0877GiQUSw2EOkGWTOfRV/qWuuc0fR+JW0U1+de7an5V2KW6JJ1sLMZq UD6ZriZ67152tbCqt1kAv0CNDbKKMCRdMIWLSCwl0EVimQ44u2qRkwiSxNb2iIjOM2OcG9 jkZtgUHQ6qhJiJm7M9rxKh7st5L9hmk+ZPygXXLMD0w1AVhhnvG5cUDZunLetA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNrx4cKjzXRd; Fri, 10 May 2024 09:30: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 44A9U9O1084899; Fri, 10 May 2024 09:30:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9U900084894; Fri, 10 May 2024 09:30:09 GMT (envelope-from git) Date: Fri, 10 May 2024 09:30:09 GMT Message-Id: <202405100930.44A9U900084894@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 797f1c7c3dea - main - arm64: Flush the spintable release address List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 797f1c7c3dea51f88fa4c365e75c354a93827ca0 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=797f1c7c3dea51f88fa4c365e75c354a93827ca0 commit 797f1c7c3dea51f88fa4c365e75c354a93827ca0 Author: Andrew Turner AuthorDate: 2024-05-03 16:17:25 +0000 Commit: Andrew Turner CommitDate: 2024-05-10 09:29:24 +0000 arm64: Flush the spintable release address Ensure the spintable release address is written back from the cache to memory. The other CPUs reading this may not be reading it with the cache enabled so ensure it is written to the point of coherency before issuing the wakeup sev. As cpu_dcache_wbinv_range includes the needed barrier remove it from the inline asm before the sev instruction. Reviewed by: jhibbits, kevans Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D45083 --- sys/arm64/arm64/mp_machdep.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm64/arm64/mp_machdep.c b/sys/arm64/arm64/mp_machdep.c index bd13dde9cee0..e9b015443477 100644 --- a/sys/arm64/arm64/mp_machdep.c +++ b/sys/arm64/arm64/mp_machdep.c @@ -430,10 +430,10 @@ enable_cpu_spin(uint64_t cpu, vm_paddr_t entry, vm_paddr_t release_paddr) return (ENOMEM); *release_addr = entry; + cpu_dcache_wbinv_range(release_addr, sizeof(*release_addr)); pmap_unmapdev(release_addr, sizeof(*release_addr)); __asm __volatile( - "dsb sy \n" "sev \n" ::: "memory"); From nobody Fri May 10 09:30:10 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNrz1kHMz5J2YF; Fri, 10 May 2024 09:30: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 4VbNry5Zqxz4G1q; Fri, 10 May 2024 09:30:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333410; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xc61ay+4uRHsWHDmbamRp7oP3hCi+cEJDLVMc/B/s2w=; b=G4nb0//Mdu7UiPzSU5JdgVTd5XF9J38lClqH4qOV8itwex7gGTH06+6dhjzNpIpKRPUvYN lU17pCFA0EOFTlNwskg0OXnJi/117zGH2e3pBZO5WUb7lRyo5AmC/8+0lOmwYq5xC/AlsD GRR+DT43V7XOAUddiLLNE4ebWhx4M8TYh/KB8XAVxDCJPpGmRna36JUbWXlOmjgZJjMxYf TCgCyw56Y0sL0i3fx9YkY6yaAHn4WwKIOefE64daSoUIFtZ8T02W9KiNM9SjCI5IgVn+gp D8VUf9+BdIAruvY+rEie2XwwQjAQxmgQrlX+kHa1bnbfjzrZZrZlo8vz1KAK/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333410; a=rsa-sha256; cv=none; b=HIuUGMoOZZ96f+ckUJorGUxxhCQuy9/zAh6xxnghdg/tb/qELsydilrMuYYSXQAv6jsW7J nK2YSTLKmuoUL9Sa/BvvOPSs26JiZ8iI8HG+Ko0uFF7yzdlzMzSOQcHQm4AeBx4VwR6EdH kQQ4UiceMA2o1jPT8ypwnqO8oXG1/FqpHl7urYjVwLFkfnDphM1rJZ0CGl0N+yN/RjFTKE CKWPAysV7I2l7szItp8XXdyGZKROt5iLUA6GWUdp+JNEymfiAGGauPppu0iYxOE4R0HvaA nz9gOWfX/PsnudGO/8WZ4GluH/+b8xJYO//h/cjVttBYhtqeiUDCLcBb+Y2Kig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333410; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xc61ay+4uRHsWHDmbamRp7oP3hCi+cEJDLVMc/B/s2w=; b=bdJQ8v60LbKysYAMN96rCeArbblBWq47Cl8y0zlApgF0Wjrza0Jx18q26/d0wpjucYtrcp AGD1HWB9jIjpu1ZAbk8LRJboKJwPMuLdede5Jno+fsA5qNYIAJ88jFDzZyG16/jAkk/ZGa XNeEDvz2sHveoPLQQ7b7PLsoueUR//io7PNwCTWmo90oaIES45AsbHopVFIF6QzoLrLEME r2WK8OQclfPqGsU5KhTDNCENDOPFtWgJzoQx9rgIsxiIaENF6qSmKfq8IbmFEOPPEiUDlX sivHue0gAlH9VvbBcihyDUZxC7Q1AikxtjTIN7iz6tUBUskDlQNZ06dyBsY2rQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNry5BkSzX1q; Fri, 10 May 2024 09:30: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 44A9UAE8085538; Fri, 10 May 2024 09:30:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9UAGo085533; Fri, 10 May 2024 09:30:10 GMT (envelope-from git) Date: Fri, 10 May 2024 09:30:10 GMT Message-Id: <202405100930.44A9UAGo085533@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: f91e9401c209 - main - dev/psci: Check all compat strings List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f91e9401c2098ba56f43093ef9747d0b1f60f8eb Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=f91e9401c2098ba56f43093ef9747d0b1f60f8eb commit f91e9401c2098ba56f43093ef9747d0b1f60f8eb Author: Andrew Turner AuthorDate: 2024-04-23 11:27:09 +0000 Commit: Andrew Turner CommitDate: 2024-05-10 09:29:24 +0000 dev/psci: Check all compat strings When searching for the PSCI FDT node we only check a few compat strings. Use the existing compat_data array to check all strings the driver may attach to. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D44913 --- sys/dev/psci/psci.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/sys/dev/psci/psci.c b/sys/dev/psci/psci.c index e1e9c1880b54..3211c331ed6e 100644 --- a/sys/dev/psci/psci.c +++ b/sys/dev/psci/psci.c @@ -378,12 +378,18 @@ psci_fdt_callfn(psci_callfn_t *callfn) { phandle_t node; - node = ofw_bus_find_compatible(OF_peer(0), "arm,psci-0.2"); - if (node == 0) { - node = ofw_bus_find_compatible(OF_peer(0), "arm,psci-1.0"); - if (node == 0) - return (PSCI_MISSING); + /* XXX: This is suboptimal, we should walk the tree & check each + * node against compat_data, but we only have a few entries so + * it's ok for now. + */ + for (int i = 0; compat_data[i].ocd_str != NULL; i++) { + node = ofw_bus_find_compatible(OF_peer(0), + compat_data[i].ocd_str); + if (node != 0) + break; } + if (node == 0) + return (PSCI_MISSING); if (!ofw_bus_node_status_okay(node)) return (PSCI_MISSING); From nobody Fri May 10 09:30:11 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNs01JHCz5J2kS; Fri, 10 May 2024 09:30:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VbNrz68P9z4GC2; Fri, 10 May 2024 09:30:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333411; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nPVOhQjon7iAPjfaAE1j7CpZtBJ2icsQRtB10rMm2rw=; b=kvyyRTvrVEpPsRIZBYcD47O8adCLyXV1dHKnfVM4PU2q/DlpL8qIppUegw4/h23pksfdi4 vUO2jXgZZXqT3pGDtW7vFRmGd5163nx+G1zq9eJzZ1VC7A3YXoD5jbESA3UJiJwaMnWvMK frGiMavYURdtFSUMNM5/qeHqNCBhbo42tVClff75StxWndIQ2lrdmTYraqCzgn7YJpqY8B 0ZtroYnw9cRXeFuOrHdlbN0xhTslreFM9dHGYuJ83HwrAWSDRhaC1N/2AZ6AEgwOyQJBTF goHugdW7X+Mtn7wF5vYPlwysQoHIgTtAx8ivaFIc4NV+tJHHEmRkyvYyDxCITA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333411; a=rsa-sha256; cv=none; b=NWnaXvw1U9vF/hGtDPn7Cxb23fgtJZ+j83FrRRw0aqXH9KnMKJPrnlBDlyNoovQASFexgT 9SLIQSl1Vl7WEHz86zrG0F8Yb57rDImR3bYEuES2D7i/b/XkyG0V4DsV6nHXEoHQ6yN6D6 4YBIPUnIL3ZTafceS/TWLvvFszDVwuaSeVZl6JQ6vifAMz8uXgDAUp7EDf3PrVmxQ7kIQp gk/+M0Hfo2ZK8Jgf023FkUcslktqlVg6d9Ki+Qu/yi4wCT7+BJiSqPvTLhHj6+PFllISEy MqztqCExIpwGgv3q3zYrgXs/i+5+IKNnnTnh+ZJAELOWNLnK/YY4bXFPVQxwMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333411; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nPVOhQjon7iAPjfaAE1j7CpZtBJ2icsQRtB10rMm2rw=; b=hFXcrYKzI0EBXYMTUdszuSigoSr5PH8wtM2njmSPgJKpJ9RICbwZD5gsPEnIKoRl5sU13k 9slODgOYWedZzwRul+VD0vp6N/hQ/mnu+0pFz6fD9D85rnuQ5u3qki0WvKeWkjTHMuBeXj zkrabGRi2N6v1+iASJwqcwi9AKpsh52c0xF3XMFvNEchCxrtZ6sdXUMcIFekm5Z2E7s2WN jteDqR/8ClJ+9M5vKqsPSZ+xWbj6uGbWfIv1QqtQbU0jhhBhtzu15Kc1GumRvZApEMZqNR akTsmOv1I5vpaQIf7K28kGb+BZClzRuSvtIVrd9HypN6R3Tz1/zW/1EDhPFsLQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNrz5ly8zXqG; Fri, 10 May 2024 09:30: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 44A9UBAP086192; Fri, 10 May 2024 09:30:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9UB6T086187; Fri, 10 May 2024 09:30:11 GMT (envelope-from git) Date: Fri, 10 May 2024 09:30:11 GMT Message-Id: <202405100930.44A9UB6T086187@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 4ab0f5ab3fd6 - main - arm64/gicv3: Check if the hardware supports LPIs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4ab0f5ab3fd6dcd7f76c1ed1c9dc0dcd152fb64f Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=4ab0f5ab3fd6dcd7f76c1ed1c9dc0dcd152fb64f commit 4ab0f5ab3fd6dcd7f76c1ed1c9dc0dcd152fb64f Author: Andrew Turner AuthorDate: 2024-04-23 11:28:23 +0000 Commit: Andrew Turner CommitDate: 2024-05-10 09:29:24 +0000 arm64/gicv3: Check if the hardware supports LPIs Some simulators have the ITS in the DTB passed to the kernel, however it is a runtime configuration option to enable it. Check the GICD_TYPER register to see if LPIs are enabled before attaching the ITS driver. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D44914 --- sys/arm64/arm64/gic_v3.c | 4 ++++ sys/arm64/arm64/gic_v3_var.h | 2 ++ sys/arm64/arm64/gicv3_its.c | 6 ++++++ 3 files changed, 12 insertions(+) diff --git a/sys/arm64/arm64/gic_v3.c b/sys/arm64/arm64/gic_v3.c index b57dd9be48aa..0b25650b3fbf 100644 --- a/sys/arm64/arm64/gic_v3.c +++ b/sys/arm64/arm64/gic_v3.c @@ -494,6 +494,10 @@ gic_v3_read_ivar(device_t dev, device_t child, int which, uintptr_t *result) case GICV3_IVAR_REDIST: *result = (uintptr_t)&sc->gic_redists.pcpu[PCPU_GET(cpuid)]; return (0); + case GICV3_IVAR_SUPPORT_LPIS: + *result = + (gic_d_read(sc, 4, GICD_TYPER) & GICD_TYPER_LPIS) != 0; + return (0); case GIC_IVAR_HW_REV: KASSERT( GICR_PIDR2_ARCH(sc->gic_pidr2) == GICR_PIDR2_ARCH_GICv3 || diff --git a/sys/arm64/arm64/gic_v3_var.h b/sys/arm64/arm64/gic_v3_var.h index 81526e7cc15e..1c5d354ee217 100644 --- a/sys/arm64/arm64/gic_v3_var.h +++ b/sys/arm64/arm64/gic_v3_var.h @@ -102,9 +102,11 @@ MALLOC_DECLARE(M_GIC_V3); #define GICV3_IVAR_NIRQS 1000 /* 1001 was GICV3_IVAR_REDIST_VADDR */ #define GICV3_IVAR_REDIST 1002 +#define GICV3_IVAR_SUPPORT_LPIS 1003 __BUS_ACCESSOR(gicv3, nirqs, GICV3, NIRQS, u_int); __BUS_ACCESSOR(gicv3, redist, GICV3, REDIST, void *); +__BUS_ACCESSOR(gicv3, support_lpis, GICV3, SUPPORT_LPIS, bool); /* Device methods */ int gic_v3_attach(device_t dev); diff --git a/sys/arm64/arm64/gicv3_its.c b/sys/arm64/arm64/gicv3_its.c index 31a0ded6c95d..46695a415e86 100644 --- a/sys/arm64/arm64/gicv3_its.c +++ b/sys/arm64/arm64/gicv3_its.c @@ -2208,6 +2208,9 @@ gicv3_its_fdt_probe(device_t dev) if (!ofw_bus_is_compatible(dev, "arm,gic-v3-its")) return (ENXIO); + if (!gicv3_get_support_lpis(dev)) + return (ENXIO); + device_set_desc(dev, "ARM GIC Interrupt Translation Service"); return (BUS_PROBE_DEFAULT); } @@ -2277,6 +2280,9 @@ gicv3_its_acpi_probe(device_t dev) if (gic_get_hw_rev(dev) < 3) return (EINVAL); + if (!gicv3_get_support_lpis(dev)) + return (ENXIO); + device_set_desc(dev, "ARM GIC Interrupt Translation Service"); return (BUS_PROBE_DEFAULT); } From nobody Fri May 10 09:30:12 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNs11vLmz5J2kW; Fri, 10 May 2024 09:30: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 4VbNs06q8jz4GGD; Fri, 10 May 2024 09:30:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333413; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K22hxSSpSWrQo3TCO1Lkdtlce4Kf2kgdck8tZdcSqsI=; b=luYJHKgo1eudtN/mRPbSxaRQFYHBmP/CHm28gCzd71YrScQiZPS6/DR2gvtfEHuJMWXFYY /Dir3UyuBhwwJVXKVecrIiBfGe1ZiixPvLcIMpLkimy+Xke8HM8unCs5WwL/+Hcc7SrrPs N1AwzQ9i0onPDTZTPeIwn0pEbl7wLnmKiyNwVdue9zWZLSCMyReTKoDlOptZ4TKlpqQlLd aV5H7jpQpR6vOWAUapANE+DY/9uRWjjyS4bFkWfLeCw4efHlw/EruMkPXN+U0rMqeWwrdA L9z4DtWOVwTMkRqgi34/LA8OivayzXSDDgNBfxpfiBpdISBfspZYPL4aJ9hqJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333413; a=rsa-sha256; cv=none; b=gcZCZ0En+UILiM9xeG+bDTJqjfdjRm2CXxo5/wMf6mtsvjVEU8z8RrNnZ8ZOdoQallF2DE lGRJo+HzkIYphXoHAb+ckn9WogHBxMMeD3X+dwIj0f1y9meDTfYhxMhTdFNTJJlJNU+Aw6 jcLCnHKxXTSDU6/Ncr1JWb2hoMOogYqn7Rz57vfybdmkD8HrBrR2XN+haYFJbndlBxFKuA M4obPDBW1sXtaDJMyl1bbAVW7gwn3LQc9jRyHKBIpZ4S/uCj93OOP4+jiTLfiueVedGR7p RoFVdpTrWfdGsXI6sbpow/KxFebVFstbwNsrCA/GbnkyRpXmS1w9WNJ/Vyv74Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333413; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=K22hxSSpSWrQo3TCO1Lkdtlce4Kf2kgdck8tZdcSqsI=; b=D7oDdM0Wrf3zFNSTzSjlLEJz6zEvIG0GebuscSFk63sbGAl8t1tAjhDnPGtBQltovTPBD6 Zi1Vk1uwEf5VlnndPEtOhZhGB7I9ReQw9YH7GlN0VaD3a2poqPnAxQ6tfVFttoZRugHmlR yGMNpGGZVgdS7Foyi5CvovPqyT95V7wpVvaJVYsVV5hJvLtaPtpbdEKD3A29xRX6Dnyln/ WtoIufs/6A/geFplm6d8FbWlJ2F4HyLOjmoCjLyKRHDOoHLiurND7sDocbKg0VOjfGuauc kusQUZjtbgfCfNH1OL9JuZ0K6PPYCmmXYzrok04HFTsnGJzilp5aEppfETV3uA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNs06R37zXRf; Fri, 10 May 2024 09:30:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44A9UCgW086843; Fri, 10 May 2024 09:30:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9UCEv086834; Fri, 10 May 2024 09:30:12 GMT (envelope-from git) Date: Fri, 10 May 2024 09:30:12 GMT Message-Id: <202405100930.44A9UCEv086834@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 719908c81300 - main - arm64: Merge common page table creation code List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 719908c8130012234898c3602eb0c0db9af0a620 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=719908c8130012234898c3602eb0c0db9af0a620 commit 719908c8130012234898c3602eb0c0db9af0a620 Author: Andrew Turner AuthorDate: 2024-04-25 13:06:23 +0000 Commit: Andrew Turner CommitDate: 2024-05-10 09:29:24 +0000 arm64: Merge common page table creation code Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D45061 --- sys/arm64/arm64/locore.S | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S index 94a50b735bc6..67bdece402c2 100644 --- a/sys/arm64/arm64/locore.S +++ b/sys/arm64/arm64/locore.S @@ -520,17 +520,27 @@ common: * when the page size is larger than 4k, L2 blocks are too large to * map the kernel with such an alignment. */ +#define PTE_SHIFT L3_SHIFT +#define BUILD_PTE_FUNC build_l3_page_pagetable +#else +#define PTE_SHIFT L2_SHIFT +#define BUILD_PTE_FUNC build_l2_block_pagetable +#endif - /* Get the number of l3 pages to allocate, rounded down */ - lsr x10, x8, #(L3_SHIFT) + /* Get the number of blocks/pages to allocate, rounded down */ + lsr x10, x8, #(PTE_SHIFT) - /* Create the kernel space L2 table */ + /* Create the kernel space PTE table */ mov x6, x26 mov x7, #(ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK)) mov x8, #(KERNBASE) mov x9, x28 - bl build_l3_page_pagetable + bl BUILD_PTE_FUNC + +#undef PTE_SHIFT +#undef BUILD_PTE_FUNC +#if PAGE_SIZE != PAGE_SIZE_4K /* Move to the l2 table */ ldr x9, =(PAGE_SIZE * L3_PAGE_COUNT) add x26, x26, x9 @@ -539,16 +549,6 @@ common: mov x9, x6 mov x6, x26 bl link_l2_pagetable -#else - /* Get the number of l2 pages to allocate, rounded down */ - lsr x10, x8, #(L2_SHIFT) - - /* Create the kernel space L2 table */ - mov x6, x26 - mov x7, #(ATTR_S1_IDX(VM_MEMATTR_WRITE_BACK)) - mov x8, #(KERNBASE) - mov x9, x28 - bl build_l2_block_pagetable #endif /* Move to the l1 table */ From nobody Fri May 10 09:30:13 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbNs21Y97z5J2dp; Fri, 10 May 2024 09:30: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 4VbNs2068zz4G2M; Fri, 10 May 2024 09:30:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j4Vhzl4AEobK6rMkwkWU+AW0sueRJUDQvj8tOZkM01w=; b=vDl8uIjrC2cWZmkIeDYRch3QdB5BQFdeRDFKgI76OkXfIekD4vJMcFk98ldNwIxhFzcDjR KqtAlh0MumGcIn2qG1XD2Vf7xcC4gY9zvO3Pi/71ObXWpMmzl33Gsm601mgBZSn2UqHqsf YqF5rc2DedUpT5Uvol3igVuHb7uYgZCTX+HVOX2hG49nhM1M091jianFqGTiq9Ftq7pDeo 9kFP8PKfD8/QKZNZZ6c81La7Uk/sc9GqrLSKE//xytVYjFiiHFOcfJsZmuIL3LHTPYM5AI pLu8nEMPqWoSZpMqqDwR/fKyCldo1Vfv3Z8Impt5YBYmYXTqsnLMG70IFFSIxw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715333414; a=rsa-sha256; cv=none; b=VBKFHNSCwFWC61m9VJw0LbdmxhlDGL79QYVtIwa40P5Ln24nDITeq8pA5LJVbOvqwVQDM4 Rh5NAtq5lr/2jKKx75FEWIqBF9/h6NgZJLliZiEodpwdi4iQ1gDSxjXJXvEfyfzG99fV7d RFnitQVaTZxeRGZz1VTH1iS4/9UF/ZQ6G9rORnvtdRlT8+G7yRvU3Gzz2W24KFHEy/MGWq NpE/5vnP/rNO4h5ahRowGK/3vxslK1N8VohiZeAyKrCyCoJQR2KYQuBmQCD2xNRU/q4zt1 Ji4jhE0VhaniSHOjT1M5KKU+w8cFoA+sUIG0ZS8onkzrYzTlwMu92rkM+V6LqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715333414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j4Vhzl4AEobK6rMkwkWU+AW0sueRJUDQvj8tOZkM01w=; b=VYKtQrG0HLm8izGbtGBKcqANGfxaH6izXlI1MFOc+g+KaYSHSgDMqnXlxL9jWvANOYyU5s dN4f/sQilwa2r/GFBRfdlLBGotFC+OeLnzqOhTeEuduNkM1ppBmt52wMuySKoAKzI0kFmi 1mg6FtIRZNktpPN4E4QiaM/jLrPS53GAuf2xjRLouqbHza6o5zC3XTJHrGr/A/27L1X0r3 wXVXbc3h+t9dDcvVFCguckOoSxeQWRjvTfV6DTfYU5wrUuLVO8iC7wBDcQXhfnc00qNl/X 1gyZ7TNwpyf4X1p4RS8PB4F8AqpYq5Nrd6C4e/NxpceCUmv2l6SxnSCTufmZ7w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbNs16gytzXd3; Fri, 10 May 2024 09:30: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 44A9UDZI087512; Fri, 10 May 2024 09:30:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44A9UDSd087508; Fri, 10 May 2024 09:30:13 GMT (envelope-from git) Date: Fri, 10 May 2024 09:30:13 GMT Message-Id: <202405100930.44A9UDSd087508@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 634dd430b966 - main - arm64: Update the page table list in locore List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 634dd430b966405f7bd9c2d647b0d7c1281c3de9 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=634dd430b966405f7bd9c2d647b0d7c1281c3de9 commit 634dd430b966405f7bd9c2d647b0d7c1281c3de9 Author: Andrew Turner AuthorDate: 2024-04-24 10:23:42 +0000 Commit: Andrew Turner CommitDate: 2024-05-10 09:29:24 +0000 arm64: Update the page table list in locore The comment describing the page tables was out of date. Update it with the current list. Sponsored by: Arm Ltd --- sys/arm64/arm64/locore.S | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S index 67bdece402c2..f53cd365de55 100644 --- a/sys/arm64/arm64/locore.S +++ b/sys/arm64/arm64/locore.S @@ -429,14 +429,16 @@ LEND(get_load_phys_addr) * All the memory must not cross a 1GiB boundaty * x28 contains the physical address we were loaded from * - * TODO: This is out of date. - * There are at least 5 pages before that address for the page tables + * There are 7 or 8 pages before that address for the page tables * The pages used are: + * - The Kernel L3 tables (only for 16k kernel) * - The Kernel L2 table * - The Kernel L1 table * - The Kernel L0 table (TTBR1) + * - The identity (PA = VA) L2 table * - The identity (PA = VA) L1 table - * - The identity (PA = VA) L0 table (TTBR0) + * - The identity (PA = VA) L0 table (Early TTBR0) + * - The Kernel empty L0 table (Late TTBR0) */ LENTRY(create_pagetables) /* Save the Link register */ From nobody Fri May 10 11:00:09 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbQrn45fkz5JBBd; Fri, 10 May 2024 11:00: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 4VbQrn3SRWz4PqD; Fri, 10 May 2024 11:00:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715338809; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UgFINXGWRiR8EgXeSfQM8lOxTQyum6m7P8nY0JOMb5I=; b=d+QzYQ1DLaj0Fhpl7dtjXJAlboaRwRPrSeqKgY7fTA67WSQVtmitQSVR25uoXW5/XIauWD 3Zq/exjaBmge9odbOS6jrbkV3l76INIdXVjNunZhXwxkjSVN1ZMlmlXquHPNl2GGMosbSV yq6/f0CMfxkuMnaZytpJUZpvzt1GBQzQFy4FGT8Vt294V3FZDfmbGZd+Wm6DtyxMb3QPoJ LXyji0waSXK/Y3/iGofpz0Rz4fObDyFnsSlJw59u7cpiL/XU85CFMwgRTYOYm2R1pcDF0q wM32L2fml66AB5RNGXPJlqQs2Iia3QQtRq0MrA7R2QgitP5ViEXXEPkZhSen6A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715338809; a=rsa-sha256; cv=none; b=YMYUkrOdJr7MU9PS8OYRzVnqM6dmRmcSDp87njCoER0iPTuJuI7swUUodksa2Brk6zCAif Gcz5J39ZkHdo80M+miGW2geNhebjJwsBjPeM7lq4rKDUHWJDOSgeEHSJi6RmbaAO2mwo5y cpWlnftEsgS40QxStg3QB8v2XWmubFC0y+lZgx0WDCIKlRLAI/jDK7Zb5Dc3DW3i4qdyOH leavgPtj6JYI5UGCk6RHEn3cP9WQK2pp+y0oaaI3Nzz8Cg9vbnbhddleLPOTV1avp4N5KN IM0hCq5YDWOrAz+1GEMRYq417xah57AAbwXa01zkA121cSucccgNfcJV0/2G2A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715338809; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UgFINXGWRiR8EgXeSfQM8lOxTQyum6m7P8nY0JOMb5I=; b=DkADMrFJ74yi737x7R/wxFmZWXNMDCN2BC+pu7iLSnkuQTSu4gZuAb6PhBIHmhcnjuNtCB ZHyWeKVU3ORns6mVgN7Bc7Qg9vkYkuWI5SboyXTpA1bMdMdhVdMzR0hTFR8DiODpO+LOkn zCUGwFyk8f5OS5nL8+dJ7o75zNuKzCrSEzpdNy4giZrmPvaCKm77OxEYMhFKzNg26zz74w w+BjGeYAwtOrlwEJTCqrG7ldjlf5IAJ05IYmSqqos+UEiAtt3jA040Ar4b0GIRexgcgGTl Tz2+tyzGBzQbPSKI7z+qKZ8J2EjCs6UFIBt8ebjBudMFYxz6VgnvkEXrInYByg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbQrn34mjzZfc; Fri, 10 May 2024 11:00: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 44AB09jA037017; Fri, 10 May 2024 11:00:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AB09vj037010; Fri, 10 May 2024 11:00:09 GMT (envelope-from git) Date: Fri, 10 May 2024 11:00:09 GMT Message-Id: <202405101100.44AB09vj037010@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: c6f9df706410 - main - cat: Check for lack of success rather than a specific failure. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c6f9df7064106a3b016c13ea3b9a930362b53089 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=c6f9df7064106a3b016c13ea3b9a930362b53089 commit c6f9df7064106a3b016c13ea3b9a930362b53089 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 10:59:18 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 10:59:30 +0000 cat: Check for lack of success rather than a specific failure. MFC after: 3 days Sponsored by: Klara, Inc. Reviewed by: oshogbo Differential Revision: https://reviews.freebsd.org/D45149 --- bin/cat/cat.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bin/cat/cat.c b/bin/cat/cat.c index 5dceb1cad94b..5db2781e9912 100644 --- a/bin/cat/cat.c +++ b/bin/cat/cat.c @@ -198,7 +198,7 @@ main(int argc, char *argv[]) stdout_lock.l_start = 0; stdout_lock.l_type = F_WRLCK; stdout_lock.l_whence = SEEK_SET; - if (fcntl(STDOUT_FILENO, F_SETLKW, &stdout_lock) == -1) + if (fcntl(STDOUT_FILENO, F_SETLKW, &stdout_lock) != 0) err(EXIT_FAILURE, "stdout"); } @@ -266,7 +266,7 @@ scanfiles(char *argv[], int cooked __unused) #endif } else { #ifndef BOOTSTRAP_CAT - if (in_kernel_copy(fd) == -1) { + if (in_kernel_copy(fd) != 0) { if (errno == EINVAL || errno == EBADF || errno == EISDIR) raw_cat(fd); @@ -500,12 +500,12 @@ udom_open(const char *path, int flags) switch (flags & O_ACCMODE) { case O_RDONLY: cap_rights_clear(&rights, CAP_WRITE); - if (shutdown(fd, SHUT_WR) == -1) + if (shutdown(fd, SHUT_WR) != 0) warn(NULL); break; case O_WRONLY: cap_rights_clear(&rights, CAP_READ); - if (shutdown(fd, SHUT_RD) == -1) + if (shutdown(fd, SHUT_RD) != 0) warn(NULL); break; default: @@ -513,7 +513,7 @@ udom_open(const char *path, int flags) } cap_rights_clear(&rights, CAP_CONNECT, CAP_SHUTDOWN); - if (caph_rights_limit(fd, &rights) < 0) { + if (caph_rights_limit(fd, &rights) != 0) { serrno = errno; close(fd); errno = serrno; From nobody Fri May 10 11:06:18 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbQzv1KBjz5JCd0; Fri, 10 May 2024 11:06: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 4VbQzt6Pn5z4QfQ; Fri, 10 May 2024 11:06:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715339178; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=56PPQfng8GLnzuuk5Ft67Xo8Ez1FhnjoS2N0AXeSdJw=; b=R5nmYtQqeBP4te0EdEfg7ZfHVl+XdROc8DIuUYAtMcp1TonoiDwggGWTMhIEHVkVdph+rz WsEFzT/TAnsUaJfSgdIUq2XM1NJCPGpUmV2aN5mZ8FN1dEona0n25PT+kpI3eaW5kpSEaK VAOnGLd0smQUVGbPXvKebB1uGaFTrmnp0WfufqBiATypVKzSmdUWYED9sW7l42FFAOz5/A 9IYpDKV9Q8AuIJwC0UOBLI+QbTG0zlCrhgHBcer3R41MkO6MiMMJ7aPd7wfJbHpF2PJZWe FyU0lKjizOIKNMNcPE53tT+jThxORXh0JxEopkDk4WhsMkSxk6S8Q7IKiK4gew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715339178; a=rsa-sha256; cv=none; b=fnLeBW6eO4rYzaUs1AC3ckeRSi1NATmBgVXqQDiVxBCUxl0cBcoCUNp+Ma/wFrJoVr+8JO QOYtS0GM+obp02aqdXqghxgeVGMKGrnMpFMkfNumDYlZXuAlFOeZEcJEGNeJUC6eHw9Igt lHsa701jkqiGVXmYZKQ396LQL5AWMLxFaxieSDRxHmM+pJmii3Do0TsdofHUeKskgLfzmE RaZmyFwa+Uy9ioJ/LAj9Jgk4Y+8yo92pZwEdEJUMZcW7pRa45d+GwrNElsWe3H4cq3pBC0 dbHpaiXuLHuc3xICMFOxR1byYutHPK/qsRwUMv5bRdPLgWluG9P3MIjKweEPVQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715339178; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=56PPQfng8GLnzuuk5Ft67Xo8Ez1FhnjoS2N0AXeSdJw=; b=wVI1vVaUh6bWY1Txwv9OMOVgR+k6Cve/HEER0flHA1UejLTUV23E2mW9NOVSt97IZ0IJ03 AxBLWAROVvDNuV6EhifrIxe8bf2mr7J6QIvzNgmr2pI4WgwxhybWAfa9JE9ovvKbHYpdL4 incUAilwCMTRZfZGZVkpqcCbX78dXVa4KTxrALoJpYfdUgI5OJLhRuuv67AoBfIf+77VYA Tj/Yawg+0ZjK35ApW8v3xqJ9y54sWNEVthvkdhsuLYxz+j+yfsHnTlAUFkod4KOYl0iT+x rNruebuNVmxRzXHVet2+IrdRR50QpNPYxeqvlfrFiRx+rtoyp8npGUJpxfwBWA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbQzt61krzZg5; Fri, 10 May 2024 11:06: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 44AB6IKJ049847; Fri, 10 May 2024 11:06:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AB6I9E049844; Fri, 10 May 2024 11:06:18 GMT (envelope-from git) Date: Fri, 10 May 2024 11:06:18 GMT Message-Id: <202405101106.44AB6I9E049844@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: ad4f3bdf733c - main - cat: Missed a couple. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ad4f3bdf733c1a670021f4db378338f5aaedbfd8 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=ad4f3bdf733c1a670021f4db378338f5aaedbfd8 commit ad4f3bdf733c1a670021f4db378338f5aaedbfd8 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 11:04:56 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 11:05:45 +0000 cat: Missed a couple. MFC after: 3 days Sponsored by: Klara, Inc. --- bin/cat/cat.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/cat/cat.c b/bin/cat/cat.c index 5db2781e9912..3e7974e5f334 100644 --- a/bin/cat/cat.c +++ b/bin/cat/cat.c @@ -125,7 +125,7 @@ init_casper_net(cap_channel_t *casper) familylimit = AF_LOCAL; cap_net_limit_name2addr_family(limit, &familylimit, 1); - if (cap_net_limit(limit) < 0) + if (cap_net_limit(limit) != 0) err(EXIT_FAILURE, "unable to apply limits"); } #endif @@ -206,7 +206,7 @@ main(int argc, char *argv[]) caph_cache_catpages(); - if (caph_enter_casper() < 0) + if (caph_enter_casper() != 0) err(EXIT_FAILURE, "capsicum"); if (bflag || eflag || nflag || sflag || tflag || vflag) @@ -471,7 +471,7 @@ udom_open(const char *path, int flags) errno = serrno; return (-1); } - if (caph_rights_limit(fd, &rights) < 0) { + if (caph_rights_limit(fd, &rights) != 0) { serrno = errno; close(fd); freeaddrinfo(res0); From nobody Fri May 10 12:53:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbTMq3HNHz5JP2T; Fri, 10 May 2024 12:53:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VbTMq2nddz4YkL; Fri, 10 May 2024 12:53:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715345623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lxtwy+gJlT7JzpzQxDhQt969MPB78GxoC+dOvLiwFgs=; b=ESqYetKuq8hNk2ukHP/9pb2R7aiHWUf/ztnklznwF9JlHjzPYId+E/CG+hLxwNu7NbQXXn tpUGdVm7PlIybwH3FFR2/gyTRi24ZvUjilcXzEaUMhaPbbKUoztZKjeZ3uCFqCjB4EpS0t UGsmeQJ8mWrfBqK53lGpUWdEVWINDKXiXWusQ5PvTYtoxY3TZHUqk96juD1CrmvCuqNOWH JldCpDZMqcaihJ1bdquthvs/AC87CGn3LFOoq3Qvm8vTVdD7nQSdWjeelq4VV76zWeRcgb u2NgpOBsqfGt8kJZNKw99RJBIVI5O+EyKXzwgzV0AdaXlBucpdvjQj4daik5uA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715345623; a=rsa-sha256; cv=none; b=he98WRO4vXrOqxGJKTfm90wXgmEd730uLFp0RsRK/esXLs/uIKMvmyfUfHNvkKEDl7j57p dmqiWD77VWAgee9qm6Kn8jPE4hldqGCxTqbHAhXvWnMiMiwUIA75rM6yomXHSQQL0VhF0u pFkLuvZ2DjRCxTkPurriy7i09S5xYoxqe2DW/7mkDJQPztqDyn9tEK88nWL8AyUWcNcKKh MzYOWF3NXCsfwTPgbaRyCeoGPMZk42G412iQ51F1vMhDz9HffZqERKqGFfXfuBi/7+lk4a 7nlPyOfOEYDL+KZgpzsGRXfXRBCGXYG0oAG6OrGPXAvz2aF6iktW/GwCbkQ9Cg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715345623; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lxtwy+gJlT7JzpzQxDhQt969MPB78GxoC+dOvLiwFgs=; b=E2FeMl7/W/iKyGrsda6/DgBROKCaczCe44ZWmqA+JtpXKCMl5knK4XAItUU+QDzP34hX+8 rLA9CHfSE7Mg8wOMxVAKAPO9bwWzyhTXiYQFNIkoyJ3HIyaFonn2tRNeofYuWHLO90rYod 3GMOE5loB43Jri3vCCWLPp/ik/iO3mHdkk8K8ZyLFXZgILl+bJ8ifN9buYu3sH6QETnSqI P+SbJIzJVAZT6C3LFbFnoIz/7WfqH+5N1JncaWR2C6fVDZhoAkbzQQWkjrNf4nAfHscSn8 YcW0exF3WWtoOtr0aQ0WuJ6N/sRmS6K7CcG8lYH3EcVeb++FtXyoYqd+17JSWQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbTMq2P65zf5X; Fri, 10 May 2024 12:53: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 44ACrhuv033449; Fri, 10 May 2024 12:53:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ACrhfq033446; Fri, 10 May 2024 12:53:43 GMT (envelope-from git) Date: Fri, 10 May 2024 12:53:43 GMT Message-Id: <202405101253.44ACrhfq033446@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 2e0c027e69de - main - ukswitch: fix non-debug build List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2e0c027e69de66afc1157c76bd42ecd3737d54e1 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=2e0c027e69de66afc1157c76bd42ecd3737d54e1 commit 2e0c027e69de66afc1157c76bd42ecd3737d54e1 Author: Ed Maste AuthorDate: 2024-05-10 12:52:06 +0000 Commit: Ed Maste CommitDate: 2024-05-10 12:53:15 +0000 ukswitch: fix non-debug build PR: 278847 Sponsored by: The FreeBSD Foundation --- sys/dev/etherswitch/ukswitch/ukswitch.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/etherswitch/ukswitch/ukswitch.c b/sys/dev/etherswitch/ukswitch/ukswitch.c index 6eff37bb118e..88726422bd01 100644 --- a/sys/dev/etherswitch/ukswitch/ukswitch.c +++ b/sys/dev/etherswitch/ukswitch/ukswitch.c @@ -514,7 +514,7 @@ ukswitch_writephy(device_t dev, int phy, int reg, int data) static int ukswitch_readreg(device_t dev, int addr) { - struct ukswitch_softc *sc; + struct ukswitch_softc *sc __diagused; sc = device_get_softc(dev); UKSWITCH_LOCK_ASSERT(sc, MA_OWNED); @@ -526,7 +526,7 @@ ukswitch_readreg(device_t dev, int addr) static int ukswitch_writereg(device_t dev, int addr, int value) { - struct ukswitch_softc *sc; + struct ukswitch_softc *sc __diagused; sc = device_get_softc(dev); UKSWITCH_LOCK_ASSERT(sc, MA_OWNED); From nobody Fri May 10 14:36:14 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbWf71t1Hz5JZGK; Fri, 10 May 2024 14:36: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 4VbWf70mpQz4kpC; Fri, 10 May 2024 14:36:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715351775; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WYIkoRsYsSrptJa8gdFJ6cKfokChaGZKfjqBUbcN0kI=; b=va6WJofQ8vtW7VvGyIG9VbbqKsjkINxec5nj2xKnk4WY3X379BtZDEMp/wCxVvgmka6S7H nInBD7I4210ym7KQQ6tXPgDcodFce5psvQ7NQN17tk61ThOXRF1Ga6x7jUlcWTHFrmocW5 I+vt7VUQRB9c2MnTM92iJRBYwqkwti+jWqi0aL075nQKVN483x3fPhgPYzqXlQ6LBI86Gs uN1HA+ag/UzEcKCq6sRk4NTTT5m0Eh+pjZZGamAPjBktl1qlnZVoXMhWFv4vEFKNs/r4XB TOIkpWrglRPfyQ5ZphnsJgHlQAuHnIdwcYxRBLsIcSaWP+kssAMCUKMPSVzLTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715351775; a=rsa-sha256; cv=none; b=oR2xGJcoRvWaw2cEgobRm2n/zy7WZmKw8u8IxsiKAGJxISZWDc/NolMkac/F1ypRgQmX3L k3V5yXTZSgsp8bsfHZv14Z69LPc8r6VRfJqnbPERl2asneTCkljrKybtygQEmf/52CJEJP f0HFzlgE8d2vMgXsRUwUF3qm0HZE3wcgPkb0bwoE6z9Dnx1wY6jPHOeNrZsWJGRM47EyH9 tcCiKmuGVf4EVWXZ/d0RD4J3BXTGa3TS7g2nEuMB2ouEDO81SKWwzCjwGwpPfB+ilLB6sj FL0588tAXd29p3XfjMDPIBcCE+KjNF642YUa1NfRPQzMi+f6n+lRkL7rPHS/Ig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715351775; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WYIkoRsYsSrptJa8gdFJ6cKfokChaGZKfjqBUbcN0kI=; b=o+f5ryPWvRwI40ILeyP0/KLSsxCBvb6m5Kwql41QcTS3TH+/8ySFAd0/bE9S1l2exkmq3h vHbj/Uc3afbboxB0L3mdVoi5vIYrriBdUiiMwZnYZw2jcjzs1IJdFe6NvTutPxm/xXZFUn 8Q1dZ1FBAIcVQ9O9tnlom4Fp+S3nuzbnPV5T7U3KmlLvQyfwiYXRbhsnUMiUasMfzTUXNb lojNVrIeRZZ5d7C7EYG37jqg9VkwtxBZiOsSwZiTrb0UAWApIaSCDlfUl2Vw5WMGMKi2Dd pODLy//hlpElHZNo77f6Jw3029XjoDreQvaAPYxg/T3GxGsZhG07hfKGbOrDtA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbWf70NpZzh3L; Fri, 10 May 2024 14:36: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 44AEaE9O003799; Fri, 10 May 2024 14:36:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AEaEc8003796; Fri, 10 May 2024 14:36:14 GMT (envelope-from git) Date: Fri, 10 May 2024 14:36:14 GMT Message-Id: <202405101436.44AEaEc8003796@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: de1ac9462f31 - main - conf: Generate fdt_static_dtb.h in OBJDIR List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: de1ac9462f31956a98e9953009f02a0e39eed283 Auto-Submitted: auto-generated The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=de1ac9462f31956a98e9953009f02a0e39eed283 commit de1ac9462f31956a98e9953009f02a0e39eed283 Author: Justin Hibbits AuthorDate: 2024-05-09 19:46:09 +0000 Commit: Justin Hibbits CommitDate: 2024-05-10 18:35:50 +0000 conf: Generate fdt_static_dtb.h in OBJDIR Though the kernel build expects ${.OBJDIR} to be equal to ${.CURDIR} that may not always be the case. Correctly generate fdt_static_dtb.h in ${.OBJDIR}, which is conceptually more correct anyway. Obtained from: Juniper Networks, Inc. --- sys/conf/files | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/files b/sys/conf/files index 7fd79bb0345d..56c92f51947f 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -19,7 +19,7 @@ bhnd_nvram_map_data.h optional bhnd \ no-obj no-implicit-rule before-depend \ clean "bhnd_nvram_map_data.h" fdt_static_dtb.h optional fdt fdt_dtb_static \ - compile-with "sh -c 'MACHINE=${MACHINE} $S/tools/fdt/make_dtbh.sh ${FDT_DTS_FILE} ${.CURDIR}'" \ + compile-with "sh -c 'MACHINE=${MACHINE} $S/tools/fdt/make_dtbh.sh ${FDT_DTS_FILE} ${.OBJDIR}'" \ dependency "${FDT_DTS_FILE:T:R}.dtb" \ no-obj no-implicit-rule before-depend \ clean "fdt_static_dtb.h" From nobody Fri May 10 15:25:25 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbXks5L4Nz5JfZZ; Fri, 10 May 2024 15:25: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 4VbXks4rY3z4qHT; Fri, 10 May 2024 15:25:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715354725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tm3EdA1Sm3epMAOCmGx0mM2ObpMiOPKRcBGsOOEq1/w=; b=bUstaUC7gNwV4mv1SfRrhGnoJ7BCYogVxtIJc82medL2ckd1fRriJPpAN4SWOOACDE0yx2 ExUZ+PtH4qESOjEO+tnV41sHbMeu8pGxZNpfNJsKpFWMit6tOoteXNSh+I+p+XVR45M2jy 6kuXPjko1sPmyspyX9n8ZpIw7eJtENwL34YV0HVnyjTe9nxiyfGiEmyY5Me6COJrsDhsnG d5IC3uO6VaqgnS40zJWMy27uMM0K5B1dqIotQgETBWEy/7/7AYwWj+dotcB3+TFW6uQt8H +9n+MUx4WXgEFya5V2C9LR6ApK6ydwCsSK4ggl5h7M+YfirAzeJfPfm9gDVX3A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715354725; a=rsa-sha256; cv=none; b=bLCO/TYSqCmSwVoE8w12BJMdkSGTM5IuwgpVumrjRaIRJ8TVgEjyBkeYug5j89OwEX1jXk z6YRZtKcZPJxNHLG3a6HRMp+z9E6FF3EpvUDnOLtYuBeLBRbcV4HL0iIUtaKlhdWqSelVM yTjygwZIPvGjWt7iUSqC71rMj89LbvJsRY0ZMq8zMD8faxNVCoseeU3qZ+EInH2lsFW9AN vGFfDxYB7XYCmspavKNw0kCn7okoC6YAG/b82n5EgQdyuF5XwkFRxXGHnhJCfOlAQ8dM8w gKbwXTogaYF4W3ZmrtECbbUWIGxHZIO+qqANpd2zK8rcP9WRwEg/7h5JsCHT+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715354725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tm3EdA1Sm3epMAOCmGx0mM2ObpMiOPKRcBGsOOEq1/w=; b=jDwdQXvIH9LKgWO0vn+kFVfuqbaTAkBQsC3io1bNedn+dLpsTKkVHnYNAzpKW3jB7FkAS2 DQWDUE/HMrNH6jhxpYwYxrbK1zmxV+Hdn9Ujvc/IDDlJRUctuj1Z53T2oVPTJM40rXtWKB 5zXGXh49NeGa1HeBX3VJQ4KJXuLkeyCWZS1VWdAONo4Vp62ZHoV+WECXoaianCUDIq54qh ECsq53bMnIlWXoSBjMPIn5FYJRVF8puitbMCtOmqLjjcnY7cliaAkrIy52iEUe0hGM529a i5166lJo3sFGcCeypGZ5CkAD121CNDQhjUP8MLNRH3TbBbyCkCWVhBTIKSeO0A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbXks4Ss6zjgq; Fri, 10 May 2024 15:25: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 44AFPPF4087793; Fri, 10 May 2024 15:25:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AFPPIe087790; Fri, 10 May 2024 15:25:25 GMT (envelope-from git) Date: Fri, 10 May 2024 15:25:25 GMT Message-Id: <202405101525.44AFPPIe087790@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 06af7bd12a4a - main - posix: POSIX-1.2008 moved SA_* from XSI to base standard List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 06af7bd12a4a654f5c5e8da41cf329eee3aa61f6 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=06af7bd12a4a654f5c5e8da41cf329eee3aa61f6 commit 06af7bd12a4a654f5c5e8da41cf329eee3aa61f6 Author: Warner Losh AuthorDate: 2024-05-10 15:18:43 +0000 Commit: Warner Losh CommitDate: 2024-05-10 15:20:21 +0000 posix: POSIX-1.2008 moved SA_* from XSI to base standard Starting with POSIX-1.2008, "The SA_RESETHAND, SA_RESTART, SA_SIGINFO, SA_NOCLDWAIT, and SA_NODEFER constants are moved from the XSI option to the Base." Make them so visible. PR: 275328 Sponsored by: Netflix --- sys/sys/signal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/signal.h b/sys/sys/signal.h index 113b5aaa9fa1..c0b65c0c9ef0 100644 --- a/sys/sys/signal.h +++ b/sys/sys/signal.h @@ -372,7 +372,7 @@ struct sigaction { #define SA_NOCLDSTOP 0x0008 /* do not generate SIGCHLD on child stop */ #endif /* __POSIX_VISIBLE || __XSI_VISIBLE */ -#if __XSI_VISIBLE +#if __XSI_VISIBLE || __POSIX_VISIBLE >= 200809 #define SA_ONSTACK 0x0001 /* take signal on signal stack */ #define SA_RESTART 0x0002 /* restart system call on signal return */ #define SA_RESETHAND 0x0004 /* reset to SIG_DFL when taking signal */ From nobody Fri May 10 15:25:26 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbXkv10pgz5JfPr; Fri, 10 May 2024 15:25: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 4VbXkt5rw2z4pvy; Fri, 10 May 2024 15:25:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715354726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cAS8kbTDNMIfUwp5frt0HljXRXX4cr6NzlXIZbjaEBg=; b=n7E+Ae//SImXlgSyf/hVEBkhTHroj4U59A2otohiX2od2XRLFe40nbQhMSkBLkEwlBwlDx 8xVv9Wn3UIWXEUTPzzu4LXRzPUAF7q1KP091Gwv/SJRZBL+oYaQ8DxZG2yGc3RD7cIgKtS kV/axSRCAv4fjlc2/Tl039xhLSHjhcN8aIm2dl7bDIK7Pc458FPhRCK2kOaSjPzY0nyP38 9MOMw5SDV/eKcKVF7wlK1egXICGwxAu2gfNklsfYH/Ez57JeABEl4npAfJ4goaDLQ4px9K u7tUXORNPz4t8tkcEeoGWMB2PyDPDznHFgS+YmmelF5rdf6ec2Th0TPCSp+tUA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715354726; a=rsa-sha256; cv=none; b=oWezpaZ22e6I8402sM2KXaeqirh/1QAeEHy9ixhQvJfXhBTiUET1UZIcMJZqpSMnXZWYqp XYSJPr73K2cfbhk29jiTVgSbJ8V6KCkWh3o3jjJXgzncYUExISZOGOLw3/Zrvz+KtKX4op Fre3yI8Nk/XVhVFPWdbx0fBQtgyKqoEuSR5+6MvOPVe9W6NcDbOCumaH5TKEYWLBN6/XUw Ak6SDdaZZMPOzfRQ3zKjkRv9o3xK4hAFDcC0HUGkz6jCcfxiCgMLUe3tfeyyIGwEhj9/My eV+QMgLHHyVxlylHRybsL5j+bICnmgTCmN9G4VGctbRkzKDpaFxte84HyO6xIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715354726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cAS8kbTDNMIfUwp5frt0HljXRXX4cr6NzlXIZbjaEBg=; b=iMDl+xh6ElenNsHNWcTwMaofwS6buPgWpFlanCyIKXgPlEhDkmoY+rDPjIbGy284933CEi VoB7mYmNId1rt3OafYaelcuBzp1MWcVJbCP9dLQQvDm9McLK+bKhOgQZd6W7qMRCo9tJZV JY5A4CELSh/dzaDG6DuEl6UGybra7xv/G85HVkBC99OwOZoaCnqogjFIzO+Pa1aatf440t YShz+HGj3E49vQDg0lNSHhTWRIFbcrVqfyTCmxprR6JWK70iBJ4lYRJkaGhCziOIyfYORY 0wlsEWdL3Zn6O2YMaellGuc6EdWOZRmq9Zs02cADvsEIkb/9CKPkAyBDuzKXlQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbXkt5SDKzjGW; Fri, 10 May 2024 15:25: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 44AFPQkX087839; Fri, 10 May 2024 15:25:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AFPQTF087836; Fri, 10 May 2024 15:25:26 GMT (envelope-from git) Date: Fri, 10 May 2024 15:25:26 GMT Message-Id: <202405101525.44AFPQTF087836@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 71ed1adda83d - main - grdc: add countdown timer mode List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 71ed1adda83dfaa5d1a2482341b47bd7919498e3 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=71ed1adda83dfaa5d1a2482341b47bd7919498e3 commit 71ed1adda83dfaa5d1a2482341b47bd7919498e3 Author: Gavin Atkinson AuthorDate: 2024-05-10 15:22:38 +0000 Commit: Warner Losh CommitDate: 2024-05-10 15:22:38 +0000 grdc: add countdown timer mode PR: 35113 Differential Revision: https://reviews.freebsd.org/D43463 --- usr.bin/grdc/grdc.6 | 19 +++++++++++- usr.bin/grdc/grdc.c | 83 ++++++++++++++++++++++++++++++++++------------------- 2 files changed, 71 insertions(+), 31 deletions(-) diff --git a/usr.bin/grdc/grdc.6 b/usr.bin/grdc/grdc.6 index 3c9660055e2b..7420c8ecbe8b 100644 --- a/usr.bin/grdc/grdc.6 +++ b/usr.bin/grdc/grdc.6 @@ -1,4 +1,4 @@ -.Dd September 25, 2001 +.Dd January 15, 2023 .Dt GRDC 6 .Os .Sh NAME @@ -8,6 +8,9 @@ .Nm .Op Fl st .Op Ar n +.Nm +.Fl c +.Ar n .Sh DESCRIPTION .Nm runs a digital clock made of reverse-video blanks on a curses @@ -17,6 +20,11 @@ With an optional numeric argument it stops after .Ar n seconds (default never). +The clock can act as a countdown timer with the +.Fl c +flag, +.Ar n +specifies the number of seconds to time for. The optional .Fl s flag makes digits scroll as they change. @@ -37,8 +45,17 @@ for more information. If this variable is not set, the time zone is determined based on .Pa /etc/localtime . .El +.Sh NOTES +In countdown timer mode, the specifying of +.Fl n +> 360000 seconds (100 hours) will lead to the counter displaying +incorrect remaining time, however it will time correctly, and +display correctly when the remaining time becomes less than +100 hours. .Sh AUTHORS .An -nosplit .An Amos Shapir , modified for curses by .An John Lupien . +Countdown timer mode by +.An Gavin Atkinson . diff --git a/usr.bin/grdc/grdc.c b/usr.bin/grdc/grdc.c index e2a694ebc461..07d12f5a7fb0 100644 --- a/usr.bin/grdc/grdc.c +++ b/usr.bin/grdc/grdc.c @@ -1,12 +1,15 @@ /* * Grand digital clock for curses compatible terminals * Usage: grdc [-st] [n] -- run for n seconds (default infinity) - * Flags: -s: scroll + * grdc -c n -- countdown n seconds + * Flags: -c: Countdown timer mode + * -s: scroll * -t: output time in 12-hour format * * * modified 10-18-89 for curses (jrl) * 10-18-89 added signal handling + * 02-18-02 added countdown timer mode * * modified 03-25-03 for 12 hour option * - Samy Al Bahra @@ -26,6 +29,7 @@ static struct timespec now; static struct tm *tm; +static struct timespec end; static short disp[11] = { 075557, 011111, 071747, 071717, 055711, @@ -59,18 +63,19 @@ main(int argc, char *argv[]) int i, j, s, k; int n; int ch; - int scrol; - int t12; + bool scrol = false, t12 = false, timer = false; + int hour, minute, second; - t12 = scrol = 0; - - while ((ch = getopt(argc, argv, "ts")) != -1) + while ((ch = getopt(argc, argv, "cst")) != -1) switch (ch) { + case 'c': + timer = true; + break; case 's': - scrol = 1; + scrol = true; break; case 't': - t12 = 1; + t12 = true; break; case '?': default: @@ -80,7 +85,7 @@ main(int argc, char *argv[]) argc -= optind; argv += optind; - if (argc > 1) { + if ((argc > 1) || (argc == 0 && timer)) { usage(); /* NOTREACHED */ } @@ -95,6 +100,9 @@ main(int argc, char *argv[]) } else n = 0; + if (timer && n == 0) + return(0); + initscr(); signal(SIGINT,sighndl); @@ -107,7 +115,7 @@ main(int argc, char *argv[]) hascolor = has_colors(); - if(hascolor) { + if (hascolor) { start_color(); init_pair(1, COLOR_BLACK, COLOR_RED); init_pair(2, COLOR_RED, COLOR_BLACK); @@ -118,7 +126,7 @@ main(int argc, char *argv[]) clear(); refresh(); - if(hascolor) { + if (hascolor) { attrset(COLOR_PAIR(3)); mvaddch(YBASE - 2, XBASE - 3, ACS_ULCORNER); @@ -139,28 +147,42 @@ main(int argc, char *argv[]) } clock_gettime(CLOCK_REALTIME_FAST, &now); prev_sec = now.tv_sec; + if (timer) { + end = now; + end.tv_sec += n; + } do { mask = 0; - tm = localtime(&now.tv_sec); - set(tm->tm_sec%10, 0); - set(tm->tm_sec/10, 4); - set(tm->tm_min%10, 10); - set(tm->tm_min/10, 14); - - if (t12) { - if (tm->tm_hour < 12) { - if (tm->tm_hour == 0) - tm->tm_hour = 12; - mvaddstr(YBASE + 5, XBASE + 52, "AM"); - } else { - if (tm->tm_hour > 12) - tm->tm_hour -= 12; - mvaddstr(YBASE + 5, XBASE + 52, "PM"); + if (!timer) { + tm = localtime(&now.tv_sec); + if (t12) { + if (tm->tm_hour < 12) { + if (tm->tm_hour == 0) + tm->tm_hour = 12; + mvaddstr(YBASE + 5, XBASE + 52, "AM"); + } else { + if (tm->tm_hour > 12) + tm->tm_hour -= 12; + mvaddstr(YBASE + 5, XBASE + 52, "PM"); + } } + hour = tm->tm_hour; + minute = tm->tm_min; + second = tm->tm_sec; + } else { + n = end.tv_sec - now.tv_sec; + if (n <= 0) + break; + hour = (n / 3600) % 100; + minute = (n / 60) % 60; + second = n % 60; } - - set(tm->tm_hour%10, 20); - set(tm->tm_hour/10, 24); + set(second % 10, 0); + set(second / 10, 4); + set(minute % 10, 10); + set(minute / 10, 14); + set(hour % 10, 20); + set(hour / 10, 24); set(10, 7); set(10, 17); for(k=0; k<6; k++) { @@ -266,6 +288,7 @@ static void usage(void) { - (void)fprintf(stderr, "usage: grdc [-st] [n]\n"); + (void)fprintf(stderr, "usage: grdc [-st] [n]\n" + " grdc -c n\n"); exit(1); } From nobody Fri May 10 15:25:27 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbXkw1sdPz5JfJw; Fri, 10 May 2024 15:25: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 4VbXkv6PzSz4pw3; Fri, 10 May 2024 15:25:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715354727; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SOl//iSqTA9fd5Q5BlZpBGIN+e7eUlV67iwWokMOU1w=; b=PaBDmB5HnObEH6B+Fg1MjIfB4Z9k0PWFdHzdl6rFxNLCK6iQUVNG+JHm+YI3J5/ULiJhf7 TL3/8b2uuWXCMJgBFTCSaesIC3Ns9u6lzNbclCM7kwnlyXTZWb8dnK+bBfTMRhHcdnnxq2 k7vrTDmutaVb2bfwcnrhPbOy33eUmtrl/SPeszZlVcPOl3TwwZF/6jCxTXdk7PkGV2pBsM Jy80KFIKJz4BNzo22funCXoLkt9aSuBvuFBZoGMcRJGms+3axdNTNpA7aZA5G4l5C5VjbB /w+gkvjxAH3J7pQy9QjxTZBy5BUySJzbEESoM6CcwPUo9XnsEaYo9UdEGIQlTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715354727; a=rsa-sha256; cv=none; b=Ivo6NrvCpJzv6gHeeJJI+zaROQqISNvmfJE2OFedEnte8OQxDETDTIBWJOewg7SZVBUk0l zkPVzTWheC0Ls2Qy0avya/eW4egkd5o8ZudZ+kwv+OBceaP5/+x0ZJSU1DB6EToO8EfOVJ LuqAoQxDeBA+pfyOHIHiMgk7LMbZcf3mxVIa4lU37com2EGWCUCtB+FRagdUy6aijZDT6m b4RBuI7jkz2HjtAoUjBqGtZ9VOZo1nPl83W7BZqeqtTM+XuonngpGq3yaq9VZFFcx6tG3S QUYon+d+1XCubznPyU0hWW5UTNgJDv+4FPN1bcv7xu48x89zOCIiCAn85/oV2w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715354727; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SOl//iSqTA9fd5Q5BlZpBGIN+e7eUlV67iwWokMOU1w=; b=Az8OxjI4d4CP/9gU1HZd2IYq2RynhZe4zPhtkjsVPARgBrwYq+MbKOz8sUpOZtGqVJKYfp /ZSVuRXkb9EBorWy+YeCAk9MV1ZSzwZ0e0fVv0Ow2SjevL3yuXywbsPmH0VSZ5/GXpVwdA P8isc1tm3biQWAY/ng8E2gEJ9GGRAXRhxUKl6eefhbcV+ZFFBWUL5EndHWWruc48qchYIY 3zaFIPK90y3WojJP/7Y5eRT5bL5LME+fPgKSwuDYg7KkcfzMS2IchLUtjuPu47sB0k4WAk GQvwhQOpLEoEmhb7JyPGBgieCcxedjb3LzeglhNn56Agn2SAIeTqWXyeANrPSw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbXkv6201zjkB; Fri, 10 May 2024 15:25: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 44AFPRh2087875; Fri, 10 May 2024 15:25:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AFPRGJ087872; Fri, 10 May 2024 15:25:27 GMT (envelope-from git) Date: Fri, 10 May 2024 15:25:27 GMT Message-Id: <202405101525.44AFPRGJ087872@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 6ed7d0e3ac9c - main - grdc: Add copyright List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6ed7d0e3ac9c34fa9deeb73f2322b9f25b708788 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=6ed7d0e3ac9c34fa9deeb73f2322b9f25b708788 commit 6ed7d0e3ac9c34fa9deeb73f2322b9f25b708788 Author: Warner Losh AuthorDate: 2024-05-10 15:22:44 +0000 Commit: Warner Losh CommitDate: 2024-05-10 15:22:44 +0000 grdc: Add copyright Add the stock BSD copyright and license from the 4.4-Lite distribution (indirected by SPDX). Sponsored by: Netflix --- usr.bin/grdc/grdc.6 | 5 +++++ usr.bin/grdc/grdc.c | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/usr.bin/grdc/grdc.6 b/usr.bin/grdc/grdc.6 index 7420c8ecbe8b..4af2cab53517 100644 --- a/usr.bin/grdc/grdc.6 +++ b/usr.bin/grdc/grdc.6 @@ -1,3 +1,8 @@ +.\" SPDX-License-Identifier: BSD-3-Clause +.\" +.\" Copyright 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 +.\" The Regents of the University of California. All rights reserved. +.\" .Dd January 15, 2023 .Dt GRDC 6 .Os diff --git a/usr.bin/grdc/grdc.c b/usr.bin/grdc/grdc.c index 07d12f5a7fb0..f9e5a9e36bba 100644 --- a/usr.bin/grdc/grdc.c +++ b/usr.bin/grdc/grdc.c @@ -1,3 +1,10 @@ +/*- + * SPDX-License-Identifier: BSD-3-Clause + * + * Copyright 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 + * The Regents of the University of California. All rights reserved. + */ + /* * Grand digital clock for curses compatible terminals * Usage: grdc [-st] [n] -- run for n seconds (default infinity) From nobody Fri May 10 16:41:39 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbZQq3mWLz5K2Z9; Fri, 10 May 2024 16:41: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 4VbZQq3KHxz44RP; Fri, 10 May 2024 16:41:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6kFKByAAv7KbYWxl4mmoYYOF6zgg8kUSGZ5L7UvAsvo=; b=fUK+G4fipIdlfztC6mKP2bsvmrRD+kly5hwx2FPDOag3gxtI1IR8KcugIS8sW8Ujvaefd5 mtUwITpCwzUYsGEoS1x4funoKNfK5e5OEOb5LDEI/aSMlMvWRVYeef6QkVKDrIsH0n27IG glFGAOu8jK9wVJtjaWg9L/wFsq8ASy+HgCbtbKDK+xtjYh00cn2qIj6vg1BgMyJEEvUTir 4JGX0T2N4o61tUcna2NWanfry1RDf9CVz1TsCt6AOlYxM/OQI7tChrDFJWd3yekHzl9qQI ksqEUeWRgEcldkCd81lma/At68j+5eI8M3Byro0hn4edXa9S5oI5C/q0tUiIbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715359299; a=rsa-sha256; cv=none; b=aYb8/6E9MaxWQXxaMsMdoXuJSLUwtDvCDtwathEQJ4j1WkQxEhb5rFgpF5iU71XohQQUYY GtECbgyTTHUUkN0SXQMAsDfsdnfoV5dzTKpYZVXO2/fiPPE5aZwtRdHLZ0CFgohGrsIYtQ cOgz555dlIKnnvWRcpyRmJCCU6o5yCkSgKNlMWuDBElvYblbXTQZww9xtf9OBsa89qoNuf Hag6MJg5RDNU/kF3yeToFt3mH/nfbPDM43wS4APZU3CoNJzeSuHBGp8yWLVW2VTBdc9UZp CvypTUbpJ/zUOBRnB2tuN4vkahntY8RJyYBwk66pFmdlu6guXIxjZx7Wh+otxw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359299; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6kFKByAAv7KbYWxl4mmoYYOF6zgg8kUSGZ5L7UvAsvo=; b=J4kjt2FPaBFc2Mfx4D4K8DXA0pdaWBB/bNalhAxy2ITqa53DNtvO+QWk0d9ecKSpy266Oz xkdQVhJsq5/xR5PtHpuDT/NYAlBN1n6EEurEHnUcUyVsIhwbBmfhPLHAsBZ/v3oovVzap+ J+Wc8rsKhaivGu6fi3QT54aJAMIUQ8RdlNCZZQ0iduCbqn3NJQ/NvoNRGwkPrnmP/hah5i 5Aym0Q16t1V4huoToF4UJ3179/tAHGFcDyxWjQ2CBORnrM7fvjD+d2XWiTsRhNhPKqNn34 G57HiLC/Wt7TgVGNyZcuzRm1IgwPDKijm56ndDwVaEryI/wRLDmrbOPfiXOJHw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbZQq2wrhzlB6; Fri, 10 May 2024 16:41: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 44AGfdhl017884; Fri, 10 May 2024 16:41:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AGfdTH017881; Fri, 10 May 2024 16:41:39 GMT (envelope-from git) Date: Fri, 10 May 2024 16:41:39 GMT Message-Id: <202405101641.44AGfdTH017881@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: bf1820f187bd - main - nvmecontrol: Fix a sizeof mismatch List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bf1820f187bd3f90935dc5514e61d1d3a394a21c Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=bf1820f187bd3f90935dc5514e61d1d3a394a21c commit bf1820f187bd3f90935dc5514e61d1d3a394a21c Author: John Baldwin AuthorDate: 2024-05-10 15:54:02 +0000 Commit: John Baldwin CommitDate: 2024-05-10 15:54:02 +0000 nvmecontrol: Fix a sizeof mismatch In this case it is harmless since it is an array of pointers so the resulting length is identical. Reported by: Coverity Scan CID: 1545055 Sponsored by: Chelsio Communications --- sbin/nvmecontrol/fabrics.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/nvmecontrol/fabrics.c b/sbin/nvmecontrol/fabrics.c index c9aca088c47e..d93e984ee7a3 100644 --- a/sbin/nvmecontrol/fabrics.c +++ b/sbin/nvmecontrol/fabrics.c @@ -488,7 +488,7 @@ connect_nvm_queues(const struct nvmf_association_params *aparams, } /* I/O queues. */ - memset(io, 0, sizeof(io) * num_io_queues); + memset(io, 0, sizeof(*io) * num_io_queues); for (u_int i = 0; i < num_io_queues; i++) { memset(&qparams, 0, sizeof(qparams)); qparams.admin = false; From nobody Fri May 10 16:41:40 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbZQr6Jt2z5K2P2; Fri, 10 May 2024 16:41: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 4VbZQr40Qsz44m2; Fri, 10 May 2024 16:41:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359300; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bmHXQD5y9CQ5zPPyhNBk+1wlIADeXeGjLhTHDmB1HuU=; b=mJw6WncUiuRS82uxt5OlbkXBB6wJVopostVeVVQnYhfCgmCk0xZH+v2ZYx5QojPdrY9x7N ecOCe9WV0w1j+jeIQ+KUcJ42EVqMnXvgNawUgPB7qEtSFpbSFr6isYDr67uNl45aSEDACS O+WRAXqKKHkk3GqAgNB6I++hqGHEntrhJqZsIA5rEQTvIXxqRE4UuH0c4nlsxKqu8FZCzd KVRUK2iBzd86IlEMxzcWA6R+8R6WkhAgiyxYaLIqZsQniXM0q8Iv91S7893X+OP5gKBYqc WNY+RO+ceD4wuz6Crt7HwhfCFoDLtlpSAoRUlunbpT1rI/X5wnaEgFGgPwXxUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715359300; a=rsa-sha256; cv=none; b=JNYB17rDC2jCmJlXPc9A0c3LdH2nl1ZCL1Id+/dwhN1pERdGs82zS5FtV7jla67TnrO1G5 uHs0pnNgJj8TIK6njYt7SlMmIlmh1TDZOvRsJ+zy9zWMV0wkJka3FyQiXgNamgshmpWt/w AIFxOVY9WyupKs2NxO6ujcYjt/aWJ8vQjJlgC0zwyNFcwd2P0YBNRnwG8UAkV0eMWwzz8E Jm1dlSHYYdq8rCTVoPvQ209MVUCHvuqsI/F0sQ8dF8BTSlNMteHKL3ZweRhQ1Ixw2lvhjN dlQS0nx9puIq6gmk+qb1binSzP6UVrpoxJfloDTfqWeDxEHSRjrP773I2IAPBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359300; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bmHXQD5y9CQ5zPPyhNBk+1wlIADeXeGjLhTHDmB1HuU=; b=fxWTWead86wyaQO+XjO7wB/HhtsClcTw1/Dqe2i2N+92R1JFXpz/mnPWhAcTDKMxiNDkmJ E7azEfnCVoFDposyUetFYcYy7bQKqPH3OubvkTwuf9B5HJ0yL8vJH7hEgDAsxGKUAH/3Rm TAMKjAgPbUlqN4EQq7QYjyctQDguePaVXlOpx9xHoAWl3hIWCY7r72sF+J0p7zLKI/d+KI GGulMUlNjJwzNvhKYPdKZiD5oC3MLQ0r+sQSiYlvxk6OhUFsmCMbafbbDQ7xVSP73SvBt5 fKsw1wv7GmSeHyhYhSoy54hNQzEVOP+mgdmstT7Wtnu5MGuER1FSjGFgbiFZmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbZQr3chczlfL; Fri, 10 May 2024 16:41: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 44AGfeDs017938; Fri, 10 May 2024 16:41:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AGfewU017935; Fri, 10 May 2024 16:41:40 GMT (envelope-from git) Date: Fri, 10 May 2024 16:41:40 GMT Message-Id: <202405101641.44AGfewU017935@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 1f029b86bbe1 - main - nvmf: Use strlcpy instead of strncpy to ensure termination List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1f029b86bbe11ba6e4bae2392920346817933df0 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=1f029b86bbe11ba6e4bae2392920346817933df0 commit 1f029b86bbe11ba6e4bae2392920346817933df0 Author: John Baldwin AuthorDate: 2024-05-10 15:56:51 +0000 Commit: John Baldwin CommitDate: 2024-05-10 15:56:51 +0000 nvmf: Use strlcpy instead of strncpy to ensure termination Reported by: Coverity Scan CID: 1545054 Sponsored by: Chelsio Communications --- sys/dev/nvmf/host/nvmf_sim.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/nvmf/host/nvmf_sim.c b/sys/dev/nvmf/host/nvmf_sim.c index b097b04d64c3..00dad07889d1 100644 --- a/sys/dev/nvmf/host/nvmf_sim.c +++ b/sys/dev/nvmf/host/nvmf_sim.c @@ -183,7 +183,7 @@ nvmf_sim_action(struct cam_sim *sim, union ccb *ccb) cpi->xport_specific.nvmf.nsid = xpt_path_lun_id(ccb->ccb_h.path); cpi->xport_specific.nvmf.trtype = sc->trtype; - strncpy(cpi->xport_specific.nvmf.dev_name, + strlcpy(cpi->xport_specific.nvmf.dev_name, device_get_nameunit(sc->dev), sizeof(cpi->xport_specific.nvmf.dev_name)); cpi->maxio = sc->max_xfer_size; From nobody Fri May 10 16:41:41 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbZQt0zfSz5K2C6; Fri, 10 May 2024 16:41: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 4VbZQs5B22z44wl; Fri, 10 May 2024 16:41:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359301; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XB8emx0One0A/8He3JVdyJhYs0FnuUftvRyLkgXHKoQ=; b=j2hNbSW/FAjdPFogtduCe2xcJaGp+OiBwp4jhEzzjSepP4KtiDjUduewl/FAzT/LgPLmEi pCdg6+2s+ktctqM5URd56p5CVbLipkoKsxsfwejtwMF3LHVh16/iBPezJxZ4bOIpdfPIJ1 ZF3CWob49Sq8s81lUYt75NCPPBxrQOcJYxYm3MHmqGpFjaggnAGetshgj1wMLSaHCojFlR bHwDUrM8oYtOwXNwSxzlDf56Soi1AvYqOxuIxx+ivsWm0bQyukDBwzwT4/pWXvUwce7NAh 2YDdoafKtfL2Hr8fDY/PxkqbQkQeJh1E0I4X0HyMUavJOdu7+MAwbN8HrWe9yA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715359301; a=rsa-sha256; cv=none; b=hyz6QxuqAQcvhtJFo1R7/IhoWt3kij6G4IRryAH5QR4t2+Y7RPRzJoTgGUv8/l12pxH+lt D8ENDudzkqYBILzexdePzltaVOokjOemldNrGvgd3MnAh5C0nTjpsubvpyDTXm/MahbgG2 CbrDAeEXJ8eTrQF1G7rSwb3t5gvSVh/qp4aMNs/nyHht5m1mf1cuGyA5LwY8RWpCfoEGB1 XA3V6aK6iTu1QJ8IrPuyziiYXwbUYmlmWtyyCIgQSAWZXvoRKdPpXfSa3W2py+BnkAC8BY vhcJqE5fidNc/lT0bL/ljAg6/TV6eb4qhjXL2GvTPf8Yl+cqZTET8tAU8l5tWA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359301; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XB8emx0One0A/8He3JVdyJhYs0FnuUftvRyLkgXHKoQ=; b=bfrIIbqLe/g69hR1x39QnfhvTwBKMC6TA+CgyyrkNG62VtOTUFT+oVXEewfJJEbpn0JhiN mjD4cFS3L8wHEkWD1YaHZI3rS1zYKe5ZY2P/Fr7jNrv4mgJEjl4ZZ3HRhgCFJonI4CYEgx 0CjY59ZEk80KsD/uVa8hE7JvdTt85xeQuMO4msCKKXK7ICuFOEemlThcTt0pNvuhdtanPo m3HtbxZDR8UgCFnBikawylKaFoocJQzS+1Pb/bkN90+IjAlgflpUxc4yRLytblsiZ3AlA0 RvlBcaiGtYRaRIBW8PAG5Yk448T6Wl5vrKUABD3G3NgyL9kyZnVU8X5CXfwNwg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbZQs4p2vzl7m; Fri, 10 May 2024 16:41: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 44AGffcR018005; Fri, 10 May 2024 16:41:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AGffX0018002; Fri, 10 May 2024 16:41:41 GMT (envelope-from git) Date: Fri, 10 May 2024 16:41:41 GMT Message-Id: <202405101641.44AGffX0018002@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 0ac468c7b641 - main - nvmecontrol: Free array of I/O queue pairs on failure to handoff List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0ac468c7b641a1db4ad1435cb7072919ab569c50 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=0ac468c7b641a1db4ad1435cb7072919ab569c50 commit 0ac468c7b641a1db4ad1435cb7072919ab569c50 Author: John Baldwin AuthorDate: 2024-05-10 16:04:51 +0000 Commit: John Baldwin CommitDate: 2024-05-10 16:13:21 +0000 nvmecontrol: Free array of I/O queue pairs on failure to handoff This is harmless but cleaner. Reported by: Coverity Scan CID: 1545041,1545049 Sponsored by: Chelsio Communications --- sbin/nvmecontrol/connect.c | 5 ++++- sbin/nvmecontrol/reconnect.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/sbin/nvmecontrol/connect.c b/sbin/nvmecontrol/connect.c index afb78725a3c7..14bd0cce1f8f 100644 --- a/sbin/nvmecontrol/connect.c +++ b/sbin/nvmecontrol/connect.c @@ -84,12 +84,15 @@ connect_nvm_controller(enum nvmf_trtype trtype, int adrfam, const char *address, error = connect_nvm_queues(&aparams, trtype, adrfam, address, port, cntlid, subnqn, opt.hostnqn, opt.kato, &admin, io, opt.num_io_queues, opt.queue_size, &cdata); - if (error != 0) + if (error != 0) { + free(io); return (error); + } error = nvmf_handoff_host(admin, opt.num_io_queues, io, &cdata); if (error != 0) { warnc(error, "Failed to handoff queues to kernel"); + free(io); return (EX_IOERR); } free(io); diff --git a/sbin/nvmecontrol/reconnect.c b/sbin/nvmecontrol/reconnect.c index c8a010c038d0..b606409eea90 100644 --- a/sbin/nvmecontrol/reconnect.c +++ b/sbin/nvmecontrol/reconnect.c @@ -85,12 +85,15 @@ reconnect_nvm_controller(int fd, enum nvmf_trtype trtype, int adrfam, error = connect_nvm_queues(&aparams, trtype, adrfam, address, port, rparams.cntlid, rparams.subnqn, opt.hostnqn, opt.kato, &admin, io, opt.num_io_queues, opt.queue_size, &cdata); - if (error != 0) + if (error != 0) { + free(io); return (error); + } error = nvmf_reconnect_host(fd, admin, opt.num_io_queues, io, &cdata); if (error != 0) { warnc(error, "Failed to handoff queues to kernel"); + free(io); return (EX_IOERR); } free(io); From nobody Fri May 10 16:41:42 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbZQv3T9dz5K2KN; Fri, 10 May 2024 16:41: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 4VbZQt6rb5z44jb; Fri, 10 May 2024 16:41:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359303; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3XJxGi04/ObJ9WX80mVxGQTfquVX3X5iaunoy9YbxJ0=; b=NGkVFRLGE1w9+mX3DowLzQxmus5LMVNugHMbsZTIFP4XEAZLrsUwWou/gw0xV3g6cIimQH g88jq/9OnTWBBAzaBZ0SHAg6uca6lm92hm7YFBz+/wcHNS7TSsmml1G+N+TvpHruHdGV9T l41mlYMTiMEYSoX3H0JFeIobDrWB6qX5XgrXG1LlcOejRMnOHKE1e95w6kK80qdGbZHyC0 qGgYGyTBGfdGR+YbNDKcAd1cmatGgtz7YfjOd4f+p992gxZDA8cSDdQrsTqVC+wHicgm1C /V68dcUWoB19195B+2WMElzZukGiidaNv5wEgeTSxNf15IKRyuAc5maDsBrjfg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715359303; a=rsa-sha256; cv=none; b=aLz02iKqbz1yCva8ktpRd1q5i+7np9jY7amva59ia4ksiO2n9jm6nSVCqyCqQ36Ps1sjFY +i9TzPIEBovnpUzw1oiC+0fFKWcIX8Py47WA191EHIlrenHyWb5dn/GJVixz3k7TqjK80Y s31JGXZCeY+xUXTwnYqKnkF1KQlGAwf3TivszfnOKn889A6AQzukU7f77CRLU+tDRRdSZT V6VPRnCd3g5qDwQzH5MzxewHpuhK9WigK22+gPDqVZAInFgsPfVwlen9LCc6PrCgPBc9uy xbksMyCXwDCltHACZ+zJ4t2iQrDdWvMm3S5umoP3qbX6vkVrj2ONhMwseRIgwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359303; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3XJxGi04/ObJ9WX80mVxGQTfquVX3X5iaunoy9YbxJ0=; b=Uj/h+T132Ay0eL/5WXOY0XLdAAJgoaJ49R6xPzl6JJ18ysQnt+Wzoy1Hx9YqFuh8PQ/nhX Vc6/FcRy0CaEuLyXhXS1HYhSF+NiehdaD0c3fcuc3PD7QMhS1PyqYFFhOpMtOy5gocd1A5 WgJ/tGNn4j6h4SWqmtKlDgK9SVgTyNN0XLXYEGs6/WB9xWzVzbIU30lutfniqxuoocbirc KQETDs7Ha8GTCnPyryWPyWaqThZNKYePflBnXvuKcfM7wun6L929MaKirUG6BUjUbiCXMk mpeJTLycIC8ERrBJvYaDbEdf9XPRLtRu2gXLDwLhalDfdNeZPr6vdWpGh20TRw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbZQt5rCWzl0n; Fri, 10 May 2024 16:41: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 44AGfgUb018070; Fri, 10 May 2024 16:41:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AGfgkf018067; Fri, 10 May 2024 16:41:42 GMT (envelope-from git) Date: Fri, 10 May 2024 16:41:42 GMT Message-Id: <202405101641.44AGfgkf018067@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 1662e47d91d1 - main - nvmecontrol: Free the addrinfo list when failing to open a TCP socket List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1662e47d91d137891b62fe64ba1370047e7b506f Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=1662e47d91d137891b62fe64ba1370047e7b506f commit 1662e47d91d137891b62fe64ba1370047e7b506f Author: John Baldwin AuthorDate: 2024-05-10 16:06:54 +0000 Commit: John Baldwin CommitDate: 2024-05-10 16:13:40 +0000 nvmecontrol: Free the addrinfo list when failing to open a TCP socket Reported by: Coverity Scan CID: 1545048 Sponsored by: Chelsio Communications --- sbin/nvmecontrol/fabrics.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sbin/nvmecontrol/fabrics.c b/sbin/nvmecontrol/fabrics.c index d93e984ee7a3..de069e3df62a 100644 --- a/sbin/nvmecontrol/fabrics.c +++ b/sbin/nvmecontrol/fabrics.c @@ -168,6 +168,7 @@ tcp_qpair_params(struct nvmf_qpair_params *params, int adrfam, return (true); } warn("Failed to connect to controller at %s:%s", address, port); + freeaddrinfo(list); return (false); } From nobody Fri May 10 16:41:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbZQw57gPz5K2KQ; Fri, 10 May 2024 16:41: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 4VbZQv70Hgz457h; Fri, 10 May 2024 16:41:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359304; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WP6I97hccWxYvqxogD6+NlVLDHa9IDeXfUNo1YRdKtE=; b=XcM8jCgH+GilXJUANkUcJ+v46btYNBxnIBG3JaO8DED4nza3tn1vLOqPEw++/HkgfqEcB1 wvTclDgvAHLIAFsMxxnQW7PkvmDY3p2IE0Kl9Lh3BhAc7N2R/IVEDapiArIi42TLiK/y2z TTNrrZ4VEC/FSW5EeWgQpbrzD8rVDmCUjqtdLU3qTuhtx8kRFU54+cDju3Ov5H7NmLHmt8 GssHryEuSYzHG9ibZQJhWibMWQloAM/nxeyvsTpSDv6/+Ro2IZhDYCblP9M5xNWwvBrr0B i7ns9u4snXmvloe1gu3GtnoheTbd9NKzHD9JX1iww9Qo6lTMnonvuZnFnexvgQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715359304; a=rsa-sha256; cv=none; b=TCb1dcDfHbpwffPEuF2JS5DisFJbgthCPp/yNpgDwsyrSMDZWHCoGwFt8rHru/J/S+HPZp iSvREGL+SzYlWY66RUs0pWbS2h1M9qCK8vfxDEeOP2SRvAVZcaGiMnm+aGPpxFqkcU195O PnJbBEnAHjiikeFDtLipynK5rpqd//Osv1sTWYNiPa+eKiFY1wl4DPsUqGNS1u9zJWGURu 2nHimu8hKQGyD+VokbjDkQHAIzif+h1XNRCNm7vIhD6eU0p2k54GpX3Eenf8+HlUP6GSM5 OQ17bx+nPzoKk4vOnyJLNxa4PdVLrZnPCL7ZYoIbEuHZm5aNGyFQFI2UKDeLuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359304; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WP6I97hccWxYvqxogD6+NlVLDHa9IDeXfUNo1YRdKtE=; b=GEEM85EN0NcykawL0NF1+UJtOsy4QG/6F5t1NOdB+EHx60D5huUK9XEf2cZnxqZIePJ2T+ FJGTCSPwoh84j6l8+Tw4M26t5oBrvRg63lDC+J2i2aBL32su7ZtUvsTeHu6t3kUAw4eCwD oonHPb8WTolIz+PtEK8tXlBHz0PikYHEM75maDYa9al5H92rcvppdIQ62PUgbZ7p82OWdc QaXSlduuRIPxcC0F5wJNe7Ue8/GEQ1QdG6DTWJqnyorQCO44FGJOnAniH0/s2F6ZfQ6CN9 CwfzDtM7w4GG2tEXktdfAUg1aVTVvew601BlpGQPzBbTFOZE6u8hWypJQvWXLA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbZQv6c0nzlBB; Fri, 10 May 2024 16:41: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 44AGfhKr018121; Fri, 10 May 2024 16:41:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AGfhRC018118; Fri, 10 May 2024 16:41:43 GMT (envelope-from git) Date: Fri, 10 May 2024 16:41:43 GMT Message-Id: <202405101641.44AGfhRC018118@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 1f83483d7392 - main - ctl_backend_block: Correct value of NVME nsdata nuse field List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1f83483d73924de5fa2d5915676f6b2cd350d986 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=1f83483d73924de5fa2d5915676f6b2cd350d986 commit 1f83483d73924de5fa2d5915676f6b2cd350d986 Author: John Baldwin AuthorDate: 2024-05-10 16:09:53 +0000 Commit: John Baldwin CommitDate: 2024-05-10 16:13:40 +0000 ctl_backend_block: Correct value of NVME nsdata nuse field Reported by: Coverity Scan CID: 1545043 Sponsored by: Chelsio Communications --- sys/cam/ctl/ctl_backend_block.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/cam/ctl/ctl_backend_block.c b/sys/cam/ctl/ctl_backend_block.c index 714ed57b5652..55a5ce0d047a 100644 --- a/sys/cam/ctl/ctl_backend_block.c +++ b/sys/cam/ctl/ctl_backend_block.c @@ -1339,7 +1339,7 @@ ctl_be_block_namespace_data(struct ctl_be_block_lun *be_lun, memset(nsdata, 0, sizeof(*nsdata)); nsdata->nsze = htole64(be_lun->size_blocks); nsdata->ncap = nsdata->nsze; - nsdata->nuse = nsdata->nuse; + nsdata->nuse = nsdata->nsze; nsdata->nlbaf = 1 - 1; nsdata->dlfeat = NVMEM(NVME_NS_DATA_DLFEAT_DWZ) | NVMEF(NVME_NS_DATA_DLFEAT_READ, NVME_NS_DATA_DLFEAT_READ_00); From nobody Fri May 10 16:41:44 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbZQx40RZz5K2cb; Fri, 10 May 2024 16:41: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 4VbZQx0cfXz457y; Fri, 10 May 2024 16:41:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xmOEodQ9H7a0jOGVq58YUVnSQXdbv6DFcTrIAT9j2R0=; b=Lq/P6ltYZc2LuJpP5WFC+7fZkVBGlZ+VkSsnMHysT3vwUYvc2VcwAsJdcVDZAdZIj7ptlZ y1tIcVA1o18ozILRbjKIvFJ346vYpU9BFyXMHez0AKMjxysgn7fXFJtdKmEjDbtG7rq39w kNUkFw3YCrbYvXRetyxgi019D5wPDGJuN1EBA9nK8eeMN2CUXQrP+r2R26CZL2FMB4jVhP W0GR1MBlvVWff1EaLg/yhC07Is8QYPx9DN7DZD58bkbJMlfNGdtH8wMlhii9/5OyeU9ve0 T0hu+akMVNhny9v7kSW9DQAkvryFrvCX//rmsA45WDLbyVqu/D2+xy8Qe57XTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715359305; a=rsa-sha256; cv=none; b=HFmcCtW3bJ0CejSrtkw9gJ2JSSVa54mZEzXKMsEgrziaSB4hU89/yfBIzXJBF2eMw0tyW+ /xlvrEUIvwGL1ov/9MNJiO/blQeIP8jV3wwF0oLQXQ7LJiWFoCMb8e5hKhGCcJpdXZWypw sfTfdQC6lQa8jvpfeCDMb/bjB8A/t3zYXszi9Q+YJhMt/QvCLqj0qkLuws3tWRmsuVDFrU lGPYL1gr8DABhch0ZjIZSVaxlvNMT1p8l6FDiHdKBoZNUDHuHAinOmlJT+yb22ResrkQAK 75NhgnnwMmQZ7zJ+G+zL2Ip2sYpEW7cF5FQNSedCTblJ0viDTlNJ4yfG0eCLAg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715359305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xmOEodQ9H7a0jOGVq58YUVnSQXdbv6DFcTrIAT9j2R0=; b=snPjVLf/TJjmvxFhq67BCwEDJgRI1XW0dC1/y5YB3TqLQGCoIeOGIIHjREfRfuwCQH3WMP VkuULw4lbBbqfD+SWzRbkbw5TQrBP69LnjJlYfASCJM2snGePRzNZBJh6n/5AN4Och0zrZ xP2cLSkTI7UmMDGy1ywhmY0mLinm2+tqn+XS15R+aEhQX0sxoEdY4lKkQ6qNtpouFKz1a4 L8JXuXVAJ/FmPFZWYV3PJDgmnaNpOCK0R8fcY/IjR053lcaX7G9qd7g61EYGh2mItxy0cu G5LlxeM7cXPEvLQlEFjPBQbkm3ks+JCO/PXtaQQmDBEhi7Rra2FyaFpQe3fTGg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbZQx04bczlQN; Fri, 10 May 2024 16:41: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 44AGfiAi019059; Fri, 10 May 2024 16:41:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AGfiRQ019043; Fri, 10 May 2024 16:41:44 GMT (envelope-from git) Date: Fri, 10 May 2024 16:41:44 GMT Message-Id: <202405101641.44AGfiRQ019043@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 50884a0b09a8 - main - nvmf_transport: Remove invalid assertion List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 50884a0b09a8e02f08d1083efc9722e49b49c71b Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=50884a0b09a8e02f08d1083efc9722e49b49c71b commit 50884a0b09a8e02f08d1083efc9722e49b49c71b Author: John Baldwin AuthorDate: 2024-05-10 16:12:03 +0000 Commit: John Baldwin CommitDate: 2024-05-10 16:13:40 +0000 nvmf_transport: Remove invalid assertion This is leftover from an earlier iteration of the code where 'nt' was not dynamically allocated but was the passed in 'ops' pointer so was always alive. Reported by: Coverity Scan CID: 1545042 Sponsored by: Chelsio Communications --- sys/dev/nvmf/nvmf_transport.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/sys/dev/nvmf/nvmf_transport.c b/sys/dev/nvmf/nvmf_transport.c index 14d526192270..ea4aee8cc7ae 100644 --- a/sys/dev/nvmf/nvmf_transport.c +++ b/sys/dev/nvmf/nvmf_transport.c @@ -292,8 +292,6 @@ nvmf_transport_module_handler(struct module *mod, int what, void *arg) prev = nt; } if (nt == NULL) { - KASSERT(nt->nt_active_qpairs == 0, - ("unregistered transport has connections")); sx_xunlock(&nvmf_transports_lock); return (0); } From nobody Fri May 10 19:06:10 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbddZ5JGcz5KFXc; Fri, 10 May 2024 19:06: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 4VbddZ4pPfz4N8P; Fri, 10 May 2024 19:06:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715367970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tYfd3U+Ay3rcXix7CjLXVpFw3xtFVlgYYe5hWDWli3Q=; b=vIOL29IjREvLfsLtH1xlyiUYf9tfyHudLxZJDo/WWoXRInW49a7TX3MOmZ4vs6Qp9clR4a bfasV8MdLghuCdELOmsRUWPIXQH+1AcrcsVUEvm3o+mlu5pYJL7rjLBdbF2vRzKrTabc8p 0nQnB0fsou3UpUB96tMXB6sGW3tnBFGdPFLQ89Hdc6yByAU6gPYQ4mfeB03LTmNlBAjuaA JQyUPDgr172w4QMuCu0CmcT09n9ZWPXUek4vUAJOirNOyyUqkh+nTWZfFUsb0DzJxcw6GC hSVp9lvkT6JBTtU3SbV0imS8hgYE2wt5crMaV8b0EdKKEdlQJqzxVcyB1FAX9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715367970; a=rsa-sha256; cv=none; b=EC1oGVLNCnRBrsFtSsd49N6WrdNvREoCeZJfPyg19Tzuz3sB9rocxH0bROJp65BARb9B4z T6/g0YDeyk2GrcTMR23MYQ82wg8mJWYXipPb3/UOVrgHFqLxFxtCtkJSyP7wilGnG9UPeq Zly23yNRYPTP/LD9YuJwDzMHPpPvsxvaEt/U1+qXAwX0K8jKvRwbaT9pm+H1MrlEsF5Bv2 DBZiPd0HxkLGztLuA8hJK6RhB393rmUpCHxGQ0PEV2X2UqOkQMYUPLNzhaaMOUQzlsqXxE 5hpCL0a9du3cbEGhApBEsrWbsaFjqJkPEZQq7bcb6jUJtXIsJJ2ctmwiuCFNLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715367970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tYfd3U+Ay3rcXix7CjLXVpFw3xtFVlgYYe5hWDWli3Q=; b=LI1Z/UMmvwhbxp5hkCkO73F+r3CZt8ip07Eyk8ladg0nlA5M3FhSFwxHkeUIjrMQ1ee6Mx iE46CmQM6I1sbQhO0grVg6+2Py0E6LE/cEcZHdPvICyyXNn02Q23TWNshUtTqp0sEs/ESN jn4e9PqOWol6XXsve6gpP5Jo1S93AhU9R20TfzcYP/CluDxyrcYH1bnCqlA589ImyAGrdp bVHHxrp8N3230+cP7yyQJ4fpjRtuRXJnMEf6w4hGS+7uhi5zzYwuptfC5V/mVNLZelRoun nkL/k32A4f7Q6RnMQic1VIAEjo59sAWWavcI5/L7dxfk22BmKLOxwwNReIkuAQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbddZ4HZrzq8g; Fri, 10 May 2024 19:06: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 44AJ6Aq9061569; Fri, 10 May 2024 19:06:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AJ6AId061566; Fri, 10 May 2024 19:06:10 GMT (envelope-from git) Date: Fri, 10 May 2024 19:06:10 GMT Message-Id: <202405101906.44AJ6AId061566@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: dd4d206cad0c - main - kmod.mk use ${XARGS} List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dd4d206cad0cc8ba02ba10a039d708209a83a487 Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=dd4d206cad0cc8ba02ba10a039d708209a83a487 commit dd4d206cad0cc8ba02ba10a039d708209a83a487 Author: Simon J. Gerraty AuthorDate: 2024-05-10 19:05:05 +0000 Commit: Simon J. Gerraty CommitDate: 2024-05-10 19:05:05 +0000 kmod.mk use ${XARGS} Also ${XARGS_J} this allows use of non-BSD xargs when building kernel modules. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D45146 --- sys/conf/kmod.mk | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/conf/kmod.mk b/sys/conf/kmod.mk index 5cc0ff70c3e2..ed186619434d 100644 --- a/sys/conf/kmod.mk +++ b/sys/conf/kmod.mk @@ -71,6 +71,8 @@ KMODLOAD?= /sbin/kldload KMODUNLOAD?= /sbin/kldunload KMODISLOADED?= /sbin/kldstat -q -n OBJCOPY?= objcopy +XARGS?= xargs +XARGS_J?= -J .include "kmod.opts.mk" .include @@ -275,12 +277,12 @@ ${FULLPROG}: ${OBJS} ${BLOB_OBJS} grep -v '^#' < ${EXPORT_SYMS} > export_syms .endif ${AWK} -f ${SYSDIR}/conf/kmod_syms.awk ${.TARGET} \ - export_syms | xargs -J% ${OBJCOPY} % ${.TARGET} + export_syms | ${XARGS} ${XARGS_J} % ${OBJCOPY} % ${.TARGET} .endif .endif # defined(EXPORT_SYMS) .if defined(PREFIX_SYMS) ${AWK} -v prefix=${PREFIX_SYMS} -f ${SYSDIR}/conf/kmod_syms_prefix.awk \ - ${.TARGET} /dev/null | xargs -J% ${OBJCOPY} % ${.TARGET} + ${.TARGET} /dev/null | ${XARGS} ${XARGS_J} % ${OBJCOPY} % ${.TARGET} .endif .if !defined(DEBUG_FLAGS) && ${__KLD_SHARED} == no ${OBJCOPY} --strip-debug ${.TARGET} From nobody Fri May 10 19:20:46 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbdyQ51b5z5KGtq; Fri, 10 May 2024 19: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 4VbdyQ4Yhxz4NZV; Fri, 10 May 2024 19:20:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715368846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I6G3wYylCFpfAC2/5Woxn1dxi50yLnygfJg2K9jTvdg=; b=jrwPc063oF35lx20e5nqhG5B0vZdSI+MERnbpdpSlfyHOiBnUezluH72/OVtrHwypyyN+J 0BA+KXRSA13xGO9u+5xgzf8a6qfUA+klYtW5QV57mCcO8WnMcF/va1sqlYVTeJs3/KdUaO OrCnRo6cwwG6K7oEgDbEUUIgBFh0sK5MQrFlM8DCoqZz+03tNEdlfgOyHZcUMNI/2bCt5m 6hl7Hhasy3TxoA1ZBopqF+jVbV1Tk1xpUwVpNy8EaALgswgjhYHccwiRwSsHnmnvNQpk11 66WOexcBJEmAseCjvPmcQwGqrRd3ySa8oeRDt4UVUBQgUwppd4HwRZH9zgjQAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715368846; a=rsa-sha256; cv=none; b=vGRTJ+3Q0sCCxnHZfH7au363P7U2ZYJYlPwVagpKrfh6b05FAY5ow5En9OQSWbezfgCxCm Z+mRTyT5Zv+FBBUJ0N4ixbMyJYMNAOpNj9gx1+xdZRQQKbUAepeOZ6vxY5Uh7XUpfik7X8 WSbkfCiwr3BKgNdTsC605tghSeKAhyFefODjkGEEJhuk40JD6tuJaHWZfydm17FCDDvgqN hezXcs74DyN1HAaE8hUPMeSCnMa5Y9ENwrK7V2XIPraVewJSAALnHZ+cNsOP70/yj+Chmt xg3Bkv87owN4X/kEdg2q+q+NYFGl+O4AvuBXKPaJpu1nt1UWtS8WGxxc6UZwsA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715368846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I6G3wYylCFpfAC2/5Woxn1dxi50yLnygfJg2K9jTvdg=; b=GPAdRdYAEAwsaVP4v74m8GoeR38EsWyvFmS1baJ4+AZSGHIgwYh0Zoo3inlEgCL2Mx2o/L I/JuILv3N+MGv/yld2HeYWGwCI9P93UNKvPZ7G7/ZxPeILUtPgwHPA5oIayrMNSjJumgCs uLpHWhcqukA0eshWIso0+m4CwmieBDQ+2PrBhz9K24hIey1KYgJJqtvLzL2F59GDuYCrL/ AzCcUdIVSH08YEKZ7eqqCdG+zxn5IG8c4nBKGyCdxM2I03YkUlZgCRyh7hZX1Stk27HMVD N3/BrPRDenrwi2HQXWj+mgOzOaSI61AF9zs/JDm2o+Zc9BmipXhVwCNTyklkTg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbdyQ48zWzq75; Fri, 10 May 2024 19: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 44AJKkjg087560; Fri, 10 May 2024 19: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 44AJKkLH087557; Fri, 10 May 2024 19:20:46 GMT (envelope-from git) Date: Fri, 10 May 2024 19:20:46 GMT Message-Id: <202405101920.44AJKkLH087557@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 0b272e0926b3 - main - madt: print CPU APIC ID as signed int List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0b272e0926b3c4b1961131119e22ed5791be7230 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=0b272e0926b3c4b1961131119e22ed5791be7230 commit 0b272e0926b3c4b1961131119e22ed5791be7230 Author: Ed Maste AuthorDate: 2024-05-10 18:57:22 +0000 Commit: Ed Maste CommitDate: 2024-05-10 19:20:40 +0000 madt: print CPU APIC ID as signed int Instead of printing something like "MADT: Found CPU APIC ID 4294967295 ACPI ID 512: disabled" print the APIC ID as a singed int for a more user-friendly -1. Reviewed by: jhb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45158 --- sys/x86/acpica/madt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/x86/acpica/madt.c b/sys/x86/acpica/madt.c index c6358ad7e847..a593028ffb5a 100644 --- a/sys/x86/acpica/madt.c +++ b/sys/x86/acpica/madt.c @@ -368,8 +368,8 @@ madt_add_cpu(u_int acpi_id, u_int apic_id, u_int flags) * MP code figure out which CPU is the BSP on its own. */ if (bootverbose) - printf("MADT: Found CPU APIC ID %u ACPI ID %u: %s\n", - apic_id, acpi_id, flags & ACPI_MADT_ENABLED ? + printf("MADT: Found CPU APIC ID %d ACPI ID %u: %s\n", + (int)apic_id, acpi_id, flags & ACPI_MADT_ENABLED ? "enabled" : "disabled"); if (!(flags & ACPI_MADT_ENABLED)) return; From nobody Fri May 10 19:31:27 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbfBm0zrVz5KJ4L; Fri, 10 May 2024 19:31: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 4VbfBm0Pkcz4Pnq; Fri, 10 May 2024 19:31:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715369488; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3I8YMlCTDGcESEabS2NZNF1D47+lWmBI+bHBJvHNMug=; b=RxLIsc4X0dml32v3fyZ9HST+W3mR4yV8H9O203ay9LsB1tk9jRH2AwdnkFYN06p63Dji+E DrIHYPmaHCAu17SVA6QlNczz0fRA4bQozIoru6hW4RhzqOb3EEsr97a1rJjwjx3NdLS4AI /aa2+fBNLAlc/fpcYEUIYpEof/AkNAFLyRoU2WrO2/ir6xA5KcTYbh5e99/lPpK6jzOf8i 2gRXzg/K4pVhYUZS+EwLTaRUI8ZBC3kc302JP11ntG/GIIPcfJsmBCxMqbfHb5bipaVIwc fXR/rE6VbdPk5HlAW7qfFvarlfQ/vhgBaEHtqyg2lTDtQpQv+BXEPF9+P+v79A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715369488; a=rsa-sha256; cv=none; b=Jf3abKlJl7r8XjOol+7VC7cXAfe4jUeWRcVJEm1LwognIj9lvOAhdBGmELkvg8FVw1fAgr H+NGnJQDoK58kn7S+cXCdGuWA6RnncwCAJGC/HEA8tthLxdayWXoXrm10fft26sOgWKoDN PGIfASdHNZeKXR2nt/g7yZuVV02YFC6v0yCC5AR7wA2RPO8cuhoxTlB/AQR5+3Pc38U1g3 MS7Z95Bx3dvgDdGC/46EqAexvN7pY6s7pr/WyiWXzdg6jgep//OJuUKlRtb7PSXtfzTJI1 MrHW6j4OEtS1scVwKsaRjHj2bNdHINuL+DQ49VxDFwpEt4H9n+pxT8M1Scx8ag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715369488; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3I8YMlCTDGcESEabS2NZNF1D47+lWmBI+bHBJvHNMug=; b=VDiQ6l45FfNuy2wG/ehq9uHYGpZOAbzcLQ8rbA2+cnPyYcM4DdxOnTGJFWQpClnr5y/aij 5bjw3qcmjhX5nlUOSL0Kj6patnLWS3tvXzCMxuq/O+PW4WSNTDekW6GEc0jxmq79f/c9/d rAc4t6TIjApvkwLqDd+UJYjuKQzfU8L+mmMCmT96q+fEWjmg+I0Erwbq6Nr2JkZUyZw/iD j/j+2k4nGPElTdzZGXezm8mxHaEtP0GlAOOe5Pbc8e9KCy8datVoq0C3Q96oLKhLOW/ggN 985Ailj8Gi/w00UYDA2hQQR3J1L5ZtdcafIGzSElOgfVTZtTj/ELW9UBS4QwfQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbfBl74TVzqbf; Fri, 10 May 2024 19:31: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 44AJVRcc004804; Fri, 10 May 2024 19:31:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AJVRaL004801; Fri, 10 May 2024 19:31:27 GMT (envelope-from git) Date: Fri, 10 May 2024 19:31:27 GMT Message-Id: <202405101931.44AJVRaL004801@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 9d8a3718e24c - main - sctp: store cookie secret change time as time_t Reported by: Coverity Scan CID: 1492349 CID: 1493281 MFC after: 3 days List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9d8a3718e24c9ec1ffca6efba64aba3e308aee96 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=9d8a3718e24c9ec1ffca6efba64aba3e308aee96 commit 9d8a3718e24c9ec1ffca6efba64aba3e308aee96 Author: Michael Tuexen AuthorDate: 2024-05-10 18:09:06 +0000 Commit: Michael Tuexen CommitDate: 2024-05-10 18:14:16 +0000 sctp: store cookie secret change time as time_t Reported by: Coverity Scan CID: 1492349 CID: 1493281 MFC after: 3 days --- sys/netinet/sctp_input.c | 4 ++-- sys/netinet/sctp_pcb.c | 2 +- sys/netinet/sctp_pcb.h | 4 ++-- sys/netinet/sctputil.c | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index 0a8372a07362..dc31ffbc2161 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -2329,7 +2329,7 @@ sctp_handle_cookie_echo(struct mbuf *m, int iphlen, int offset, } ep = &(*inp_p)->sctp_ep; /* which cookie is it? */ - if ((cookie->time_entered.tv_sec < (long)ep->time_of_secret_change) && + if ((cookie->time_entered.tv_sec < ep->time_of_secret_change) && (ep->current_secret_number != ep->last_secret_number)) { /* it's the old cookie */ (void)sctp_hmac_m(SCTP_HMAC, @@ -2352,7 +2352,7 @@ sctp_handle_cookie_echo(struct mbuf *m, int iphlen, int offset, /* compare the received digest with the computed digest */ if (timingsafe_bcmp(calc_sig, sig, SCTP_SIGNATURE_SIZE) != 0) { /* try the old cookie? */ - if ((cookie->time_entered.tv_sec == (long)ep->time_of_secret_change) && + if ((cookie->time_entered.tv_sec == ep->time_of_secret_change) && (ep->current_secret_number != ep->last_secret_number)) { /* compute digest with old */ (void)sctp_hmac_m(SCTP_HMAC, diff --git a/sys/netinet/sctp_pcb.c b/sys/netinet/sctp_pcb.c index 1509ac13901e..65ac584827e0 100644 --- a/sys/netinet/sctp_pcb.c +++ b/sys/netinet/sctp_pcb.c @@ -2570,7 +2570,7 @@ sctp_inpcb_alloc(struct socket *so, uint32_t vrf_id) /* Setup the initial secret */ (void)SCTP_GETTIME_TIMEVAL(&time); - m->time_of_secret_change = (unsigned int)time.tv_sec; + m->time_of_secret_change = time.tv_sec; for (i = 0; i < SCTP_NUMBER_OF_SECRETS; i++) { m->secret_key[0][i] = sctp_select_initial_TSN(m); diff --git a/sys/netinet/sctp_pcb.h b/sys/netinet/sctp_pcb.h index e57e13654073..5c6ead92bf9b 100644 --- a/sys/netinet/sctp_pcb.h +++ b/sys/netinet/sctp_pcb.h @@ -263,8 +263,8 @@ struct sctp_base_info { * access /dev/random. */ struct sctp_pcb { - unsigned int time_of_secret_change; /* number of seconds from - * timeval.tv_sec */ + time_t time_of_secret_change; /* number of seconds from + * timeval.tv_sec */ uint32_t secret_key[SCTP_HOW_MANY_SECRETS][SCTP_NUMBER_OF_SECRETS]; unsigned int size_of_a_cookie; diff --git a/sys/netinet/sctputil.c b/sys/netinet/sctputil.c index b23efd9c8968..22d45d150544 100644 --- a/sys/netinet/sctputil.c +++ b/sys/netinet/sctputil.c @@ -1944,7 +1944,7 @@ sctp_timeout_handler(void *t) type, inp, stcb, net)); SCTP_STAT_INCR(sctps_timosecret); (void)SCTP_GETTIME_TIMEVAL(&tv); - inp->sctp_ep.time_of_secret_change = (unsigned int)tv.tv_sec; + inp->sctp_ep.time_of_secret_change = tv.tv_sec; inp->sctp_ep.last_secret_number = inp->sctp_ep.current_secret_number; inp->sctp_ep.current_secret_number++; From nobody Fri May 10 19:40:24 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbfP46SgWz5KJNQ; Fri, 10 May 2024 19:40: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 4VbfP44z2Jz4QYk; Fri, 10 May 2024 19:40:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715370024; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jxWZdQT6YbyxZcycbqPt+mXP79iED4g2/m3HTnhCAwI=; b=vnrQQTsPv+Q8SO5A7GKgGHFS/RqaOgDpuK6wlMKNqeGF553z9gouejiphR0UwhsyUmIqP3 R0I95r6Gd2YUwTPdA7qfzNiTU9PvEGEDVDtD/kCMSQhN4JVJz7nIR6GzZk9vC9CXhhVATs 7zZhzb3nzCNSJ/dOGT+vr08cvFeZqi1JWT+/0WePbakWfgcpUm8V4pKqwua8rbIFIx445o xxtii100bOpzRXOwNjD/VE/r+OpVse9bnlCj7pXC5MjguX2A8PUnZphRugklZn5fgURb/x JS8X1AanjuGOjCkq19tv15aQlMfUbCjXOBcVoJ/+fL6fD5rswDBEaXdKSD1jbQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715370024; a=rsa-sha256; cv=none; b=p4gGwsBYOfyBQ0j0jmtjqQMGj9YowiRnA5TD6YajKVmqxG9l8j4Dlm0SdmwOvrBBhjY7rX dC8e3u5qSy5oKVmaxxzvTwGgjKhPSOiOyLj7rCpLP42gZ3zeDJAOjtvQi2JTkImIPxuGHn 03pp7ci7FF0o8ZHga47pWh8bWhu7KpQvbn1qgL4V8Z5/Usg8jl9U5TcPhKhfaaUBhPmSQL AIFK/ny8EO3vky8ruxRq2VsNxw1hDg0SVKjIxSmtaENqFxXyg/MXuIGNl+xpzhe7TgvZSM Q21myBbRmVRdErBBGxV/K1Ma6nnCjqQf0gP8q9gp7ya61kOF0+RRcj0F64jT7A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715370024; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jxWZdQT6YbyxZcycbqPt+mXP79iED4g2/m3HTnhCAwI=; b=a2uMHinbySlFwC5TZqK8AWO3FV7t251ZnqyIm8q6cvA2LGBoiFkRmEYaK3yTQl632m6HD6 /OmbFacHJ1SH8agGJ2b5Ogyq/Buy+JzWTZWfWPZTTXjvQZ5JV7rlCFeZLBHjnvhV+n3QXS NYxicKYa3s930OMnkTqKy8V5NXtYsaHL9MH0dMK1NC+1k18eCTrW4H1c9VUL2oa7YFVQbj 9jyefd9ROuPGamXlGDDkiCkhTQjnalHzA0TDm+tOO3saA1gcHTqcUofBcDzF46T+Plg863 E39ZmXXK27YSHHLKAuJY6B8mToJuk/zsqhyFg/c5gzVCcTaxfqyW8KSfzSJk/w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbfP44Lshzr3Y; Fri, 10 May 2024 19:40: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 44AJeOhG021121; Fri, 10 May 2024 19:40:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AJeOXu021118; Fri, 10 May 2024 19:40:24 GMT (envelope-from git) Date: Fri, 10 May 2024 19:40:24 GMT Message-Id: <202405101940.44AJeOXu021118@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 4e3286818327 - main - Increase IOAPIC_MAX_ID to 255 (from 254) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4e3286818327453efd8e4c133928ba26a169567a Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=4e3286818327453efd8e4c133928ba26a169567a commit 4e3286818327453efd8e4c133928ba26a169567a Author: Ed Maste AuthorDate: 2024-05-10 17:40:59 +0000 Commit: Ed Maste CommitDate: 2024-05-10 19:40:18 +0000 Increase IOAPIC_MAX_ID to 255 (from 254) A test system provided by AMD panicked with "madt_parse_apics: I/O APIC ID 255 too high". I/O APIC ID 255 is acceptable, so increase the limit. Reviewed by: jhb, kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D45157 --- sys/x86/include/apicvar.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sys/x86/include/apicvar.h b/sys/x86/include/apicvar.h index 10016e291b9b..ac6a82659e34 100644 --- a/sys/x86/include/apicvar.h +++ b/sys/x86/include/apicvar.h @@ -78,7 +78,12 @@ #define MAX_APIC_ID 0x800 #define APIC_ID_ALL 0xffffffff -#define IOAPIC_MAX_ID xAPIC_MAX_APIC_ID +/* + * The 0xff ID is used for broadcast IPIs for local APICs when not using + * x2APIC. IPIs are not sent to I/O APICs so it's acceptable for an I/O APIC + * to use that ID. + */ +#define IOAPIC_MAX_ID 0xff /* I/O Interrupts are used for external devices such as ISA, PCI, etc. */ #define APIC_IO_INTS (IDT_IO_INTS + 16) From nobody Fri May 10 19:45:42 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbfWC2R2pz5KJRB; Fri, 10 May 2024 19:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VbfWC1whlz4RFb; Fri, 10 May 2024 19:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715370343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RV8PevgAOl3K0jLvl+LzCm6cyppnj02VsTsiA31uzCU=; b=ofNu9VkSTmKZVcTZNqisqsc9mPwkr/Q+PcqwCUpRT5jJR6piltfFIZt4G9SVUKnJcrct4m yEgmXtnLcUxaG2E5/7oN7+NcZ0iyE1B0GwD+CG2lkthxG72RjFBY3MOyJSnUjmXV/ge/03 Ai3JCVnal1nPfqE7zSu6rm4Z3YLr4gur4+amMZfx+LBYY4DxI4QjTdxD4lSsv83Kuvx474 5lRZ54HWmmIefhUZ9/dMemulnWIC2qo/M2mdEiqU46omzYXhpAE+NebIqAWmYf6aJZTiAj qRNdhWXtA7vZpYoeXDxugi1p6IlcMeq8GVJzZzhMoVikqutTeKDmRbKlKs+3Ug== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715370343; a=rsa-sha256; cv=none; b=kGQuhvlPRHEaDbVGeZWbZBf6saQcRrvTfg3L+OiaQRGVCWOBx7+zcxaIpJH8Vu167bIOLn oPVUZHAKV1CEsT8encFkQcSzpZkHpCp9GlIQb2A8+0OrhdOyAqh4QmZuLaH0MZshJkpeeH 4aD2W8UGB9cgKy9qw2BHltbYVZhm8LRe973e801B92aYs/jnJ5NSxLt1h93q21XVP4c98G k1gEITx9807xaoEcKaQGP3K5d5aBxcGSZ+Ji3sQwSlpQRraNyCCyok+/TMUG7OIXjgPkpZ 9uBx7IzvhqiAeUg1QXORnlsC9MznD/bW1f0cgskeU30Wm+N+2wXbziJ2kyBp+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715370343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RV8PevgAOl3K0jLvl+LzCm6cyppnj02VsTsiA31uzCU=; b=yqU73QwmW64HjJ8PhXXNc1l3Ub8krZkXlNwC6QWTbFKik0+EzLCDPl2rgWjQZ1K2tRfSaK qe8ySeP8gVISQmVCfDFCwuLKU2/dR98XqQZeebJwnKhVK6sMMWowo9/br9XvZZBx7hh5FB wRohO/WINr839y9PHHpnpZVDh2/yzBYiWbWTh0fh5S+/BaDxRkH7GVAMA42WxCnBGv6JjZ e+obw9yQMGB9QQqiFVY/rI4yw9c9Z7PkZhiltwdPFC2CLtSCpQI/BBWIf9ncPqG6xcC1rl CeMKdW5bdlS4oRHwPtYv1LY0h1RKlAXSWHJrRXbcrahBzQkpZjRjewVKrn1Ihw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbfWC1D7mzqsD; Fri, 10 May 2024 19:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44AJjgaQ028769; Fri, 10 May 2024 19:45:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AJjgIi028766; Fri, 10 May 2024 19:45:42 GMT (envelope-from git) Date: Fri, 10 May 2024 19:45:42 GMT Message-Id: <202405101945.44AJjgIi028766@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 42aeb8d490fb - main - sctp: store vtag expire time as time_t Reported by: Coverity Scan CID: 1492525 CID: 1493239 MFC after: 3 days List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 42aeb8d490fb7e8f4c9d27b3797179b861bd85e3 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=42aeb8d490fb7e8f4c9d27b3797179b861bd85e3 commit 42aeb8d490fb7e8f4c9d27b3797179b861bd85e3 Author: Michael Tuexen AuthorDate: 2024-05-10 18:25:04 +0000 Commit: Michael Tuexen CommitDate: 2024-05-10 18:28:38 +0000 sctp: store vtag expire time as time_t Reported by: Coverity Scan CID: 1492525 CID: 1493239 MFC after: 3 days --- sys/netinet/sctp_pcb.c | 12 ++++++------ sys/netinet/sctp_pcb.h | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/netinet/sctp_pcb.c b/sys/netinet/sctp_pcb.c index 65ac584827e0..340786e3484e 100644 --- a/sys/netinet/sctp_pcb.c +++ b/sys/netinet/sctp_pcb.c @@ -4541,7 +4541,7 @@ sctp_del_remote_addr(struct sctp_tcb *stcb, struct sockaddr *remaddr) } static bool -sctp_is_in_timewait(uint32_t tag, uint16_t lport, uint16_t rport, uint32_t now) +sctp_is_in_timewait(uint32_t tag, uint16_t lport, uint16_t rport, time_t now) { struct sctpvtaghead *chain; struct sctp_tagblock *twait_block; @@ -4563,7 +4563,7 @@ sctp_is_in_timewait(uint32_t tag, uint16_t lport, uint16_t rport, uint32_t now) } static void -sctp_set_vtag_block(struct sctp_timewait *vtag_block, uint32_t time, +sctp_set_vtag_block(struct sctp_timewait *vtag_block, time_t time, uint32_t tag, uint16_t lport, uint16_t rport) { vtag_block->tv_sec_at_expire = time; @@ -4578,13 +4578,13 @@ sctp_add_vtag_to_timewait(uint32_t tag, uint16_t lport, uint16_t rport) struct sctpvtaghead *chain; struct sctp_tagblock *twait_block; struct timeval now; - uint32_t time; + time_t time; int i; bool set; SCTP_INP_INFO_WLOCK_ASSERT(); (void)SCTP_GETTIME_TIMEVAL(&now); - time = (uint32_t)now.tv_sec + SCTP_BASE_SYSCTL(sctp_vtag_time_wait); + time = now.tv_sec + SCTP_BASE_SYSCTL(sctp_vtag_time_wait); chain = &SCTP_BASE_INFO(vtag_timewait)[(tag % SCTP_STACK_VTAG_HASH_SIZE)]; set = false; LIST_FOREACH(twait_block, chain, sctp_nxt_tagblock) { @@ -4596,7 +4596,7 @@ sctp_add_vtag_to_timewait(uint32_t tag, uint16_t lport, uint16_t rport) continue; } if ((twait_block->vtag_block[i].v_tag != 0) && - (twait_block->vtag_block[i].tv_sec_at_expire < (uint32_t)now.tv_sec)) { + (twait_block->vtag_block[i].tv_sec_at_expire < now.tv_sec)) { if (set) { /* Audit expires this guy */ sctp_set_vtag_block(twait_block->vtag_block + i, 0, 0, 0, 0); @@ -6745,7 +6745,7 @@ sctp_is_vtag_good(uint32_t tag, uint16_t lport, uint16_t rport, struct timeval * return (false); } } - return (!sctp_is_in_timewait(tag, lport, rport, (uint32_t)now->tv_sec)); + return (!sctp_is_in_timewait(tag, lport, rport, now->tv_sec)); } static void diff --git a/sys/netinet/sctp_pcb.h b/sys/netinet/sctp_pcb.h index 5c6ead92bf9b..ade29fb3544d 100644 --- a/sys/netinet/sctp_pcb.h +++ b/sys/netinet/sctp_pcb.h @@ -130,7 +130,7 @@ struct sctp_block_entry { }; struct sctp_timewait { - uint32_t tv_sec_at_expire; /* the seconds from boot to expire */ + time_t tv_sec_at_expire; /* the seconds from boot to expire */ uint32_t v_tag; /* the vtag that can not be reused */ uint16_t lport; /* the local port used in vtag */ uint16_t rport; /* the remote port used in vtag */ From nobody Fri May 10 19:58:50 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbfpL55jlz5KKpQ; Fri, 10 May 2024 19:58: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 4VbfpL4ZP6z4RvZ; Fri, 10 May 2024 19:58:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715371130; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pQlCd1hcyXXLmn4T+rP4G3ceicdTaeDDqjpWrBScZvM=; b=O262OvU//tPrIB4SWvY2kCa0kJXTudr8S+sk2l1cLvAC+4vivVYiitPTrymkfYjY1TZ6AB bLhNyQxvGaZlIWzd+rbUd31aHuwkv3pUk6ko9cglLM00Wi7OcCC7h2ho3L4NSDWAvWo3Sv sDm4Ibwol1vhVBxbhykOpSzfzKoXWYFXVTMhA0oP6TTxh5TOuj5PBXNfHHIY5PK85iXXlS jGPcpX0hzKtbQVLiGztd/iE1DWHCQe9Rc65I5o1nTi8aJ8ihinUFNT2n5X1CyF2Itrgb48 2BpM2F3P5JqDCr4qJmpRzVWcw9bBRwpdeQjDAln83dfTcniAf6Y0Otj9t4OqOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715371130; a=rsa-sha256; cv=none; b=FSr0aHUelbsYZ1Tet31Sppm9ozFNBVQCxYvRq76a/vU7kKJd6EMxgMEJgU9FVCi9sNqBb0 e0cFbbEFVjnrKlEwcFUxbKNYaT5qCuD3Os1uuAAvifdD90+uHnUqWw77gD7r6Iv7S69ck2 3CjB0ighau1JAD8uMcXZvbYT5PxgoeT72FQ7Gku0hcS/cLEwxwG7XN5+VrNYmWniJXqZs8 kaBFYkmB9S73WKe92u49g7lcGZjE4nUr7VdiOaKc7+SqCHZeXZKADqtovIDaOcOVrnvs8l Vt6y+zwVknsAXtkfhqSLxSDl678yOQxnp340Cuuxr/TnRr/dUeGFgQiv1W3fRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715371130; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pQlCd1hcyXXLmn4T+rP4G3ceicdTaeDDqjpWrBScZvM=; b=I4Je5mv3buh9S3TmrmRp4WySV8iyfMd4EY0fuwYMbRC3DrbMBdIhO8LnnPbUKqXFkjfXIn DaHvW8tkcDvu3V6aqnLOxQOO9t4TozpHaNdpceRCRN2zd3mjZMYOnCHMqRDnaEs6f6YVb0 8Ez8FXSC8TXuE3jiKgi9HZAdAMxClNQRul+B7G5fiw7zH6s0afmIrE7zMuSocCeIFlbwE/ CeStWm8E4/3OaaCghQYLldsTbAc/C+z3Dl+DGb12+f3QmacetASfvvjuf+a/lhiCmhq4Ku Hmz1bj47EVsAKcLI8c7oUCljjNOP8yJNFUHz9lnoZAsv37FeuH4Rp6KkWdR8Ww== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbfpL42mLzqw9; Fri, 10 May 2024 19:58: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 44AJwoig046412; Fri, 10 May 2024 19:58:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AJwo1T046409; Fri, 10 May 2024 19:58:50 GMT (envelope-from git) Date: Fri, 10 May 2024 19:58:50 GMT Message-Id: <202405101958.44AJwo1T046409@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: b67716dd58b9 - main - sctp: store heartbeat creation time as time_t Reported by: Coverity Scan CID: 1493087 MFC after: 3 days List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b67716dd58b93f373523cf35373c56fcfad44b12 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=b67716dd58b93f373523cf35373c56fcfad44b12 commit b67716dd58b93f373523cf35373c56fcfad44b12 Author: Michael Tuexen AuthorDate: 2024-05-10 18:40:15 +0000 Commit: Michael Tuexen CommitDate: 2024-05-10 18:40:15 +0000 sctp: store heartbeat creation time as time_t Reported by: Coverity Scan CID: 1493087 MFC after: 3 days --- sys/netinet/sctp_header.h | 2 +- sys/netinet/sctp_output.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netinet/sctp_header.h b/sys/netinet/sctp_header.h index 9696c4e954ba..c9fd0341f83a 100644 --- a/sys/netinet/sctp_header.h +++ b/sys/netinet/sctp_header.h @@ -83,7 +83,7 @@ struct sctp_supported_addr_param { /* heartbeat info parameter */ struct sctp_heartbeat_info_param { struct sctp_paramhdr ph; - uint32_t time_value_1; + time_t time_value_1; uint32_t time_value_2; uint32_t random_value1; uint32_t random_value2; diff --git a/sys/netinet/sctp_output.c b/sys/netinet/sctp_output.c index c146bda95c7c..cc8d017aba16 100644 --- a/sys/netinet/sctp_output.c +++ b/sys/netinet/sctp_output.c @@ -11427,7 +11427,7 @@ sctp_send_hb(struct sctp_tcb *stcb, struct sctp_nets *net, int so_locked) /* Fill out hb parameter */ hb->heartbeat.hb_info.ph.param_type = htons(SCTP_HEARTBEAT_INFO); hb->heartbeat.hb_info.ph.param_length = htons(sizeof(struct sctp_heartbeat_info_param)); - hb->heartbeat.hb_info.time_value_1 = (uint32_t)now.tv_sec; + hb->heartbeat.hb_info.time_value_1 = now.tv_sec; hb->heartbeat.hb_info.time_value_2 = now.tv_usec; /* Did our user request this one, put it in */ hb->heartbeat.hb_info.addr_family = (uint8_t)net->ro._l_addr.sa.sa_family; From nobody Fri May 10 20:13:03 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vbg6l2bMXz5KM4p; Fri, 10 May 2024 20:13: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 4Vbg6l25FRz4Tgf; Fri, 10 May 2024 20:13:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715371983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xdHEwgYI3VtqGJVEq4wPNSUfpa557PX5WS3QErmQw2c=; b=rz6hRCaSUs+K7bBbAX4GqG6tsyM+Z3LXGoueaotnBDqdENwyHm76pmZw3oseDg4bJYK3k+ tqHeeMCyE72pVZbkfN3IN34gs/fwv8O3/U+EqIXGpFCsWzra5V9/crw/zsmBd4r7zCwlLb EMMAUMSUSSmCpnqiyDm5CfVtmVWOuvoBrj/WnwEcmRDJ51xF2DF2EfwK6/OIbf5axTKpDO LHDDmgGt+l0MuW5X/YiB45R+u3KfIgPeodR5nxekp8/TJrD0jSqCiTeGyfaGsxdGqFvEeD PQk6n6olIXMGOzYF2noNtToQN1QmDTpUeEg2td0bIV31+G61uEtsCpWRLF7nNA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715371983; a=rsa-sha256; cv=none; b=ii692WNA3z9maSUn2kJr3z7u8ltuzEwZlmI54vAcWZw3NPVs2E6sRlVTyyoml3a8cS7mYg xVK1gIl0x5NlUgH0sRnJ7mgtg2WkoEXTZ9sHswbxw1lzJzJOyriVAbiZ8L56fy4hv8Ingx Rl+7Cd/NuRHDyGDGfTgIglG2zViYzMq6v1ysre2/7IbkwjF0vbqN8ts2zgaN100m5dH56n O0MzZPqq6vOL8NuHcYy6o/vy4ZJbsIOtj/4jvz24LEk2j2Swy4/fNJ+ioJ3KI/MnGPll0c c7tvkBHA8d7JpYbTd2dH4/aQf3DEtsZcrcD91e8fM4OD1K2V1tmlt3atUSxpVQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715371983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xdHEwgYI3VtqGJVEq4wPNSUfpa557PX5WS3QErmQw2c=; b=ObOUJhScWvztv6pUJEb1kwDMGrgCUnXgIzzgJavLt1pfXBOsu3gTZ9HOoeR9ypVTG8IV5r TIBBXqMbXBTrRal3ODMsvmJzu/+I+j2BivcZqP9BiOzsCk/27xe1WIoLNZCfAGeuz9G0Pc rW7KtsYvohnd1z19IuxmxhRoILePDpPG0BJLQgWwdXz4L4uyke2ndRnnOHEntk9HmnsLPD YPdkagpex3rszZLU3MnCSpEFEnUaE9pdd0H/gx84XQc7FR6wxVxYCnHoScUiQgOWhoa9e1 g1vT/nm1IWTwlULWEPhYkYRJMSU2n2UDgG88toGM64pPBSC/18LlSowh+LM0xQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vbg6l1hFwzrbS; Fri, 10 May 2024 20:13: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 44AKD3dJ079939; Fri, 10 May 2024 20:13:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AKD3eg079936; Fri, 10 May 2024 20:13:03 GMT (envelope-from git) Date: Fri, 10 May 2024 20:13:03 GMT Message-Id: <202405102013.44AKD3eg079936@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 88cbbbb6070c - main - Revert "grdc: Add copyright" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 88cbbbb6070ce3c5aea7b8d511039d44fc1f1c47 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=88cbbbb6070ce3c5aea7b8d511039d44fc1f1c47 commit 88cbbbb6070ce3c5aea7b8d511039d44fc1f1c47 Author: Warner Losh AuthorDate: 2024-05-10 16:50:46 +0000 Commit: Warner Losh CommitDate: 2024-05-10 20:12:19 +0000 Revert "grdc: Add copyright" It turns out this wasn't in 4.4BSD. I had a false positive for gdc.c (which is in 4.4BSD, but part of gated, not this). gdc.c comes from the ncurses tests, so it shouldn't have this copyright. This version is mostly Amos Shapir and John Lupien's code. It comes from ncurses test directory. ncurses has made dozens of improvements to this file since we imported it in 1997 (which pre-dates their online history), so it's not clear if their new copyright applies (which doesn't mention Amos or John) or if some other copyright applies. In any case, it wasn't 4.4BSD, so revert this. This reverts commit 6ed7d0e3ac9c34fa9deeb73f2322b9f25b708788. Sponsored by: Netflix --- usr.bin/grdc/grdc.6 | 5 ----- usr.bin/grdc/grdc.c | 7 ------- 2 files changed, 12 deletions(-) diff --git a/usr.bin/grdc/grdc.6 b/usr.bin/grdc/grdc.6 index 4af2cab53517..7420c8ecbe8b 100644 --- a/usr.bin/grdc/grdc.6 +++ b/usr.bin/grdc/grdc.6 @@ -1,8 +1,3 @@ -.\" SPDX-License-Identifier: BSD-3-Clause -.\" -.\" Copyright 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 -.\" The Regents of the University of California. All rights reserved. -.\" .Dd January 15, 2023 .Dt GRDC 6 .Os diff --git a/usr.bin/grdc/grdc.c b/usr.bin/grdc/grdc.c index f9e5a9e36bba..07d12f5a7fb0 100644 --- a/usr.bin/grdc/grdc.c +++ b/usr.bin/grdc/grdc.c @@ -1,10 +1,3 @@ -/*- - * SPDX-License-Identifier: BSD-3-Clause - * - * Copyright 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 - * The Regents of the University of California. All rights reserved. - */ - /* * Grand digital clock for curses compatible terminals * Usage: grdc [-st] [n] -- run for n seconds (default infinity) From nobody Fri May 10 20:20:01 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbgGp0bczz5KMKC; Fri, 10 May 2024 20: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 4VbgGn72pXz4V9D; Fri, 10 May 2024 20:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715372402; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bzzCF8y/yrbYKTuQNzDPI3tanTxcgJIxKTvYIbMOvZo=; b=FBbW+cgRsk0zyscnDxiV/lJlotTu/sQOHmJ1S91qVhLEr7/fUbrblrUHWHmuNHOtyqxpRu dTiCrMImc9OK27rU+eBTW4ztdjUduaCF5Z74e9TM/NZi651Jfj0QSDz+wdh8S90eeqr+Of cF50Jmw+UU1bw/2VqDM2iL3XqifLZxw6UWefsER3nw0SuY6m/Q71Fqg1ISnVogGHtQqc5b KgCZTLIHkX43rR8YKEq0sKXPVAKsJjOyM5StNVoQRDF23dr1+0su8+1SQAE0XZhzycFK5E j+Qp5zDKjrvbO/OxYvY3gnsd/Zx51Yze76rGlFccRe1qJKa7TYyTT3Sap2zcOw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715372402; a=rsa-sha256; cv=none; b=NRUKq2b5pGXdePC+RodlqFjwGxOc84vJCWrc4z3syIkC+YsQ5Ta9gLQ0lu0azfUTgBu+bL D/AsHkjLqBhHjAZkDfeGVCDNdVbjCH+RJMqDnI4/fghMfAyTbxUM+G+F5mbx19z6P5DMYe ab29Yn73jfmz2I0TdUOMP+6zJTEw9HwPREtNdY9inasnkfef/m5KSlM4TWGJmx/SyHvJZj n2rbfqj69hSbToaOHvBQ6WKs7WHMGFv1HFW85PSKKl4NsOavB1mhggr6dEDxOGAVCGhPfZ TgsKOLXT6ORoOopqVRPoSgh0LPHg/XvpMd3iXkYWBXl3WzQIDUrf1pSYgS69Sg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715372402; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bzzCF8y/yrbYKTuQNzDPI3tanTxcgJIxKTvYIbMOvZo=; b=si8Q+5V9MQ0mcSz3EtPGZbmORqcj0Mib9wKTk1oScahMd8HPl+n1clqobmDHpqMsheh3xE 4fxY8t0Rn7GafD3Pv9Dsd6KAwsutnzuy0Ib+VkxpxVmQ40NH6c2TrgoGSNfRlUwwpLVxD1 hs74pFWvPjDBdYR00R2op9peS0SKYLx1GV6mTZdYmmOFIMhYNWZD+j1LRIQD4ZnwZQHv8p pV2k/uMZhf0Ems8B/tjeQhZoU84vEoEeahO73QwLkzYyJgtWe9GnIQSz6jN8dGuHGS6QR1 16bA+85YjUfWSPyOIc66tXVVr9eUmUdQrpljF1KQny5um3g17E2Q27qrDdY4og== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbgGn6X9Dzs44; Fri, 10 May 2024 20:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44AKK1xT082920; Fri, 10 May 2024 20:20:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AKK1k3082914; Fri, 10 May 2024 20:20:01 GMT (envelope-from git) Date: Fri, 10 May 2024 20:20:01 GMT Message-Id: <202405102020.44AKK1k3082914@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 5120ea0d8871 - main - sctp: improve heartbeat timer computation PR: 278666 Reviewed by: Albin Hellqvist MFC after: 3 days Pull Request: https://reviews.freebsd.org/D45107 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5120ea0d8871fd5d56a8fb70117b727b9d8a4e62 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=5120ea0d8871fd5d56a8fb70117b727b9d8a4e62 commit 5120ea0d8871fd5d56a8fb70117b727b9d8a4e62 Author: Michael Tuexen AuthorDate: 2024-05-10 18:58:01 +0000 Commit: Michael Tuexen CommitDate: 2024-05-10 19:02:56 +0000 sctp: improve heartbeat timer computation PR: 278666 Reviewed by: Albin Hellqvist MFC after: 3 days Pull Request: https://reviews.freebsd.org/D45107 --- sys/netinet/sctputil.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/sys/netinet/sctputil.c b/sys/netinet/sctputil.c index 22d45d150544..17e49b413464 100644 --- a/sys/netinet/sctputil.c +++ b/sys/netinet/sctputil.c @@ -2289,19 +2289,19 @@ sctp_timer_start(int t_type, struct sctp_inpcb *inp, struct sctp_tcb *stcb, } else { to_ticks = net->RTO; } - rndval = sctp_select_initial_TSN(&inp->sctp_ep); - jitter = rndval % to_ticks; - if (to_ticks > 1) { - to_ticks >>= 1; - } - if (jitter < (UINT32_MAX - to_ticks)) { - to_ticks += jitter; - } else { - to_ticks = UINT32_MAX; - } if (!((net->dest_state & SCTP_ADDR_UNCONFIRMED) && (net->dest_state & SCTP_ADDR_REACHABLE)) && ((net->dest_state & SCTP_ADDR_PF) == 0)) { + if (to_ticks > 1) { + rndval = sctp_select_initial_TSN(&inp->sctp_ep); + jitter = rndval % to_ticks; + to_ticks >>= 1; + if (jitter < (UINT32_MAX - to_ticks)) { + to_ticks += jitter; + } else { + to_ticks = UINT32_MAX; + } + } if (net->heart_beat_delay < (UINT32_MAX - to_ticks)) { to_ticks += net->heart_beat_delay; } else { From nobody Fri May 10 20:45:31 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbgrC3m0Kz5KPVP; Fri, 10 May 2024 20:45: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 4VbgrC32V6z4XMT; Fri, 10 May 2024 20:45:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715373931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Vy0o30OZcc05qiW0QA/SlN3PyCZ1OMursndM3Ub27Vg=; b=PnRCqnTb0naie9kakcspQfi/JOFOcpChl5kmYEG9gd1EPCSFr/bv2n+i9VK7vUvwuTvUNp 91tUIh+jF+SbCyZpwAaDK55vMISaNEKIyWW+HYjMOfbOjbkrY0NpnpEdzIBZQr3aZ7jA7B TuUfbjNPqR3A0YWv5eqUhhzAm5hd25BV2urKLjX+mFZSne3RiQjhKFIA2UxRjNUT4YmXMb 4yWWzPHW5dty2xufQ3XPSAKoaOl+jt0RDIyeI2rV4+SR0XZMpN7grHSCy+enuKbhbd0gZ3 OtE3AJIeI6B9Ey1CkTL4O4DTyu7QARKGuXhAAm0qbytdu32urfPYBLb79jCoGA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715373931; a=rsa-sha256; cv=none; b=rcU9ptjWkV31ihLT/WqHN8gG7HWCuEyAsbcEjccxtA05meRfLmjjXqU6s593XJFEDpgSv3 XZp1wAZtE06avgtm4MjrKtlHySGlZVBnvHXElJkgZAeRxkOsgXby/ZyuVQyHy6w6lqO/45 2U7rZNlUszHPsQR7Vd8lOswwYBWqo2/UXWEw687hNk3jSp2wNeKjJhoeFRPjOuWxym9dm2 xP/8QjRr2/0WJu+xMga32YD/8tXUUf77eYa82AbBrBTMT8fIPAo9rl+UHe6jdgMQ49wQCh /bcXVew4iNwMJgr5f2bfj5wAH93DAZMlChKtVnjKMIU47nF2VCGlIqNtxqn1Hw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715373931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Vy0o30OZcc05qiW0QA/SlN3PyCZ1OMursndM3Ub27Vg=; b=HnOOXLLLkm7HVnlgLx9FWaQYoBwQY3/OrQWz9XRRsR0b8Upz64qRaBSVo5FmN+i4Y8oMmk Y3SbmRCllpegaZgiS4M6cBJulLgbTfofhwTiGgNGnubBak6r97qOuYyjAVLFnwNddTD1bu JBUBNCmep9QZjycaP/gWzScjNTgw1F6bbuTaH1+p/IHLyBjVFhvBF5EcPaptG7qrZrby1Z 81uvZgYrdzgNZLgdr61DnmWf3VRgNZlNMLIPXd2BcPHw48HdqS1hTV9ritxqdhEZDtqF58 UDuBQpoLDLuLM3fvUuRXpEVVkF5fzLm/f5LZMGAThdwfMCGG7nowJysF9LsGlg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbgrC2dkrzsnt; Fri, 10 May 2024 20:45: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 44AKjVpB030799; Fri, 10 May 2024 20:45:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AKjVOK030797; Fri, 10 May 2024 20:45:31 GMT (envelope-from git) Date: Fri, 10 May 2024 20:45:31 GMT Message-Id: <202405102045.44AKjVOK030797@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: f75764fea34a - main - md: Merge two switch statements in mdstart_vnode List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f75764fea34afe59f2db338b3e973eba626243ee Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=f75764fea34afe59f2db338b3e973eba626243ee commit f75764fea34afe59f2db338b3e973eba626243ee Author: John Baldwin AuthorDate: 2024-05-10 20:43:23 +0000 Commit: John Baldwin CommitDate: 2024-05-10 20:43:23 +0000 md: Merge two switch statements in mdstart_vnode While here, use bp->bio_cmd instead of auio.uio_rw to drive read vs write behavior. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D45155 --- sys/dev/md/md.c | 44 ++++++++++++++++++++------------------------ 1 file changed, 20 insertions(+), 24 deletions(-) diff --git a/sys/dev/md/md.c b/sys/dev/md/md.c index 241517898ad4..267554031f23 100644 --- a/sys/dev/md/md.c +++ b/sys/dev/md/md.c @@ -887,23 +887,6 @@ mdstart_vnode(struct md_s *sc, struct bio *bp) int ma_offs, npages; bool mapped; - switch (bp->bio_cmd) { - case BIO_READ: - auio.uio_rw = UIO_READ; - break; - case BIO_WRITE: - auio.uio_rw = UIO_WRITE; - break; - case BIO_FLUSH: - break; - case BIO_DELETE: - if (sc->candelete) - break; - /* FALLTHROUGH */ - default: - return (EOPNOTSUPP); - } - td = curthread; vp = sc->vnode; piov = NULL; @@ -920,7 +903,14 @@ mdstart_vnode(struct md_s *sc, struct bio *bp) * still valid. */ - if (bp->bio_cmd == BIO_FLUSH) { + switch (bp->bio_cmd) { + case BIO_READ: + auio.uio_rw = UIO_READ; + break; + case BIO_WRITE: + auio.uio_rw = UIO_WRITE; + break; + case BIO_FLUSH: do { (void)vn_start_write(vp, &mp, V_WAIT); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); @@ -929,11 +919,17 @@ mdstart_vnode(struct md_s *sc, struct bio *bp) vn_finished_write(mp); } while (error == ERELOOKUP); return (error); - } else if (bp->bio_cmd == BIO_DELETE) { - error = vn_deallocate(vp, &off, &len, 0, - sc->flags & MD_ASYNC ? 0 : IO_SYNC, sc->cred, NOCRED); - bp->bio_resid = len; - return (error); + case BIO_DELETE: + if (sc->candelete) { + error = vn_deallocate(vp, &off, &len, 0, + sc->flags & MD_ASYNC ? 0 : IO_SYNC, sc->cred, + NOCRED); + bp->bio_resid = len; + return (error); + } + /* FALLTHROUGH */ + default: + return (EOPNOTSUPP); } auio.uio_offset = (vm_ooffset_t)bp->bio_offset; @@ -981,7 +977,7 @@ unmapped_step: auio.uio_iovcnt = 1; } iostart = auio.uio_offset; - if (auio.uio_rw == UIO_READ) { + if (bp->bio_cmd == BIO_READ) { vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); error = VOP_READ(vp, &auio, 0, sc->cred); VOP_UNLOCK(vp); From nobody Fri May 10 20:45:32 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbgrD4x8cz5KPVQ; Fri, 10 May 2024 20:45: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 4VbgrD3XKLz4X0c; Fri, 10 May 2024 20:45:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715373932; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n9JhQ4wNSFMpX2TltW92yVUuE6MuDv5p2uKtpG6Magk=; b=SWLpygfFhrGTNbUGCEx8Cl6YwewZILnJYCT9lO/UHJ2B5R3aSQDfuJuTCZ/8yoPy7U4tBe 43uOcOYw9BXxeVygbPo2rhps0YOUoBKEPjb7n/qsYBEbZXGbK7SvLD/Ow1EKcv4FqSAWbn ZSQFwa+CPezdG1Ay8JGYcz80/ugCSgZSAEKgNSaSYqdBNHPwBRQZUB/R9qTbq8xx6dCwfH 1iZYg1RvrZQJ84TDSWxegJTWTcODH1FSmXELze4tvuvZaBilaFPpx0rR8n59TLbACQaPFI 7sR6DLM8O6iXsHxLt3vC0fWKP2oyu4VfqcGzFZ5eo8tdebvfwME4xtECvTYORQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715373932; a=rsa-sha256; cv=none; b=H7vdDifInpvjHIk39tWCTH3q5sNYK8rpb/u09lRYp9lEkV5ZDrml7QjjuFwSaGMwzwCLfh aFqxsJTNIo/FDnrNkV7WPFsQnupnLvsfcJTltS2GvifpB6FD9c/4GecfM5PMCGAJ7oU+gp BeeM05nsBDXl6v6FG0yo7KF8oEyTo1thGFPThq/v68nwDtnODDn5hs77nzaWY1Juj9oUJ8 SoBvowM5CK0YwsmwbU/xZRwn6Qe04J02nrDzh2TkTk8Az2ah0evZV8SwHwwmvFtfmW4Lqp xotpuKxsThefzYcmRMCMfbrHtaqItzdLUNo3z6bozlcAL9HM2e6V/7m4xaB2Gw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715373932; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n9JhQ4wNSFMpX2TltW92yVUuE6MuDv5p2uKtpG6Magk=; b=Fvq1/oR95NwbxSIRFVo2ghOWkZfaKVGlBZc/qSYH48gqFM2y5ONGxIQGWC3YvA+4jgjlUt n9qLPZVaFHMWsBSDhxSdf0Qz41QFiyGxKgmzSib/Xomwx484yCdVTiWBkoTbwqkbh0zJ/a VqLGlFOdYeJYqvjUFGpRUXx1TvgwEHcnL+DfpzwujNSAvFOhIdqL+gwkR73P+YPSrNF2nw PusfO6kmGcRTaKZ5TdXWbsSDeOMm9qwMxJmt9/iwiZlXSCCUwx7BMOfwKtmBPtWBFpgbMr CagJkok7d3N9ieiuBRn2UlP6TD16SEjR9PJ7YxB5Hnm1mtMhnwulsl0HYVKW1g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbgrD389Jzsbr; Fri, 10 May 2024 20:45: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 44AKjW7e030853; Fri, 10 May 2024 20:45:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AKjW2c030850; Fri, 10 May 2024 20:45:32 GMT (envelope-from git) Date: Fri, 10 May 2024 20:45:32 GMT Message-Id: <202405102045.44AKjW2c030850@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 473c90ac04ce - main - uio: Use switch statements when handling UIO_READ vs UIO_WRITE List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 473c90ac04cec0abbb414978c53e9c259c9129e8 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=473c90ac04cec0abbb414978c53e9c259c9129e8 commit 473c90ac04cec0abbb414978c53e9c259c9129e8 Author: John Baldwin AuthorDate: 2024-05-10 20:43:36 +0000 Commit: John Baldwin CommitDate: 2024-05-10 20:43:36 +0000 uio: Use switch statements when handling UIO_READ vs UIO_WRITE This is mostly to reduce the diff with CheriBSD which adds additional constants to enum uio_rw, but also matches the normal style used for uio_segflg. Reviewed by: kib, emaste Obtained from: CheriBSD Differential Revision: https://reviews.freebsd.org/D45142 --- sys/amd64/amd64/mem.c | 13 +++++++++++-- sys/amd64/amd64/uio_machdep.c | 16 ++++++++++++---- sys/arm/arm/uio_machdep.c | 16 ++++++++++++---- sys/arm64/arm64/mem.c | 13 +++++++++++-- sys/arm64/arm64/uio_machdep.c | 16 ++++++++++++---- sys/compat/lindebugfs/lindebugfs.c | 33 +++++++++++++++++++++------------ sys/dev/iicbus/iic.c | 16 +++++++++++----- sys/fs/procfs/procfs_osrel.c | 7 +++++-- sys/i386/i386/uio_machdep.c | 16 ++++++++++++---- sys/kern/kern_physio.c | 14 ++++++++++---- sys/kern/subr_uio.c | 16 ++++++++++++---- sys/kern/vfs_vnops.c | 7 +++++-- sys/powerpc/powerpc/uio_machdep.c | 16 ++++++++++++---- sys/riscv/riscv/mem.c | 13 +++++++++++-- sys/riscv/riscv/uio_machdep.c | 16 ++++++++++++---- sys/ufs/ffs/ffs_suspend.c | 7 +++++-- 16 files changed, 174 insertions(+), 61 deletions(-) diff --git a/sys/amd64/amd64/mem.c b/sys/amd64/amd64/mem.c index e5285586b928..25d22805ed3e 100644 --- a/sys/amd64/amd64/mem.c +++ b/sys/amd64/amd64/mem.c @@ -79,6 +79,7 @@ memrw(struct cdev *dev, struct uio *uio, int flags) struct iovec *iov; void *p; ssize_t orig_resid; + vm_prot_t prot; u_long v, vd; u_int c; int error; @@ -110,8 +111,16 @@ memrw(struct cdev *dev, struct uio *uio, int flags) break; } - if (!kernacc((void *)v, c, uio->uio_rw == UIO_READ ? - VM_PROT_READ : VM_PROT_WRITE)) { + switch (uio->uio_rw) { + case UIO_READ: + prot = VM_PROT_READ; + break; + case UIO_WRITE: + prot = VM_PROT_WRITE; + break; + } + + if (!kernacc((void *)v, c, prot)) { error = EFAULT; break; } diff --git a/sys/amd64/amd64/uio_machdep.c b/sys/amd64/amd64/uio_machdep.c index 7b5c89747bc2..83795653fa28 100644 --- a/sys/amd64/amd64/uio_machdep.c +++ b/sys/amd64/amd64/uio_machdep.c @@ -97,18 +97,26 @@ uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) switch (uio->uio_segflg) { case UIO_USERSPACE: maybe_yield(); - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: error = copyout(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: error = copyin(iov->iov_base, cp, cnt); + break; + } if (error) goto out; break; case UIO_SYSSPACE: - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: bcopy(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: bcopy(iov->iov_base, cp, cnt); + break; + } break; case UIO_NOCOPY: break; diff --git a/sys/arm/arm/uio_machdep.c b/sys/arm/arm/uio_machdep.c index de9bc94317e8..6b8e4352e06f 100644 --- a/sys/arm/arm/uio_machdep.c +++ b/sys/arm/arm/uio_machdep.c @@ -94,20 +94,28 @@ uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) switch (uio->uio_segflg) { case UIO_USERSPACE: maybe_yield(); - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: error = copyout(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: error = copyin(iov->iov_base, cp, cnt); + break; + } if (error) { sf_buf_free(sf); goto out; } break; case UIO_SYSSPACE: - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: bcopy(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: bcopy(iov->iov_base, cp, cnt); + break; + } break; case UIO_NOCOPY: break; diff --git a/sys/arm64/arm64/mem.c b/sys/arm64/arm64/mem.c index 1f44d547204e..2a998ca1f845 100644 --- a/sys/arm64/arm64/mem.c +++ b/sys/arm64/arm64/mem.c @@ -49,6 +49,7 @@ memrw(struct cdev *dev, struct uio *uio, int flags) struct vm_page m; vm_page_t marr; vm_offset_t off, v; + vm_prot_t prot; u_int cnt; int error; @@ -78,8 +79,16 @@ memrw(struct cdev *dev, struct uio *uio, int flags) break; } - if (!kernacc((void *)v, cnt, uio->uio_rw == UIO_READ ? - VM_PROT_READ : VM_PROT_WRITE)) { + switch (uio->uio_rw) { + case UIO_READ: + prot = VM_PROT_READ; + break; + case UIO_WRITE: + prot = VM_PROT_WRITE; + break; + } + + if (!kernacc((void *)v, cnt, prot)) { error = EFAULT; break; } diff --git a/sys/arm64/arm64/uio_machdep.c b/sys/arm64/arm64/uio_machdep.c index c42aee94506e..1c12940419cc 100644 --- a/sys/arm64/arm64/uio_machdep.c +++ b/sys/arm64/arm64/uio_machdep.c @@ -95,18 +95,26 @@ uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) switch (uio->uio_segflg) { case UIO_USERSPACE: maybe_yield(); - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: error = copyout(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: error = copyin(iov->iov_base, cp, cnt); + break; + } if (error) goto out; break; case UIO_SYSSPACE: - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: bcopy(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: bcopy(iov->iov_base, cp, cnt); + break; + } break; case UIO_NOCOPY: break; diff --git a/sys/compat/lindebugfs/lindebugfs.c b/sys/compat/lindebugfs/lindebugfs.c index e63c31cee1d7..2cede0ef213f 100644 --- a/sys/compat/lindebugfs/lindebugfs.c +++ b/sys/compat/lindebugfs/lindebugfs.c @@ -136,19 +136,28 @@ debugfs_fill(PFS_FILL_ARGS) } rc = -ENODEV; - if (uio->uio_rw == UIO_READ && d->dm_fops->read) { - rc = -ENOMEM; - buf = (char *) malloc(sb->s_size, M_DFSINT, M_ZERO | M_NOWAIT); - if (buf != NULL) { - rc = d->dm_fops->read(&lf, buf, sb->s_size, &off); - if (rc > 0) - sbuf_bcpy(sb, buf, strlen(buf)); - - free(buf, M_DFSINT); + switch (uio->uio_rw) { + case UIO_READ: + if (d->dm_fops->read != NULL) { + rc = -ENOMEM; + buf = malloc(sb->s_size, M_DFSINT, M_ZERO | M_NOWAIT); + if (buf != NULL) { + rc = d->dm_fops->read(&lf, buf, sb->s_size, + &off); + if (rc > 0) + sbuf_bcpy(sb, buf, strlen(buf)); + + free(buf, M_DFSINT); + } } - } else if (uio->uio_rw == UIO_WRITE && d->dm_fops->write) { - sbuf_finish(sb); - rc = d->dm_fops->write(&lf, sbuf_data(sb), sbuf_len(sb), &off); + break; + case UIO_WRITE: + if (d->dm_fops->write != NULL) { + sbuf_finish(sb); + rc = d->dm_fops->write(&lf, sbuf_data(sb), sbuf_len(sb), + &off); + } + break; } if (d->dm_fops->release) diff --git a/sys/dev/iicbus/iic.c b/sys/dev/iicbus/iic.c index 8c9dbb6bc145..0d65bdea5782 100644 --- a/sys/dev/iicbus/iic.c +++ b/sys/dev/iicbus/iic.c @@ -239,7 +239,8 @@ iicuio_move(struct iic_cdevpriv *priv, struct uio *uio, int last) num_bytes = MIN(uio->uio_resid, sizeof(buffer)); transferred_bytes = 0; - if (uio->uio_rw == UIO_WRITE) { + switch (uio->uio_rw) { + case UIO_WRITE: error = uiomove(buffer, num_bytes, uio); while ((error == 0) && (transferred_bytes < num_bytes)) { @@ -248,13 +249,14 @@ iicuio_move(struct iic_cdevpriv *priv, struct uio *uio, int last) num_bytes - transferred_bytes, &written_bytes, 0); transferred_bytes += written_bytes; } - - } else if (uio->uio_rw == UIO_READ) { + break; + case UIO_READ: error = iicbus_read(parent, buffer, num_bytes, &transferred_bytes, ((uio->uio_resid <= sizeof(buffer)) ? last : 0), 0); if (error == 0) error = uiomove(buffer, transferred_bytes, uio); + break; } } @@ -290,10 +292,14 @@ iicuio(struct cdev *dev, struct uio *uio, int ioflag) return (error); } - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: addr = priv->addr | LSB; - else + break; + case UIO_WRITE: addr = priv->addr & ~LSB; + break; + } error = iicbus_start(parent, addr, 0); if (error != 0) diff --git a/sys/fs/procfs/procfs_osrel.c b/sys/fs/procfs/procfs_osrel.c index fd6a4d7e0eea..0102090de4da 100644 --- a/sys/fs/procfs/procfs_osrel.c +++ b/sys/fs/procfs/procfs_osrel.c @@ -45,9 +45,11 @@ procfs_doosrel(PFS_FILL_ARGS) if (uio == NULL) return (EOPNOTSUPP); - if (uio->uio_rw == UIO_READ) { + switch (uio->uio_rw) { + case UIO_READ: sbuf_printf(sb, "%d\n", p->p_osrel); - } else { + break; + case UIO_WRITE: sbuf_trim(sb); sbuf_finish(sb); pp = sbuf_data(sb); @@ -62,6 +64,7 @@ procfs_doosrel(PFS_FILL_ARGS) osrel = ov; } p->p_osrel = osrel; + break; } return (0); } diff --git a/sys/i386/i386/uio_machdep.c b/sys/i386/i386/uio_machdep.c index fd0a27eb269c..b41460aef5b4 100644 --- a/sys/i386/i386/uio_machdep.c +++ b/sys/i386/i386/uio_machdep.c @@ -94,10 +94,14 @@ uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) switch (uio->uio_segflg) { case UIO_USERSPACE: maybe_yield(); - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: error = copyout(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: error = copyin(iov->iov_base, cp, cnt); + break; + } if (error) { sf_buf_free(sf); sched_unpin(); @@ -105,10 +109,14 @@ uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) } break; case UIO_SYSSPACE: - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: bcopy(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: bcopy(iov->iov_base, cp, cnt); + break; + } break; case UIO_NOCOPY: break; diff --git a/sys/kern/kern_physio.c b/sys/kern/kern_physio.c index 91026402db05..79b7694192e4 100644 --- a/sys/kern/kern_physio.c +++ b/sys/kern/kern_physio.c @@ -116,14 +116,17 @@ physio(struct cdev *dev, struct uio *uio, int ioflag) #ifdef RACCT if (racct_enable) { PROC_LOCK(curproc); - if (uio->uio_rw == UIO_READ) { + switch (uio->uio_rw) { + case UIO_READ: racct_add_force(curproc, RACCT_READBPS, uio->uio_iov[i].iov_len); racct_add_force(curproc, RACCT_READIOPS, 1); - } else { + break; + case UIO_WRITE: racct_add_force(curproc, RACCT_WRITEBPS, uio->uio_iov[i].iov_len); racct_add_force(curproc, RACCT_WRITEIOPS, 1); + break; } PROC_UNLOCK(curproc); } @@ -131,12 +134,15 @@ physio(struct cdev *dev, struct uio *uio, int ioflag) while (uio->uio_iov[i].iov_len) { g_reset_bio(bp); - if (uio->uio_rw == UIO_READ) { + switch (uio->uio_rw) { + case UIO_READ: bp->bio_cmd = BIO_READ; curthread->td_ru.ru_inblock++; - } else { + break; + case UIO_WRITE: bp->bio_cmd = BIO_WRITE; curthread->td_ru.ru_oublock++; + break; } bp->bio_offset = uio->uio_offset; base = uio->uio_iov[i].iov_base; diff --git a/sys/kern/subr_uio.c b/sys/kern/subr_uio.c index cbc4b0c0ed8e..ff63ac3e2dc0 100644 --- a/sys/kern/subr_uio.c +++ b/sys/kern/subr_uio.c @@ -249,19 +249,27 @@ uiomove_faultflag(void *cp, int n, struct uio *uio, int nofault) switch (uio->uio_segflg) { case UIO_USERSPACE: maybe_yield(); - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: error = copyout(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: error = copyin(iov->iov_base, cp, cnt); + break; + } if (error) goto out; break; case UIO_SYSSPACE: - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: bcopy(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: bcopy(iov->iov_base, cp, cnt); + break; + } break; case UIO_NOCOPY: break; diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 0e864f959e36..aff3947f91cd 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -1259,12 +1259,15 @@ vn_io_fault_doio(struct vn_io_fault_args *args, struct uio *uio, uio, args->cred, args->flags, td); break; case VN_IO_FAULT_VOP: - if (uio->uio_rw == UIO_READ) { + switch (uio->uio_rw) { + case UIO_READ: error = VOP_READ(args->args.vop_args.vp, uio, args->flags, args->cred); - } else if (uio->uio_rw == UIO_WRITE) { + break; + case UIO_WRITE: error = VOP_WRITE(args->args.vop_args.vp, uio, args->flags, args->cred); + break; } break; default: diff --git a/sys/powerpc/powerpc/uio_machdep.c b/sys/powerpc/powerpc/uio_machdep.c index ee0f9f2a0795..63911963279a 100644 --- a/sys/powerpc/powerpc/uio_machdep.c +++ b/sys/powerpc/powerpc/uio_machdep.c @@ -100,20 +100,28 @@ uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) switch (uio->uio_segflg) { case UIO_USERSPACE: maybe_yield(); - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: error = copyout(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: error = copyin(iov->iov_base, cp, cnt); + break; + } if (error) { sf_buf_free(sf); goto out; } break; case UIO_SYSSPACE: - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: bcopy(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: bcopy(iov->iov_base, cp, cnt); + break; + } break; case UIO_NOCOPY: break; diff --git a/sys/riscv/riscv/mem.c b/sys/riscv/riscv/mem.c index 7bf48a02e16a..9792c01fa673 100644 --- a/sys/riscv/riscv/mem.c +++ b/sys/riscv/riscv/mem.c @@ -50,6 +50,7 @@ memrw(struct cdev *dev, struct uio *uio, int flags) struct iovec *iov; struct vm_page m; vm_page_t marr; + vm_prot_t prot; u_int cnt; int error; @@ -79,8 +80,16 @@ memrw(struct cdev *dev, struct uio *uio, int flags) break; } - if (!kernacc((void *)v, cnt, uio->uio_rw == UIO_READ ? - VM_PROT_READ : VM_PROT_WRITE)) { + switch (uio->uio_rw) { + case UIO_READ: + prot = VM_PROT_READ; + break; + case UIO_WRITE: + prot = VM_PROT_WRITE; + break; + } + + if (!kernacc((void *)v, cnt, prot)) { error = EFAULT; break; } diff --git a/sys/riscv/riscv/uio_machdep.c b/sys/riscv/riscv/uio_machdep.c index 2e6ed2337fc5..002685c98ccf 100644 --- a/sys/riscv/riscv/uio_machdep.c +++ b/sys/riscv/riscv/uio_machdep.c @@ -95,18 +95,26 @@ uiomove_fromphys(vm_page_t ma[], vm_offset_t offset, int n, struct uio *uio) switch (uio->uio_segflg) { case UIO_USERSPACE: maybe_yield(); - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: error = copyout(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: error = copyin(iov->iov_base, cp, cnt); + break; + } if (error) goto out; break; case UIO_SYSSPACE: - if (uio->uio_rw == UIO_READ) + switch (uio->uio_rw) { + case UIO_READ: bcopy(cp, iov->iov_base, cnt); - else + break; + case UIO_WRITE: bcopy(iov->iov_base, cp, cnt); + break; + } break; case UIO_NOCOPY: break; diff --git a/sys/ufs/ffs/ffs_suspend.c b/sys/ufs/ffs/ffs_suspend.c index e23e12cc8be4..3afbab82cba5 100644 --- a/sys/ufs/ffs/ffs_suspend.c +++ b/sys/ufs/ffs/ffs_suspend.c @@ -138,7 +138,8 @@ ffs_susp_rdwr(struct cdev *dev, struct uio *uio, int ioflag) NOCRED, &bp); if (error != 0) goto out; - if (uio->uio_rw == UIO_WRITE) { + switch (uio->uio_rw) { + case UIO_WRITE: error = copyin(base, bp->b_data, len); if (error != 0) { bp->b_flags |= B_INVAL | B_NOCACHE; @@ -148,11 +149,13 @@ ffs_susp_rdwr(struct cdev *dev, struct uio *uio, int ioflag) error = bwrite(bp); if (error != 0) goto out; - } else { + break; + case UIO_READ: error = copyout(bp->b_data, base, len); brelse(bp); if (error != 0) goto out; + break; } uio->uio_iov[i].iov_base = (char *)uio->uio_iov[i].iov_base + len; From nobody Fri May 10 20:45:33 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbgrG0hyQz5KP6p; Fri, 10 May 2024 20:45: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 4VbgrF5Vqrz4XSP; Fri, 10 May 2024 20:45:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715373933; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kh1n0f4lw2ovAa/1XX55lOVaWNbJSindQKi/4oYQvwg=; b=GihwCjCJHCT1LO8Oqeo2xIrJ51TwvIhfzDyVrl57vW7eSKTvQELpOahiBWMzMfk2g6xpa7 k1ng5pfm6mLQUSOKzBqb+jAn+iMUXWsrFfBwDmObX9rsm2PQFPZFw0u52iLfskPCOfl7j+ zrubbzqbvVXKJ/AwAlH1xW7HqC+eZtbn8oTvk3kkQKo2LE4e1mA2cAPwDQipLYsgE7DCia MdDlqiFsWMP2jkbLV2pyYZjE6t9sENNFWPCWbx8SuHmkKRmqV1Fl1ISKIUBSQweUmWxapv min6O4eWO/YY2bEErVXvT/gSbwNQ9uxftQ19SrFHYyHdMkct1netn+WArRv9rA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715373933; a=rsa-sha256; cv=none; b=jM5cfTwljNj/ckclUvG3UljdAq0xAz86sDA+T5QqrA89IqIrYmfG4zudF+OFA+I988bEbq f9icruwJeSJcoVa6MfPoEiPVUfhfYV/fNPvHt0g2QkXx40xBbj4vZTAO0gLCwdyiqRY7F0 z8qrB2xjyB1oK6kSoJoj7smQj0MEgovey0j+SLAKnXl+HqVPWghrMqy7Q6ZDWBt+iKysE2 uS9ZPzUtCGlPV2d/e3y40qN+HEaR+aQCc2sI162sIdi9NN1oY9lEwtXg3mvxml3pF65Oke TAWy6VWmhHrH7R5elPwwX05goxeP0Nb2g53YgcaQzQN7CUKGRYrsSyabkESXfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715373933; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kh1n0f4lw2ovAa/1XX55lOVaWNbJSindQKi/4oYQvwg=; b=vJ71LgX0Zb7IQ4iWhkXVDoQqripmUvVVmz29GrC9MYVrfLrgxXT+XDG9VV5sswajCxzlBf OEIoA/koXs/WsjpFIApuDOhbaZMwdSk97jBGgjCyRNDFASHkWfp7oLyBqraOYlc0G3/Vsh LEjhR/ambPXqhG7mGTD0q+wpN2fMNh17hXkz2TUN1u40xcTTkWOUVTzJz9wZeLy93nhDI0 pmuv/OP6S84vgSR5VmMlZBUipuffHRYuuCXZd5854V8ncPT0jIgtLAV8wmbScPgv2cETs6 vfV/awG7l0V32plw3SD9heBdaWsBwqB+wpt1ZQ3SI5+RkAV+TsPf48RJKjgcvA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbgrF4CL9zsbs; Fri, 10 May 2024 20:45: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 44AKjXHT030921; Fri, 10 May 2024 20:45:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AKjX8J030918; Fri, 10 May 2024 20:45:33 GMT (envelope-from git) Date: Fri, 10 May 2024 20:45:33 GMT Message-Id: <202405102045.44AKjX8J030918@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 9e0164087cbf - main - vm: Change the return types of kernacc and useracc to bool List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9e0164087cbf395624f63a5343357e2f6bd0370c Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=9e0164087cbf395624f63a5343357e2f6bd0370c commit 9e0164087cbf395624f63a5343357e2f6bd0370c Author: John Baldwin AuthorDate: 2024-05-10 20:43:56 +0000 Commit: John Baldwin CommitDate: 2024-05-10 20:43:56 +0000 vm: Change the return types of kernacc and useracc to bool Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D45156 --- sys/vm/vm_extern.h | 4 ++-- sys/vm/vm_glue.c | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/vm/vm_extern.h b/sys/vm/vm_extern.h index b50abab7380c..8c9addda1196 100644 --- a/sys/vm/vm_extern.h +++ b/sys/vm/vm_extern.h @@ -83,8 +83,8 @@ void kmem_init(vm_offset_t, vm_offset_t); void kmem_init_zero_region(void); void kmeminit(void); -int kernacc(void *, int, int); -int useracc(void *, int, int); +bool kernacc(void *, int, int); +bool useracc(void *, int, int); int vm_fault(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold); void vm_fault_copy_entry(vm_map_t, vm_map_t, vm_map_entry_t, vm_map_entry_t, diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c index 979a0fc27120..641800413e68 100644 --- a/sys/vm/vm_glue.c +++ b/sys/vm/vm_glue.c @@ -122,7 +122,7 @@ * just checking the vm_map_entry is sufficient within the kernel's address * space. */ -int +bool kernacc(void *addr, int len, int rw) { boolean_t rv; @@ -134,7 +134,7 @@ kernacc(void *addr, int len, int rw) if ((vm_offset_t)addr + len > vm_map_max(kernel_map) || (vm_offset_t)addr + len < (vm_offset_t)addr) - return (FALSE); + return (false); prot = rw; saddr = trunc_page((vm_offset_t)addr); @@ -154,7 +154,7 @@ kernacc(void *addr, int len, int rw) * vm_fault_quick(), or copyin()/copout()/su*()/fu*() functions should be * used in conjunction with this call. */ -int +bool useracc(void *addr, int len, int rw) { boolean_t rv; @@ -167,7 +167,7 @@ useracc(void *addr, int len, int rw) map = &curproc->p_vmspace->vm_map; if ((vm_offset_t)addr + len > vm_map_max(map) || (vm_offset_t)addr + len < (vm_offset_t)addr) { - return (FALSE); + return (false); } vm_map_lock_read(map); rv = vm_map_check_protection(map, trunc_page((vm_offset_t)addr), From nobody Fri May 10 20:51:31 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vbgz76YDjz5KPwX; Fri, 10 May 2024 20:51: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 4Vbgz75zjgz4YMJ; Fri, 10 May 2024 20:51:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715374291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hFJhSddDwloXi/XBWWhdcjV2xa9KiE+qTFbT2rqvIiY=; b=NWt5NkP1utSmIT3Ghrz8V3Kg5iON66uqwYOV3lm/dyGpaV1ypBFk2/O9rt4t/EnTNTobtc KjjkFBIJceQ1yTJyUK9QLwKadThkYraCJo/3P1nDn+wRxy+selhP/W0p4UwsM1E3SYlT+M 47Hprzv57JCBys44b3bXdoGJu4zYjOvVTkyjVpg+rsIa90FrmZSLDSTJyKbwc5mc6WBopw CheQXYPiiX97FnafPxYWf7eOhbVtYTpkxINXWekhmkCevI6rsmNBY0oRvq9cT36L2bCbCH 0f+OTJMrY4rtOr+IzE1Xoq44e+ppFrR6U0XXQwXXa7hXvjK1MGYMZyWc3R5RUQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715374291; a=rsa-sha256; cv=none; b=Tz5P3FrEhvkfs1hlKKUB//wJ0eW1e6EpB+dCL0tp1gWMwo2HKEu/5fOVWVSjH0ZpdRCIRv lSyfr3NpDM9hhHt0dZDaUt38i9BhUGoyF8wiOoeXbU72NF01vrtJOBC+CHZ/vxkJD1HD9G 4Hvh+602zgVoMSCKHeJSE1JpAeOa+QDunvdhgtvoQ/r0VAQEf7mHigwTCaI0KWf5WHhT/e vjRjM5u54v3uZk3lPMtB/yc69BFwMxf3e41LyzgzVX9DVFp1ZXll9Tfz27UYkZmCPI9FUb 46vWKXcHgkyfhmWQKYV2M9j52UIf9GKhQmcUQiZdG0Kf24WHkTeUGcxDpk+tAw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715374291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hFJhSddDwloXi/XBWWhdcjV2xa9KiE+qTFbT2rqvIiY=; b=raWHP4xh2mPjy9UyIrPi47xNAixHRT6Gnft5xz+B0SUlfiX1V3Cos2kl32My9IuJ1S9UmE EGcU9UXoOjKFd7EAYOqCYViqY1vTm/0SusiFNXHSCa0YS/z37DgGb97x5rQBl+I7h82bBv JdXj8gFHwKlRCC3MPDZfLLjUHbLqyy6N/3bKABOe70bS/MuyqTxyUnU5RJvlrk+gm75CSG JBtcOsk/TgYtvDfu0PJRvknI5quKGxGr/0iES+1h1BGiKBuUWyyyaZJnXnXl1M4i94e6Z4 fM+PEnL4Q5etcuOCkmBQaFbQmHjzvJjFvgVXrwxqn0YTchFS2qfu5NK75nNrRg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vbgz75ZwYzs8l; Fri, 10 May 2024 20:51: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 44AKpVkc043287; Fri, 10 May 2024 20:51:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AKpV0h043284; Fri, 10 May 2024 20:51:31 GMT (envelope-from git) Date: Fri, 10 May 2024 20:51:31 GMT Message-Id: <202405102051.44AKpV0h043284@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a7cc56b28fb1 - main - linux: Adjust rlimit SIGPENDING & MSGQUEUE behaviour to match linprocfs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a7cc56b28fb1615a8ac4ebe826312a5d8a0f17da Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a7cc56b28fb1615a8ac4ebe826312a5d8a0f17da commit a7cc56b28fb1615a8ac4ebe826312a5d8a0f17da Author: Ricardo Branco AuthorDate: 2024-05-10 14:20:16 +0000 Commit: Warner Losh CommitDate: 2024-05-10 20:50:04 +0000 linux: Adjust rlimit SIGPENDING & MSGQUEUE behaviour to match linprocfs Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1227 --- sys/compat/linux/linux_misc.c | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/sys/compat/linux/linux_misc.c b/sys/compat/linux/linux_misc.c index cb62b0e70c0d..9b8ab193f2bd 100644 --- a/sys/compat/linux/linux_misc.c +++ b/sys/compat/linux/linux_misc.c @@ -1125,16 +1125,16 @@ linux_getgroups(struct thread *td, struct linux_getgroups_args *args) } static bool -linux_get_dummy_limit(l_uint resource, struct rlimit *rlim) +linux_get_dummy_limit(struct thread *td, l_uint resource, struct rlimit *rlim) { + ssize_t size; + int res, error; if (linux_dummy_rlimits == 0) return (false); switch (resource) { case LINUX_RLIMIT_LOCKS: - case LINUX_RLIMIT_SIGPENDING: - case LINUX_RLIMIT_MSGQUEUE: case LINUX_RLIMIT_RTTIME: rlim->rlim_cur = LINUX_RLIM_INFINITY; rlim->rlim_max = LINUX_RLIM_INFINITY; @@ -1144,6 +1144,23 @@ linux_get_dummy_limit(l_uint resource, struct rlimit *rlim) rlim->rlim_cur = 0; rlim->rlim_max = 0; return (true); + case LINUX_RLIMIT_SIGPENDING: + error = kernel_sysctlbyname(td, + "kern.sigqueue.max_pending_per_proc", + &res, &size, 0, 0, 0, 0); + if (error != 0) + return (false); + rlim->rlim_cur = res; + rlim->rlim_max = res; + return (true); + case LINUX_RLIMIT_MSGQUEUE: + error = kernel_sysctlbyname(td, + "kern.ipc.msgmnb", &res, &size, 0, 0, 0, 0); + if (error != 0) + return (false); + rlim->rlim_cur = res; + rlim->rlim_max = res; + return (true); default: return (false); } @@ -1181,7 +1198,7 @@ linux_old_getrlimit(struct thread *td, struct linux_old_getrlimit_args *args) struct rlimit bsd_rlim; u_int which; - if (linux_get_dummy_limit(args->resource, &bsd_rlim)) { + if (linux_get_dummy_limit(td, args->resource, &bsd_rlim)) { rlim.rlim_cur = bsd_rlim.rlim_cur; rlim.rlim_max = bsd_rlim.rlim_max; return (copyout(&rlim, args->rlim, sizeof(rlim))); @@ -1222,7 +1239,7 @@ linux_getrlimit(struct thread *td, struct linux_getrlimit_args *args) struct rlimit bsd_rlim; u_int which; - if (linux_get_dummy_limit(args->resource, &bsd_rlim)) { + if (linux_get_dummy_limit(td, args->resource, &bsd_rlim)) { rlim.rlim_cur = bsd_rlim.rlim_cur; rlim.rlim_max = bsd_rlim.rlim_max; return (copyout(&rlim, args->rlim, sizeof(rlim))); @@ -2009,7 +2026,7 @@ linux_prlimit64(struct thread *td, struct linux_prlimit64_args *args) int error; if (args->new == NULL && args->old != NULL) { - if (linux_get_dummy_limit(args->resource, &rlim)) { + if (linux_get_dummy_limit(td, args->resource, &rlim)) { lrlim.rlim_cur = rlim.rlim_cur; lrlim.rlim_max = rlim.rlim_max; return (copyout(&lrlim, args->old, sizeof(lrlim))); From nobody Fri May 10 21:08:52 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhM90szBz5KRDP; Fri, 10 May 2024 21: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 4VbhM90NXlz4bTM; Fri, 10 May 2024 21: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=1715375333; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8hcy2gdcp6C4epJriRU75YIUQGo4p/gQaTu6LrZZ6EA=; b=kyXOf2dYPxtCwLnmaFf71wewoFvgogizH1K+ASgnaclyHQlNpA8JuneSnhxWWEQt6ZuYtD 7kfUgK8NRcSDyCHjYmwmyGB3LGBVwfw7eMq0oLHs6KhoHZYSQEDMoGCHkpOIcXSTVYAzv8 IqJPZgI4yfa3W0oVSDWadZBty6++sAB5RicsZ4amsqpG3CyU5xhnJG9vCKDQhotEZRwcJn DK1J/SCUOYZqkcXIiGiduGwER4xTJaEdaq45h/17QyK4zrS0QcQQHiUViLmBF+1Or0ZsKW IY/9I1uXuzqhfgtPSwkwbw4v3o4XaG7SkoVNWb3I8ze50aZyh12RzwiopVdxnQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715375333; a=rsa-sha256; cv=none; b=RmDTvCvNwQ3ubnPPJ1eXwzWd6rVfQ3UBnq0WpFPZMbkb/uzEzmlete5+QBnaqr3TzBP5ZZ VAqO26mzEMvfjLf7b6BU2Ub8JCF9Z77mKjNx62L80TGa90b+IAUM2y5FsnGYm9AK+rGZyU OQtgGGrdH0n5qOI+QHFTaE2CMg/4ALNM4biXj438fiADHjjVDWl3wtlZcCEGEv0cOUmccw lZ6pTNTsScfn4+0KNa2Rnec/+yq/lTbwQqfs6Axh9rjFEu0vFD8fXIItGgnkQVaexovayh w/W3FosEpj8zng59/LC3upk77A5CtEkAUWt3daVJi/+oBuXV55yx9lLfuwnFXw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375333; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8hcy2gdcp6C4epJriRU75YIUQGo4p/gQaTu6LrZZ6EA=; b=xEVFYMUSCWMIWmji6BsdY+cqSQwZ18clDc2BMsAt/JjPMm0s4bQOkmyUM88ZtCssS+Ky20 7Vr6X5VsctEbkp0AnchOawTW2shucJbEjyhhG1gO+qGN/WTK7r5dXYjsKvf5dZz6vgYmux WYJ3X9oOnZngoTrlWQ+GuC2cj5Ajasjr+12HNfAmWFi5Y2sMfn/v5AnkX02XmI2QJeY1mt hBqRBXVH4aDVwRzauiQY/hfE/K1SacwqcWNiG2goo6YYU4qGt9zPPzZQ8q5unHGbdz9UrY Sz2mSJ32ZI+dxh9XjLSGPsfecAYqwIMSgryTaM5m+p2yvw3U1a3LA3awqhFODg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhM86z9LzsY3; Fri, 10 May 2024 21:08: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 44AL8qPG066337; Fri, 10 May 2024 21:08:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44AL8qos066334; Fri, 10 May 2024 21:08:52 GMT (envelope-from git) Date: Fri, 10 May 2024 21:08:52 GMT Message-Id: <202405102108.44AL8qos066334@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 467e3e2f2052 - main - CONTRIBUTING.md/style: spring cleaning List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 467e3e2f2052faa012e6100915b6f99a0c74bfb9 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=467e3e2f2052faa012e6100915b6f99a0c74bfb9 commit 467e3e2f2052faa012e6100915b6f99a0c74bfb9 Author: Alexander Ziaee AuthorDate: 2024-05-10 06:07:59 +0000 Commit: Warner Losh CommitDate: 2024-05-10 21:07:03 +0000 CONTRIBUTING.md/style: spring cleaning + move Lua to alphabetize subsections + word manpages like other subsections + man PR's shouldn't bump document date MFC after: (maybe MFC to BETA3 along w/ e7ff917057ea ?) --- CONTRIBUTING.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c26b1d335c5f..8e79652a09d2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -106,19 +106,21 @@ command can help minimize churn by only formatting the areas nearby the changes. not perfect, using these tools will maximize your chances of not having style comments on your pull requests. +For [Lua](https://www.lua.org), see +[style.lua(9)](https://man.freebsd.org/cgi/man.cgi?query=style.lua&sektion=9) +for details. Lua is used for the boot loader and a few scripts in the base system. + For Makefiles changes, see [style.Makefile(5)](https://man.freebsd.org/cgi/man.cgi?query=style.Makefile&sektion=5) for details. FreeBSD's base system uses the in-tree make, not GNU Make, so [make(1)](https://man.freebsd.org/cgi/man.cgi?query=make&sektion=1) is another useful resource. -The project uses mdoc for all its man pages. Changes should pass `mandoc -Tlint` and igor (install the latter with `pkg install igor`). -Please be sure to observe the one-sentence-per-line rule so manual pages properly render. Any semantic changes to the manual pages should bump the date. -[style.mdoc(5)](https://man.freebsd.org/cgi/man.cgi?query=style.mdoc&sektion=5) has the all details. - -For [Lua](https://www.lua.org), please see -[style.lua(9)](https://man.freebsd.org/cgi/man.cgi?query=style.lua&sektion=9) -for details. Lua is used for the boot loader and a few scripts in the base system. +For manual page changes, see +[style.mdoc(5)](https://man.freebsd.org/cgi/man.cgi?query=style.mdoc&sektion=5) +for details. Changes should pass `mandoc -Tlint` and igor (install the latter with `pkg install igor`). +Please be sure to observe the one-sentence-per-line rule so manual pages properly render. +Proposed changes to manual pages should not bump the document date until merged. For shell scripts, avoid using bash. The system shell (/bin/sh) is preferred. Shell scripts in the base system cannot use bash or bash extensions From nobody Fri May 10 21:16:57 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhXT3szrz5KRqN; Fri, 10 May 2024 21:16: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 4VbhXT3BcGz4c7f; Fri, 10 May 2024 21:16:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375817; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f0KBnlO8VWaVyNOTN01c8w+qZItO3bw8EhNcfz0SE6w=; b=JK75Br7+He6rhssZolb26lHs2q5yevSI7+oB41SHRBc9Se/JnabHwtXtkWMCTG1zRE4rNs sIYgJEyFWpTjGe/S3gOuzHR4ntPFMZH0lSSSk9g1SvPPRklVbBPIf13F4NGV6e78AvQOgx MzfHGo2ZNsuwAoaXQkwn1QrHl80fdGMMGqbv7j2pHXb/phKenVCw/v8nNXkldF9AR6maPz Ao5nSjZu6FPhX50f4dZyg4fppGxDzBwuqXeIpKhOFv5YG7+gLDkTT+bdqvIUK1B1KXzC8B Ejot2HVYDiZxbhCUwzgnY55rLgzGJuWrDsiNXS57/UyrcjAEl1zK5hHv03r/iw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715375817; a=rsa-sha256; cv=none; b=flPHQfiYPqI4GxH2josF0pGbHgSWMH1fJCyP+QDFhN0zi0cGog+PZ9OwU9riOYr6wGM3qD LZSvvrOU6+JGcrEtcGjSAa0f0iNGqGxDK0/Np484z0cpKbgh9jyRqlvyz4SESfWgjQP8xJ RahLaqXHwcKPpV7FChKq4mNb6VEO+ncJxmdNrAPyPDdvO523T3039XAYbWG5QVLPyJ5tvx k7/JvwjsEsxmGpQYH6uXaiYScQAE0VeA7p+OnF8PR4xffrJV4rFMQInoM6FDqfVQBukfvE gdTs0fhjs8thuZtsfsy0O52+Qkk85zBZ0I/IoYfMzrjJ7s4UU4I34Qp5LfQltA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375817; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f0KBnlO8VWaVyNOTN01c8w+qZItO3bw8EhNcfz0SE6w=; b=iUsSOLEcS8xc8HpObcAIfLvkY0R+Fyn2T3hSUTnmvPkZUVCMdaMOZ5S3ohksaNieg6ayjf VRAQfxqqOKutUFbudgW79i4Ahxgj9Nymh+Smg2gec0G9Ph7bjNo5Uo0n5zNqpZdsocriha XnPuhaQkbqg+pu4ytK4rnGeeJnmlJV3b69hm43OzMPlKbiOsws2KtF1n29NiZ0rZJuwAmY mOL8jVcd1YKrcWVSRPL9yuP4UEvzPedEIGCIv3bH2s8kOuhYrzJ/Isg9Vtf8bVeNLFX2sU xqUY3A4pIynbTkI/etbibdi0CoiOS+BeRwj29Oe7pwCNOyujlptwdAmw7MdVOw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhXT2bMmztQ1; Fri, 10 May 2024 21:16: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 44ALGv8B082764; Fri, 10 May 2024 21:16:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALGvSj082761; Fri, 10 May 2024 21:16:57 GMT (envelope-from git) Date: Fri, 10 May 2024 21:16:57 GMT Message-Id: <202405102116.44ALGvSj082761@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 816c4d3dcf99 - main - tftpd: Add missing `-S` option to synopsis. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 816c4d3dcf99adcd40a03d93431237ddbd23bbdf Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=816c4d3dcf99adcd40a03d93431237ddbd23bbdf commit 816c4d3dcf99adcd40a03d93431237ddbd23bbdf Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 21:15:37 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 21:16:26 +0000 tftpd: Add missing `-S` option to synopsis. MFC after: 3 days Sponsored by: Klara, Inc. Reviewed by: imp, markj Differential Revision: https://reviews.freebsd.org/D45129 --- libexec/tftpd/tftpd.8 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libexec/tftpd/tftpd.8 b/libexec/tftpd/tftpd.8 index d71da9f1f9ea..558f7bdf809a 100644 --- a/libexec/tftpd/tftpd.8 +++ b/libexec/tftpd/tftpd.8 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 20, 2023 +.Dd May 8, 2024 .Dt TFTPD 8 .Os .Sh NAME @@ -33,11 +33,11 @@ .Nd Internet Trivial File Transfer Protocol server .Sh SYNOPSIS .Nm tftpd -.Op Fl cdClnow +.Op Fl CcdlnoSw .Op Fl F Ar strftime-format .Op Fl s Ar directory -.Op Fl u Ar user .Op Fl U Ar umask +.Op Fl u Ar user .Op Ar directory ... .Sh DESCRIPTION The From nobody Fri May 10 21:16:58 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhXV4l5Qz5KRqP; Fri, 10 May 2024 21:16: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 4VbhXV3R2sz4bxS; Fri, 10 May 2024 21:16:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dYla0yt8UqRi2dED7QE/kAubiC11KS3iFxRqnVxxE8U=; b=bj138J/5cYd8uvPk+fLvfsxDBv82qQKgdngKrpNFSEbPlpvB0CgYY2bcidE/NG9gZbUHko LDrl84kQ9jWsT5mMvVlboD/8jpZlPMUbpu8vVosuyJtDjmw+5b3/JgEwpEiq68KIsUkDDc zlllrHg1jKDZJjy1ZDe2MyWJcIIyB701hw7JC3MHtzn/5b2mHYAd31xCSWmGJPfajLp0H2 /WnW8BOrFKEi2vvKLdJOzFHekrtuwnm6JCKg54zOLybPmrWjTKTyC7iu6k39uuW63mqdTZ KnNy39QHulI8HTat36+FoZnhmrIT52RWC9Oq+oUT+dotck6bziqGoL0pTqLd8w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715375818; a=rsa-sha256; cv=none; b=vXsyPogodCn6GYVvLE6kReENLuUveFERAzKcZGoydlcwrme0p7smkdVjw/V0jwbsmFY5S9 FHdgNeaq3ELOBfh42Kvf30iYBLDsegnbhpdvyAIpEyAZ6gUghcdFGGW5+OEvyXA2GvEWNL IH/49jfOrDYDXBgO8EqeeUg3rt09vKGsQH+JDFFCwG3F+1Gqwf/ubmJCA+YfgplRZmjsOW ulV1agndPj4apC1u6rbUpOw8YO/pPMGg6XaUxYiNX0xbBxPNbnrd1ZRTE2Uhx7JfGH+og1 3MM+xgG18jR5mYEb/yPZojB8SnpbElXoZkODbY1y98jobImrSEEIm84u6K0OgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375818; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dYla0yt8UqRi2dED7QE/kAubiC11KS3iFxRqnVxxE8U=; b=s7W9wnHHCNrtEHGizlHNjvdl+sit3yn5Q61WiTUbQujsh2qhFoW1k38lrvabg+00BXcWN3 cfMnFN4A3NtEe40UzDQ0PcZZhn5Ix3j/I6ofATf7e4icleEfIXtiMUsJkJH1LqvCxVaItH GVl2e32D6UryctB3DjPJ87+6gnpJyn5fz25Iv5RnIkHvGgSih2HGo8QXEtyfsx/seQogTC JHraLVjBQUxMwLmwq097D3xmAa3MgV+OU91VE9iOMnWUkAfrisarlifUtulSo6jUgq+Ofd VYr3Z3A6mUPLbskO2hvgJhLUkqU6JqpFlmRcXATY99B77UXgwGp934mpRrp7Cw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhXV33FKztQ2; Fri, 10 May 2024 21:16: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 44ALGwxG082806; Fri, 10 May 2024 21:16:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALGwEV082803; Fri, 10 May 2024 21:16:58 GMT (envelope-from git) Date: Fri, 10 May 2024 21:16:58 GMT Message-Id: <202405102116.44ALGwEV082803@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 1111da6b7c61 - main - tftpd: Drop unneeded includes. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1111da6b7c612c571453a23a8dd02fd5e7e40b18 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=1111da6b7c612c571453a23a8dd02fd5e7e40b18 commit 1111da6b7c612c571453a23a8dd02fd5e7e40b18 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 21:15:42 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 21:16:26 +0000 tftpd: Drop unneeded includes. MFC after: 3 days Sponsored by: Klara, Inc. Reviewed by: imp, markj Differential Revision: https://reviews.freebsd.org/D45130 --- libexec/tftpd/tftp-file.h | 1 - libexec/tftpd/tftp-io.h | 1 - libexec/tftpd/tftp-options.h | 1 - libexec/tftpd/tftp-transfer.h | 1 - libexec/tftpd/tftp-utils.h | 1 - 5 files changed, 5 deletions(-) diff --git a/libexec/tftpd/tftp-file.h b/libexec/tftpd/tftp-file.h index 0fb7f6c1decc..c424e5cbc75b 100644 --- a/libexec/tftpd/tftp-file.h +++ b/libexec/tftpd/tftp-file.h @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include int write_init(int fd, FILE *f, const char *mode); size_t write_file(char *buffer, int count); int write_close(void); diff --git a/libexec/tftpd/tftp-io.h b/libexec/tftpd/tftp-io.h index 85934e824a1a..1d6bc2bd8b5e 100644 --- a/libexec/tftpd/tftp-io.h +++ b/libexec/tftpd/tftp-io.h @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include #define RP_NONE 0 #define RP_RECVFROM -1 #define RP_TOOSMALL -2 diff --git a/libexec/tftpd/tftp-options.h b/libexec/tftpd/tftp-options.h index c68db53de4e2..f1b0a5cfaf32 100644 --- a/libexec/tftpd/tftp-options.h +++ b/libexec/tftpd/tftp-options.h @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include /* * Options */ diff --git a/libexec/tftpd/tftp-transfer.h b/libexec/tftpd/tftp-transfer.h index 48431ebbc863..449f29c246e0 100644 --- a/libexec/tftpd/tftp-transfer.h +++ b/libexec/tftpd/tftp-transfer.h @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include int tftp_send(int peer, uint16_t *block, struct tftp_stats *tp); int tftp_receive(int peer, uint16_t *block, struct tftp_stats *tp, struct tftphdr *firstblock, size_t fb_size); diff --git a/libexec/tftpd/tftp-utils.h b/libexec/tftpd/tftp-utils.h index 763b3b493c7e..f87bbcccc71c 100644 --- a/libexec/tftpd/tftp-utils.h +++ b/libexec/tftpd/tftp-utils.h @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include /* */ #define TIMEOUT 5 From nobody Fri May 10 21:16:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhXW6Cttz5KRqQ; Fri, 10 May 2024 21:16: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 4VbhXW498Pz4cGF; Fri, 10 May 2024 21:16:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375819; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q4wasZkRNQLiR1HXy8ygNJ5Fyl2nrZO33IKGsZ7djqs=; b=TCt1ygRhFv/+/CN/9NtbWq25TRxQTsSwQJJgj9Eqk8pi8RgN1MKYTnEtQvRLYEgKbJ5U2Q fEEKHbIfF9c9PEnbSfvt658ruAOjslvoC3iry1ttZaysQQi9mtE7ShNiVowANS8e9QrLkP 6g2kZUYR1jbTAuU9/hCtXfDG4A37EIKCe8Vnt+2b0q916pXVr67ZXT4Ow5p/SbN5MULpYd ueS3jV78R6OTzBK8I2uLGcRCvhh1Q6RWgyy6/7Pl+NrUzQf3mNp36zC9/KGZOFkUDJQ7tv j5XJV3RLdLPZdLaBrteEU4kYC+9zJJ9tN7GPbjftmbIzPwNWa9iuce7VHDErmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715375819; a=rsa-sha256; cv=none; b=e6Okl4nE+9TwtQMU5/5w4Dj7H3FmGWTiyaMId2m/FgiVSg6g2Q/UNKvs7RRtZZeKelBsCb 2gAVX+C74P9qbe7sYhnXCH+xiz1FVIAEylHy+EY4sf+bUZxmOAPa28Jyz2W1X46tKwx3M6 NYH0XVGilRbKEi69jAOfEBe8ulS79ukMSIhGWSGxy/cEh0ms0ZaSorkRXC2FR9t8NqqPiz FSqPTta1IbavBi6e6ph/3qak5IxCOepc+BIvdsbdJiCrY6NjAIDkt0iiw0uD5kfSQQQ7Nf GiHAT8AoRg9CmBICTX4x5oDAza/NxBNtSTgYOdHA0JZv2ID2/O3p8Mi8FJJBmg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375819; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q4wasZkRNQLiR1HXy8ygNJ5Fyl2nrZO33IKGsZ7djqs=; b=k9CyV+Zvdwlb7nJoV90rOf+GQDLo1MFWtc6kltyqK+LN0QxRR2ZY7cKcJKQixe4tImJMA/ b3adMfGEKsEzOP1qTgUe0Q3at5IaCBs3Z0xyRb7wkgbhMMiTbgtz3m0+MKJURvk6VHeprg bXMmxh0yVXC/2sbbo8OAdHRtL1V0hupy4d/h+ZkowmwVy/887nMAXrTnT41G4ksYF6tIW5 kQDp1K5ugEzVBOAKdpPgZND1ltk7DfDXrAdEMPowaxRCNaznNJBZhs2fDPrZnVJusXctam e7Az7/G4Ne1vOPjJAUUj3gvOt4sGI3/xOpughA8f2alo52o4bnLzqr8DEtprgQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhXW3lwwztXT; Fri, 10 May 2024 21:16: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 44ALGxhe082850; Fri, 10 May 2024 21:16:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALGxLX082847; Fri, 10 May 2024 21:16:59 GMT (envelope-from git) Date: Fri, 10 May 2024 21:16:59 GMT Message-Id: <202405102116.44ALGxLX082847@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: ae285a8cbf12 - main - tftpd: Add missing include. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ae285a8cbf1212bdc1b3f81219635bc1395fadee Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=ae285a8cbf1212bdc1b3f81219635bc1395fadee commit ae285a8cbf1212bdc1b3f81219635bc1395fadee Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 21:15:45 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 21:16:26 +0000 tftpd: Add missing include. This went unnoticed due to namespace pollution in our headers. MFC after: 3 days Sponsored by: Klara, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D45131 --- libexec/tftpd/tests/functional.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libexec/tftpd/tests/functional.c b/libexec/tftpd/tests/functional.c index d3d2f46ffdee..54ace29d718c 100644 --- a/libexec/tftpd/tests/functional.c +++ b/libexec/tftpd/tests/functional.c @@ -28,6 +28,7 @@ #include #include #include +#include #include #include From nobody Fri May 10 21:17:00 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhXY0dd7z5KRd7; Fri, 10 May 2024 21:17: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 4VbhXX5Qs5z4cS6; Fri, 10 May 2024 21:17:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375820; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oEVVqshSTaBePCyiHZBsUdxeJURaGIEFQFLYsL0IwRE=; b=pLasd8892FWrzT64z8D48Wjv8FqG/YegDD6kx6TqqsIYRSPLl2WiPN3IBW7GUv2GwLUoRC azT1p6FlNVkbA/fYsmykZlXOYnSIOhR0TPLsZq3sUBMQXBbjulO6vIAzszBFHJi2r+1t+v wRoC9GE0sSpOWAfboMeT7f2QFBL7vgl9YewQRKtW9Zq8biD03xmifH0ZnRb/rf85ggKu36 0nuzn464QTDkpcZwTjSHAWg0OhuhlS/WzeuHSRJk37qwM+SCk6CpphE3YRTAHIutvcjm2t MFeJwc/++ASD3VpiX9rRjxQ5DOGVznSttxbNP8HNF+OQIkEPs/AmpKUl8o+3vw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715375820; a=rsa-sha256; cv=none; b=oEXkv5RvK6ASBgT9y2pPQndoLeY9MyWRfnVhGLcAS0dbjZpoClWHSJMTzJfiLI76jugFvB Y41v6dc65PtAwVQGI8OKcFsYjPT5WLp7Hi2i3wGMaUU2qYTTdTn6cfYTEk57wFGQpCvVHa tp0OmJDbLnuC6miJxb0msldSNmrcHQmceUxAfNOvqb3uOICB7z/56wXCntfRn+PryyXsWN 754PidP1m1SHqQEfRAwsoqQV+WDa9T1L7pZiU9yrINkzmNvO0ExiYvgj1G9Z/ViQhW2aub Jb+U1dVqI+nvkfY6U58lAdnBa32YNy0to3bUH/oLgD4ChBkwZOQ9XBYqL4+rAw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375820; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oEVVqshSTaBePCyiHZBsUdxeJURaGIEFQFLYsL0IwRE=; b=BTBVCujdpWXTcDzeoqguCY2B8MfqUNXwOmmPg9/sf+IoaTJA2M9U8rNrRyvOuT+LAk1CXY ck+L1AJep277ul+EEU7D9iwSTM2l1TACYaxT6vry+V7zh1LCEuqkSVkkQ6HW5LMSMEnoWX /PECH56OdQNNNRRbePtUow8FRwuCbgh1dn2DIcFUak91P9OzSeyitMRlWkE1yodJIs3R1W rAKzfaUZr1//k0fUguk+bGhOFDb4ofDaI8zJwHV/IzVM/Oz90oLJCco2idaWcT4xxQ91Ub qn+HhazFL24h1bGK5my9yuUjE+2SxAdkQQabfVY1fjXOwUS0XcZJ663nIh6tOQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhXX53BkztVw; Fri, 10 May 2024 21:17: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 44ALH0gu082895; Fri, 10 May 2024 21:17:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALH0ef082892; Fri, 10 May 2024 21:17:00 GMT (envelope-from git) Date: Fri, 10 May 2024 21:17:00 GMT Message-Id: <202405102117.44ALH0ef082892@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 4d09eb87c5d5 - main - tftpd: Satisfy clang-analyzer. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4d09eb87c5d5bec2e2832f50537e2ce6f75f4117 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=4d09eb87c5d5bec2e2832f50537e2ce6f75f4117 commit 4d09eb87c5d5bec2e2832f50537e2ce6f75f4117 Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 21:15:49 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 21:16:26 +0000 tftpd: Satisfy clang-analyzer. * Replace `random()` with `arc4random()`. * Change some variable types. * Drop some unused assignments. MFC after: 3 days Sponsored by: Klara, Inc. Reviewed by: imp, markj Differential Revision: https://reviews.freebsd.org/D45132 --- libexec/tftpd/tftp-io.c | 11 ++++------- libexec/tftpd/tftp-utils.c | 2 +- libexec/tftpd/tftp-utils.h | 2 +- libexec/tftpd/tftpd.c | 13 ++++++------- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/libexec/tftpd/tftp-io.c b/libexec/tftpd/tftp-io.c index d43e5f5505f9..50102e652d2f 100644 --- a/libexec/tftpd/tftp-io.c +++ b/libexec/tftpd/tftp-io.c @@ -71,13 +71,13 @@ static struct errmsg { #define DROPPACKET(s) \ if (packetdroppercentage != 0 && \ - random()%100 < packetdroppercentage) { \ + arc4random()%100 < packetdroppercentage) { \ tftp_log(LOG_DEBUG, "Artificial packet drop in %s", s); \ return; \ } #define DROPPACKETn(s,n) \ if (packetdroppercentage != 0 && \ - random()%100 < packetdroppercentage) { \ + arc4random()%100 < packetdroppercentage) { \ tftp_log(LOG_DEBUG, "Artificial packet drop in %s", s); \ return (n); \ } @@ -156,10 +156,8 @@ send_error(int peer, int error) pe->e_msg = strerror(error - 100); tp->th_code = EUNDEF; /* set 'undef' errorcode */ } - strcpy(tp->th_msg, pe->e_msg); - length = strlen(pe->e_msg); - tp->th_msg[length] = '\0'; - length += 5; + snprintf(tp->th_msg, MAXPKTSIZE - 4, "%s%n", pe->e_msg, &length); + length += 5; /* header and terminator */ if (debug & DEBUG_PACKETS) tftp_log(LOG_DEBUG, "Sending ERROR %d: %s", error, tp->th_msg); @@ -330,7 +328,6 @@ send_ack(int fp, uint16_t block) DROPPACKETn("send_ack", 0); tp = (struct tftphdr *)buf; - size = sizeof(buf) - 2; tp->th_opcode = htons((u_short)ACK); tp->th_block = htons((u_short)block); size = 4; diff --git a/libexec/tftpd/tftp-utils.c b/libexec/tftpd/tftp-utils.c index b309a94f7653..8ce7c09c9992 100644 --- a/libexec/tftpd/tftp-utils.c +++ b/libexec/tftpd/tftp-utils.c @@ -204,7 +204,7 @@ struct debugs debugs[] = { { DEBUG_ACCESS, "access", "TCPd access debugging" }, { DEBUG_NONE, NULL, "No debugging" }, }; -int packetdroppercentage = 0; +unsigned int packetdroppercentage = 0; int debug_find(char *s) diff --git a/libexec/tftpd/tftp-utils.h b/libexec/tftpd/tftp-utils.h index f87bbcccc71c..276dedcf74cd 100644 --- a/libexec/tftpd/tftp-utils.h +++ b/libexec/tftpd/tftp-utils.h @@ -99,7 +99,7 @@ struct debugs { }; extern int debug; extern struct debugs debugs[]; -extern int packetdroppercentage; +extern unsigned int packetdroppercentage; int debug_find(char *s); int debug_finds(char *s); const char *debug_show(int d); diff --git a/libexec/tftpd/tftpd.c b/libexec/tftpd/tftpd.c index c832097e0ba0..80497738f60d 100644 --- a/libexec/tftpd/tftpd.c +++ b/libexec/tftpd/tftpd.c @@ -160,7 +160,7 @@ main(int argc, char *argv[]) options_extra_enabled = 0; break; case 'p': - packetdroppercentage = atoi(optarg); + packetdroppercentage = (unsigned int)atoi(optarg); tftp_log(LOG_INFO, "Randomly dropping %d out of 100 packets", packetdroppercentage); @@ -451,9 +451,9 @@ static char * parse_header(int peer, char *recvbuffer, size_t size, char **filename, char **mode) { - char *cp; - int i; struct formats *pf; + char *cp; + size_t i; *mode = NULL; cp = recvbuffer; @@ -470,12 +470,11 @@ parse_header(int peer, char *recvbuffer, size_t size, i = get_field(peer, cp, size); *mode = cp; - cp += i; /* Find the file transfer mode */ - for (cp = *mode; *cp; cp++) - if (isupper(*cp)) - *cp = tolower(*cp); + for (; *cp; cp++) + if (isupper((unsigned char)*cp)) + *cp = tolower((unsigned char)*cp); for (pf = formats; pf->f_mode; pf++) if (strcmp(pf->f_mode, *mode) == 0) break; From nobody Fri May 10 21:17:01 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhXZ20Xbz5KRQC; Fri, 10 May 2024 21:17: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 4VbhXY6P1Cz4c8C; Fri, 10 May 2024 21:17:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375821; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RaIL5wjm0PUX9m8cZ/4cAkWOWDHwBA0j57zaeOOdVSc=; b=bUSyyVoFxuf9jr5MMXvqiFHHqhvphMZAxYiUBdjSLpvdRKMaZ2KubuNtJ2a2YlXXzohB8/ qpJsUtZF1LtS5KJ+m0tOOcyAv2xee7Nv1oPAtKhuzSnc67jmaLZ9go4Qri6KY6DUR/y0BP pvUSW+6RkdFzK0jkXhajzrJYwm4wucKmPj6x52OprbfYgClSIxUsXyx8jIv5KPNCG9sI+1 2KfN00nEweJjlm2EMNNJQmQOCCqIxQUJfHSfCaIMJeQcIPJdz+SMNKPTrJsvVJTlV2u+z6 MFtnTff4/2G4wZfRXlHRTqiKoIw6SWKkDHSllSpOmAHpZBXrJdNDZsAObZvB3w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715375821; a=rsa-sha256; cv=none; b=bew8C43uPd6VTz/91s7sddPTOx0jMdQaTP83F3IOCu6rdVgqfYPHIF7eBMzsN1B8p/GT+Q k6I9oaMjJNHpVrGBzNPeKKjeVOd4rOi+VCEilGYRZ635HmvVeOnYJiUScw6/MLpFu5z5Cp nPUf6DeMhbwnw0kogQYNslLkKPg58J5fDVh/TVLtwaKrmjudO2N58tQqO6dUqUzi1bqgH9 am9oDXKS+JkPL/au7spbgH2XkeZmBI8l+APpExcOoKEnv9VAT3TuAy+JesaQ5qusgH//+C l1b3QJSAohhytK1ymi/wUPGSSTldh5GEQ8QqUWAgEqPNBMPmYvCMIdLfMZw3tA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715375821; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RaIL5wjm0PUX9m8cZ/4cAkWOWDHwBA0j57zaeOOdVSc=; b=HzBMR6cyjQVWT22wtEGpyC+UGYM+2VPn+Sw0S09altZCfPC+a5uC5gNnTsr84V14uqmka+ yTRVOKrhBZlfsh3tm9Wn9OE25rbF5BdjRDS4ErMn7hajPsLgb/mmeHv1USZtBxBkPBGFVT 3k2uwW/Rjzm4N6q1Usfsp5OrfE9157x0uexmc96N6mPOEJfyrrRnhYNUJ8QXZmXCPjnlY7 owSCooJ/PNMm5eKVehPXEWSrHmI8R2u0Sx8VAwYWCwBn9+TCw3CbywFA8j5ZWMZFV6jvxm z2kcdhfqn1XP7RAZcHpU9V5bEC+1qAgIFoymaECKow1Do+g/YmeEA/DHw8gdrQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhXY61PyztXV; Fri, 10 May 2024 21:17: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 44ALH1LZ082947; Fri, 10 May 2024 21:17:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALH1ub082944; Fri, 10 May 2024 21:17:01 GMT (envelope-from git) Date: Fri, 10 May 2024 21:17:01 GMT Message-Id: <202405102117.44ALH1ub082944@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 25945af47e7a - main - tftpd: silence gcc overflow warnings List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 25945af47e7a1d06c44c8c160045a866e90569ab Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=25945af47e7a1d06c44c8c160045a866e90569ab commit 25945af47e7a1d06c44c8c160045a866e90569ab Author: Dag-Erling Smørgrav AuthorDate: 2024-05-10 21:15:54 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-05-10 21:16:26 +0000 tftpd: silence gcc overflow warnings GCC 13 complains that we might be writing too much to an on-stack buffer when createing a filename. In practice there is a check that filename isn't too long given the time format and other static characters so GCC is incorrect, but GCC isn't wrong that we're potentially trying to put a MAXPATHLEN length string + some other characters into a MAXPATHLEN buffer (if you ignore the check GCC can't realistically evaluate at compile time). Switch to snprintf to populate filename to ensure that future logic errors don't result in a stack overflow. Shorten the questionably named yyyymmdd buffer enough to slience the warning (checking the snprintf return value isn't sufficent) while preserving maximum flexibility for admins who use the -F option. MFC after: 3 days Sponsored by: Klara, Inc. Reviewed by: brooks Differential Revision: https://reviews.freebsd.org/D45086 --- libexec/tftpd/tftpd.c | 43 +++++++++++++++++++++++++++++-------------- 1 file changed, 29 insertions(+), 14 deletions(-) diff --git a/libexec/tftpd/tftpd.c b/libexec/tftpd/tftpd.c index 80497738f60d..3f67ad2920cf 100644 --- a/libexec/tftpd/tftpd.c +++ b/libexec/tftpd/tftpd.c @@ -611,12 +611,20 @@ tftp_rrq(int peer, char *recvbuffer, size_t size) static int find_next_name(char *filename, int *fd) { - int i; + /* + * GCC "knows" that we might write all of yyyymmdd plus the static + * elemenents in the format into into newname and thus complains + * unless we reduce the size. This array is still too big, but since + * the format is user supplied, it's not clear what a better limit + * value would be and this is sufficent to silence the warnings. + */ + static const int suffix_len = strlen("..00"); + char yyyymmdd[MAXPATHLEN - suffix_len]; + char newname[MAXPATHLEN]; + int i, ret; time_t tval; - size_t len; + size_t len, namelen; struct tm lt; - char yyyymmdd[MAXPATHLEN]; - char newname[MAXPATHLEN]; /* Create the YYYYMMDD part of the filename */ time(&tval); @@ -624,26 +632,33 @@ find_next_name(char *filename, int *fd) len = strftime(yyyymmdd, sizeof(yyyymmdd), newfile_format, <); if (len == 0) { syslog(LOG_WARNING, - "Filename suffix too long (%d characters maximum)", - MAXPATHLEN); + "Filename suffix too long (%zu characters maximum)", + sizeof(yyyymmdd) - 1); return (EACCESS); } /* Make sure the new filename is not too long */ - if (strlen(filename) > MAXPATHLEN - len - 5) { + namelen = strlen(filename); + if (namelen >= sizeof(newname) - len - suffix_len) { syslog(LOG_WARNING, - "Filename too long (%zd characters, %zd maximum)", - strlen(filename), MAXPATHLEN - len - 5); + "Filename too long (%zu characters, %zu maximum)", + namelen, + sizeof(newname) - len - suffix_len - 1); return (EACCESS); } /* Find the first file which doesn't exist */ for (i = 0; i < 100; i++) { - sprintf(newname, "%s.%s.%02d", filename, yyyymmdd, i); - *fd = open(newname, - O_WRONLY | O_CREAT | O_EXCL, - S_IRUSR | S_IWUSR | S_IRGRP | - S_IWGRP | S_IROTH | S_IWOTH); + ret = snprintf(newname, sizeof(newname), "%s.%s.%02d", + filename, yyyymmdd, i); + /* + * Size checked above so this can't happen, we'd use a + * (void) cast, but gcc intentionally ignores that if + * snprintf has __attribute__((warn_unused_result)). + */ + if (ret < 0 || (size_t)ret >= sizeof(newname)) + __unreachable(); + *fd = open(newname, O_WRONLY | O_CREAT | O_EXCL, 0666); if (*fd > 0) return 0; } From nobody Fri May 10 21:24:43 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhjS29G6z5KSRF; Fri, 10 May 2024 21:24: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 4VbhjS1sqQz4fKS; Fri, 10 May 2024 21:24:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715376284; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xcTE7KeB+SslbbimbX53DL1X7xIuKWo4Z9W6G8QiPuo=; b=eY3hootJYkG5VhTVqxK01dNXyVYtDSrhw7rIkHBD3jtgGeaTPgM3J12EhphEuM1zf1rmRz l4ET9u4Pu6GCgXLcFv+T8NF2tvvdy0R04Ea+M4tFeuujKYLLC3Tj1o5AHP5cUxV/rnliE8 YCDPoKNIWy0t0Wy4/z/ceoaz8ZTrDDErc0zJDcwgHIcToCqtNkTIOH/zXwMJtCwKBbzHcR JHExToc3KFFor+V5uhjn3+e1+4mJhWctD+/jS3U6UZu2zeNvcJ+15cM3GiHwUCjy173uDW xac8W2Efx5CSkKSfwZ+zWCXVpNMIU7YPfQ1irhm06SYXTxrRDTRsoTjlsKLXbQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715376284; a=rsa-sha256; cv=none; b=sHYf2p0XBSy3eHSY1GOEcpha55WPgRVNtKGhOoDvuTsMA9PCfLdmEzTtmH8ps69daJ4+Az iE+EmmXLPofWGxE9L/2u/WZT0eAighDEzsANJfrXEPxe0V91vy+0SvO+zSmLvVgTXvvy3r hSHagvVCSghCsbj8q6MO5YzExUtQx2ugkl1xVdLvf/Pyyq9cLUE72hL04vIP/ddzAfDguK I7vt3FYDLrobU5MsD9UWcBcIM3K4qEwHw3/8wkQ4eNHIgTTWLaR49JH32pvDVIDlBhEpGR IXPPBGSiTQK41i+Ns2KSiyFzRbiA0inYpnMnmJaDW1GBBqOCG27f44Wjwtk2qA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715376284; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xcTE7KeB+SslbbimbX53DL1X7xIuKWo4Z9W6G8QiPuo=; b=YHdX0VCmoDret14i0GpU4euFxx/Kj+H5BAtJe4kvWYlCQqNapvVlRem3lYIl+a+s7ILTqN S/X6wzq6k33AcYTMWS1UoOMtgpnsw9wc83yiP5JS0EQamqLGphVhc0UC6oA0ZslANjJHjs l6+gQLmbamxTio4ecF1d8T5bcDDbbwtQ83liRN9s6IH9REmCdk4/s03Y5jWKzCcerB01Hc qwL2hL7PIwLKbsF2XWEIAP15VTgGQwoauuolZxBMWIBF4gv8NKDp8rleV7eIJQYn6FQvlX hkbqQA70EDKQJDz5gCoBc91x+Eg2N+VTT92+isCMO1HiigThrFOt0LuDRBTD5Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhjS1Ljmztk8; Fri, 10 May 2024 21:24: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 44ALOiiS099453; Fri, 10 May 2024 21:24:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALOhr7099450; Fri, 10 May 2024 21:24:43 GMT (envelope-from git) Date: Fri, 10 May 2024 21:24:43 GMT Message-Id: <202405102124.44ALOhr7099450@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: 335c7cda1213 - main - unbound: Vendor import 1.20.0 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 335c7cda12138f2aefa41fb739707612cc12a9be Auto-Submitted: auto-generated The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=335c7cda12138f2aefa41fb739707612cc12a9be commit 335c7cda12138f2aefa41fb739707612cc12a9be Merge: 25945af47e7a c2a80056864d Author: Cy Schubert AuthorDate: 2024-05-10 20:56:34 +0000 Commit: Cy Schubert CommitDate: 2024-05-10 21:23:43 +0000 unbound: Vendor import 1.20.0 Release notes at https://www.nlnetlabs.nl/news/2024/May/08/unbound-1.20.0-released/ Security: The DNSBomb vulnerability CVE-2024-33655 Merge commit 'c2a80056864d6eda0398fd127dc0ae515b39752b' into main contrib/unbound/Makefile.in | 16 +- contrib/unbound/{ac_pkg_swig.m4 => ax_pkg_swig.m4} | 110 +- contrib/unbound/ax_pthread.m4 | 444 +- contrib/unbound/cachedb/cachedb.c | 133 +- contrib/unbound/cachedb/cachedb.h | 16 + contrib/unbound/config.h.in | 105 +- contrib/unbound/configure | 12872 +++++---- contrib/unbound/configure.ac | 16 +- contrib/unbound/configure~ | 26616 +++++++++++++++++++ contrib/unbound/contrib/rc_d_unbound | 9 + contrib/unbound/contrib/unbound.init | 1 + contrib/unbound/contrib/unbound.init_fedora | 1 + contrib/unbound/contrib/unbound.init_yocto | 1 + contrib/unbound/daemon/cachedump.c | 23 +- contrib/unbound/daemon/daemon.c | 26 +- contrib/unbound/daemon/remote.c | 130 +- contrib/unbound/daemon/unbound.c | 39 +- contrib/unbound/daemon/worker.c | 35 +- contrib/unbound/doc/Changelog | 187 +- contrib/unbound/doc/README | 2 +- contrib/unbound/doc/example.conf.in | 28 +- contrib/unbound/doc/libunbound.3.in | 4 +- contrib/unbound/doc/unbound-anchor.8.in | 2 +- contrib/unbound/doc/unbound-checkconf.8.in | 6 +- contrib/unbound/doc/unbound-control.8.in | 8 +- contrib/unbound/doc/unbound-host.1.in | 2 +- contrib/unbound/doc/unbound.8.in | 4 +- contrib/unbound/doc/unbound.conf.5.in | 72 +- contrib/unbound/doc/unbound.doxygen | 2931 +- contrib/unbound/edns-subnet/subnetmod.c | 40 +- contrib/unbound/iterator/iter_fwd.c | 119 +- contrib/unbound/iterator/iter_fwd.h | 60 +- contrib/unbound/iterator/iter_hints.c | 95 +- contrib/unbound/iterator/iter_hints.h | 54 +- contrib/unbound/iterator/iter_utils.c | 62 +- contrib/unbound/iterator/iter_utils.h | 6 +- contrib/unbound/iterator/iterator.c | 295 +- contrib/unbound/libunbound/context.c | 8 + contrib/unbound/libunbound/libunbound.c | 5 + contrib/unbound/libunbound/libworker.c | 21 +- contrib/unbound/services/authzone.c | 10 + contrib/unbound/services/cache/dns.c | 52 +- contrib/unbound/services/cache/infra.c | 170 +- contrib/unbound/services/cache/infra.h | 28 + contrib/unbound/services/cache/rrset.c | 87 + contrib/unbound/services/cache/rrset.h | 31 + contrib/unbound/services/listen_dnsport.c | 51 +- contrib/unbound/services/listen_dnsport.h | 8 +- contrib/unbound/services/localzone.c | 6 +- contrib/unbound/services/mesh.c | 106 +- contrib/unbound/services/mesh.h | 6 + contrib/unbound/services/rpz.c | 342 +- contrib/unbound/services/rpz.h | 8 + contrib/unbound/services/view.h | 3 +- contrib/unbound/smallapp/unbound-anchor.c | 70 +- contrib/unbound/smallapp/unbound-checkconf.c | 13 +- contrib/unbound/smallapp/unbound-control.c | 5 +- contrib/unbound/testdata/cachedb_expired.crpl | 324 + .../testdata/cachedb_expired_client_timeout.crpl | 343 + .../testdata/cachedb_expired_reply_ttl.crpl | 259 + .../unbound/testdata/cachedb_subnet_change.crpl | 304 + .../unbound/testdata/cachedb_subnet_expired.crpl | 322 + .../testdata/cachedb_subnet_toecs_timeout.crpl | 229 + contrib/unbound/testdata/iter_dname_ttl.rpl | 39 - .../testdata/iter_ghost_grandchild_delegation.rpl | 256 + contrib/unbound/testdata/local_cnameother.rpl | 67 + contrib/unbound/testdata/rpz_clientip_override.rpl | 269 + contrib/unbound/testdata/rpz_cname_handle.rpl | 779 + contrib/unbound/testdata/rpz_nsdname_override.rpl | 325 + contrib/unbound/testdata/rpz_nsip_override.rpl | 332 + contrib/unbound/testdata/rpz_passthru_clientip.rpl | 90 + contrib/unbound/testdata/rpz_qtype_cname.rpl | 120 + .../testdata/rpz_reload.tdir/example.org.zone | 2 + .../testdata/rpz_reload.tdir/rpz.example.com.zone | 6 + .../testdata/rpz_reload.tdir/rpz_reload.conf | 30 + .../testdata/rpz_reload.tdir/rpz_reload.dsc | 16 + .../testdata/rpz_reload.tdir/rpz_reload.post | 12 + .../testdata/rpz_reload.tdir/rpz_reload.pre | 26 + .../testdata/rpz_reload.tdir/rpz_reload.test | 109 + contrib/unbound/testdata/subnet_cached_size.crpl | 308 + contrib/unbound/testdata/ttl_max_negative.rpl | 206 + contrib/unbound/testdata/ttl_min_negative.rpl | 204 + contrib/unbound/testdata/val_cnameqtype_qmin.rpl | 784 + contrib/unbound/testdata/val_dnameqtype.rpl | 689 + contrib/unbound/testdata/val_dnameqtype_qmin.rpl | 859 + contrib/unbound/util/config_file.c | 39 + contrib/unbound/util/config_file.h | 19 + contrib/unbound/util/configlexer.c | 8195 +++--- contrib/unbound/util/configlexer.lex | 7 + contrib/unbound/util/configparser.c | 4502 ++-- contrib/unbound/util/configparser.h | 508 +- contrib/unbound/util/configparser.y | 83 +- contrib/unbound/util/data/msgparse.h | 2 + contrib/unbound/util/data/msgreply.c | 33 +- contrib/unbound/util/module.c | 11 +- contrib/unbound/util/module.h | 18 +- contrib/unbound/util/net_help.c | 36 +- contrib/unbound/util/netevent.c | 8 +- contrib/unbound/util/netevent.h | 2 + contrib/unbound/util/storage/lookup3.c | 2 +- contrib/unbound/util/storage/lruhash.c | 34 + contrib/unbound/util/storage/lruhash.h | 11 + contrib/unbound/util/storage/slabhash.c | 7 + contrib/unbound/util/storage/slabhash.h | 12 + contrib/unbound/validator/val_utils.c | 40 +- contrib/unbound/validator/validator.c | 36 +- lib/libunbound/config.h | 6 +- 107 files changed, 53017 insertions(+), 13503 deletions(-) diff --cc contrib/unbound/configure~ index 000000000000,d4a394eb9540..d4a394eb9540 mode 000000,100755..100755 --- a/contrib/unbound/configure~ +++ b/contrib/unbound/configure~ diff --cc contrib/unbound/testdata/cachedb_expired.crpl index 000000000000,9f9ff677c6d1..9f9ff677c6d1 mode 000000,100644..100644 --- a/contrib/unbound/testdata/cachedb_expired.crpl +++ b/contrib/unbound/testdata/cachedb_expired.crpl diff --cc contrib/unbound/testdata/cachedb_expired_client_timeout.crpl index 000000000000,78ddf4d8f698..78ddf4d8f698 mode 000000,100644..100644 --- a/contrib/unbound/testdata/cachedb_expired_client_timeout.crpl +++ b/contrib/unbound/testdata/cachedb_expired_client_timeout.crpl diff --cc contrib/unbound/testdata/cachedb_expired_reply_ttl.crpl index 000000000000,b5f34050594e..b5f34050594e mode 000000,100644..100644 --- a/contrib/unbound/testdata/cachedb_expired_reply_ttl.crpl +++ b/contrib/unbound/testdata/cachedb_expired_reply_ttl.crpl diff --cc contrib/unbound/testdata/cachedb_subnet_change.crpl index 000000000000,73584305ce60..73584305ce60 mode 000000,100644..100644 --- a/contrib/unbound/testdata/cachedb_subnet_change.crpl +++ b/contrib/unbound/testdata/cachedb_subnet_change.crpl diff --cc contrib/unbound/testdata/cachedb_subnet_expired.crpl index 000000000000,eddff1002dd8..eddff1002dd8 mode 000000,100644..100644 --- a/contrib/unbound/testdata/cachedb_subnet_expired.crpl +++ b/contrib/unbound/testdata/cachedb_subnet_expired.crpl diff --cc contrib/unbound/testdata/cachedb_subnet_toecs_timeout.crpl index 000000000000,f53fd9658e21..f53fd9658e21 mode 000000,100644..100644 --- a/contrib/unbound/testdata/cachedb_subnet_toecs_timeout.crpl +++ b/contrib/unbound/testdata/cachedb_subnet_toecs_timeout.crpl diff --cc contrib/unbound/testdata/iter_ghost_grandchild_delegation.rpl index 000000000000,d1e521b57e9c..d1e521b57e9c mode 000000,100644..100644 --- a/contrib/unbound/testdata/iter_ghost_grandchild_delegation.rpl +++ b/contrib/unbound/testdata/iter_ghost_grandchild_delegation.rpl diff --cc contrib/unbound/testdata/local_cnameother.rpl index 000000000000,d86ba4f9d81a..d86ba4f9d81a mode 000000,100644..100644 --- a/contrib/unbound/testdata/local_cnameother.rpl +++ b/contrib/unbound/testdata/local_cnameother.rpl diff --cc contrib/unbound/testdata/rpz_clientip_override.rpl index 000000000000,20e5213ff626..20e5213ff626 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_clientip_override.rpl +++ b/contrib/unbound/testdata/rpz_clientip_override.rpl diff --cc contrib/unbound/testdata/rpz_cname_handle.rpl index 000000000000,38dddf12c52a..38dddf12c52a mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_cname_handle.rpl +++ b/contrib/unbound/testdata/rpz_cname_handle.rpl diff --cc contrib/unbound/testdata/rpz_nsdname_override.rpl index 000000000000,d662e55c7775..d662e55c7775 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_nsdname_override.rpl +++ b/contrib/unbound/testdata/rpz_nsdname_override.rpl diff --cc contrib/unbound/testdata/rpz_nsip_override.rpl index 000000000000,8c3b20be381c..8c3b20be381c mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_nsip_override.rpl +++ b/contrib/unbound/testdata/rpz_nsip_override.rpl diff --cc contrib/unbound/testdata/rpz_passthru_clientip.rpl index 000000000000,1ffb79a00575..1ffb79a00575 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_passthru_clientip.rpl +++ b/contrib/unbound/testdata/rpz_passthru_clientip.rpl diff --cc contrib/unbound/testdata/rpz_qtype_cname.rpl index 000000000000,fa5674a0fba8..fa5674a0fba8 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_qtype_cname.rpl +++ b/contrib/unbound/testdata/rpz_qtype_cname.rpl diff --cc contrib/unbound/testdata/rpz_reload.tdir/example.org.zone index 000000000000,21dd8993880a..21dd8993880a mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_reload.tdir/example.org.zone +++ b/contrib/unbound/testdata/rpz_reload.tdir/example.org.zone diff --cc contrib/unbound/testdata/rpz_reload.tdir/rpz.example.com.zone index 000000000000,ad075b18b359..ad075b18b359 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_reload.tdir/rpz.example.com.zone +++ b/contrib/unbound/testdata/rpz_reload.tdir/rpz.example.com.zone diff --cc contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.conf index 000000000000,d3c81e486cdd..d3c81e486cdd mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.conf +++ b/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.conf diff --cc contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.dsc index 000000000000,27f31cff19df..27f31cff19df mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.dsc +++ b/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.dsc diff --cc contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.post index 000000000000,ef93cd46bc59..ef93cd46bc59 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.post +++ b/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.post diff --cc contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.pre index 000000000000,8f88b6094264..8f88b6094264 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.pre +++ b/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.pre diff --cc contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.test index 000000000000,f3cf9b29ef51..f3cf9b29ef51 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.test +++ b/contrib/unbound/testdata/rpz_reload.tdir/rpz_reload.test diff --cc contrib/unbound/testdata/subnet_cached_size.crpl index 000000000000,d221d0d37bc8..d221d0d37bc8 mode 000000,100644..100644 --- a/contrib/unbound/testdata/subnet_cached_size.crpl +++ b/contrib/unbound/testdata/subnet_cached_size.crpl diff --cc contrib/unbound/testdata/ttl_max_negative.rpl index 000000000000,243b66fe39b6..243b66fe39b6 mode 000000,100644..100644 --- a/contrib/unbound/testdata/ttl_max_negative.rpl +++ b/contrib/unbound/testdata/ttl_max_negative.rpl diff --cc contrib/unbound/testdata/ttl_min_negative.rpl index 000000000000,ece3366c54ee..ece3366c54ee mode 000000,100644..100644 --- a/contrib/unbound/testdata/ttl_min_negative.rpl +++ b/contrib/unbound/testdata/ttl_min_negative.rpl diff --cc contrib/unbound/testdata/val_cnameqtype_qmin.rpl index 000000000000,7943b09488ec..7943b09488ec mode 000000,100644..100644 --- a/contrib/unbound/testdata/val_cnameqtype_qmin.rpl +++ b/contrib/unbound/testdata/val_cnameqtype_qmin.rpl diff --cc contrib/unbound/testdata/val_dnameqtype.rpl index 000000000000,74cc45ec2008..74cc45ec2008 mode 000000,100644..100644 --- a/contrib/unbound/testdata/val_dnameqtype.rpl +++ b/contrib/unbound/testdata/val_dnameqtype.rpl diff --cc contrib/unbound/testdata/val_dnameqtype_qmin.rpl index 000000000000,b37157d0ca69..b37157d0ca69 mode 000000,100644..100644 --- a/contrib/unbound/testdata/val_dnameqtype_qmin.rpl +++ b/contrib/unbound/testdata/val_dnameqtype_qmin.rpl diff --cc contrib/unbound/util/config_file.c index e8de5119ba68,000000000000..f16d1c2ddb84 mode 100644,000000..100644 --- a/contrib/unbound/util/config_file.c +++ b/contrib/unbound/util/config_file.c @@@ -1,2724 -1,0 +1,2763 @@@ +/* + * util/config_file.c - reads and stores the config file for unbound. + * + * Copyright (c) 2007, NLnet Labs. All rights reserved. + * + * This software is open source. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * + * 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. + * + * Neither the name of the NLNET LABS nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS 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 COPYRIGHT + * HOLDER 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. + */ + +/** + * \file + * + * This file contains functions for the config file. + */ + +#include "config.h" +#include +#include +#ifdef HAVE_TIME_H +#include +#endif +#include "util/log.h" +#include "util/configyyrename.h" +#include "util/config_file.h" +#include "configparser.h" +#include "util/net_help.h" +#include "util/data/msgparse.h" +#include "util/module.h" +#include "util/regional.h" +#include "util/fptr_wlist.h" +#include "util/data/dname.h" +#include "util/random.h" +#include "util/rtt.h" +#include "services/cache/infra.h" +#include "sldns/wire2str.h" +#include "sldns/parseutil.h" +#include "iterator/iterator.h" +#ifdef HAVE_GLOB_H +# include +#endif +#ifdef CLIENT_SUBNET +#include "edns-subnet/edns-subnet.h" +#endif +#ifdef HAVE_PWD_H +#include +#endif + +/** from cfg username, after daemonize setup performed */ +uid_t cfg_uid = (uid_t)-1; +/** from cfg username, after daemonize setup performed */ +gid_t cfg_gid = (gid_t)-1; +/** for debug allow small timeout values for fast rollovers */ +int autr_permit_small_holddown = 0; +/** size (in bytes) of stream wait buffers max */ +size_t stream_wait_max = 4 * 1024 * 1024; +size_t http2_query_buffer_max = 4 * 1024 * 1024; +size_t http2_response_buffer_max = 4 * 1024 * 1024; + +/** global config during parsing */ +struct config_parser_state* cfg_parser = 0; + +/** init ports possible for use */ +static void init_outgoing_availports(int* array, int num); + +/** init cookie with random data */ +static void init_cookie_secret(uint8_t* cookie_secret, size_t cookie_secret_len); + +struct config_file* +config_create(void) +{ + struct config_file* cfg; + cfg = (struct config_file*)calloc(1, sizeof(struct config_file)); + if(!cfg) + return NULL; + /* the defaults if no config is present */ + cfg->verbosity = 1; + cfg->stat_interval = 0; + cfg->stat_cumulative = 0; + cfg->stat_extended = 0; + cfg->stat_inhibit_zero = 1; + cfg->num_threads = 1; + cfg->port = UNBOUND_DNS_PORT; + cfg->do_ip4 = 1; + cfg->do_ip6 = 1; + cfg->do_udp = 1; + cfg->do_tcp = 1; + cfg->tcp_reuse_timeout = 60 * 1000; /* 60s in milisecs */ + cfg->max_reuse_tcp_queries = 200; + cfg->tcp_upstream = 0; + cfg->udp_upstream_without_downstream = 0; + cfg->tcp_mss = 0; + cfg->outgoing_tcp_mss = 0; + cfg->tcp_idle_timeout = 30 * 1000; /* 30s in millisecs */ + cfg->tcp_auth_query_timeout = 3 * 1000; /* 3s in millisecs */ + cfg->do_tcp_keepalive = 0; + cfg->tcp_keepalive_timeout = 120 * 1000; /* 120s in millisecs */ + cfg->sock_queue_timeout = 0; /* do not check timeout */ + cfg->ssl_service_key = NULL; + cfg->ssl_service_pem = NULL; + cfg->ssl_port = UNBOUND_DNS_OVER_TLS_PORT; + cfg->ssl_upstream = 0; + cfg->tls_cert_bundle = NULL; + cfg->tls_win_cert = 0; + cfg->tls_use_sni = 1; + cfg->https_port = UNBOUND_DNS_OVER_HTTPS_PORT; + if(!(cfg->http_endpoint = strdup("/dns-query"))) goto error_exit; + cfg->http_max_streams = 100; + cfg->http_query_buffer_size = 4*1024*1024; + cfg->http_response_buffer_size = 4*1024*1024; + cfg->http_nodelay = 1; + cfg->use_syslog = 1; + cfg->log_identity = NULL; /* changed later with argv[0] */ + cfg->log_time_ascii = 0; + cfg->log_queries = 0; + cfg->log_replies = 0; + cfg->log_tag_queryreply = 0; + cfg->log_local_actions = 0; + cfg->log_servfail = 0; + cfg->log_destaddr = 0; +#ifndef USE_WINSOCK +# ifdef USE_MINI_EVENT + /* select max 1024 sockets */ + cfg->outgoing_num_ports = 960; + cfg->num_queries_per_thread = 512; +# else + /* libevent can use many sockets */ + cfg->outgoing_num_ports = 4096; + cfg->num_queries_per_thread = 1024; +# endif + cfg->outgoing_num_tcp = 10; + cfg->incoming_num_tcp = 10; +#else + cfg->outgoing_num_ports = 48; /* windows is limited in num fds */ + cfg->num_queries_per_thread = 24; + cfg->outgoing_num_tcp = 2; /* leaves 64-52=12 for: 4if,1stop,thread4 */ + cfg->incoming_num_tcp = 2; +#endif + cfg->stream_wait_size = 4 * 1024 * 1024; + cfg->edns_buffer_size = 1232; /* from DNS flagday recommendation */ + cfg->msg_buffer_size = 65552; /* 64 k + a small margin */ + cfg->msg_cache_size = 4 * 1024 * 1024; + cfg->msg_cache_slabs = 4; + cfg->jostle_time = 200; + cfg->rrset_cache_size = 4 * 1024 * 1024; + cfg->rrset_cache_slabs = 4; + cfg->host_ttl = 900; + cfg->bogus_ttl = 60; + cfg->min_ttl = 0; + cfg->max_ttl = 3600 * 24; + cfg->max_negative_ttl = 3600; ++ cfg->min_negative_ttl = 0; + cfg->prefetch = 0; + cfg->prefetch_key = 0; + cfg->deny_any = 0; + cfg->infra_cache_slabs = 4; + cfg->infra_cache_numhosts = 10000; + cfg->infra_cache_min_rtt = 50; + cfg->infra_cache_max_rtt = 120000; + cfg->infra_keep_probing = 0; + cfg->delay_close = 0; + cfg->udp_connect = 1; + if(!(cfg->outgoing_avail_ports = (int*)calloc(65536, sizeof(int)))) + goto error_exit; + init_outgoing_availports(cfg->outgoing_avail_ports, 65536); + if(!(cfg->username = strdup(UB_USERNAME))) goto error_exit; +#ifdef HAVE_CHROOT + if(!(cfg->chrootdir = strdup(CHROOT_DIR))) goto error_exit; +#endif + if(!(cfg->directory = strdup(RUN_DIR))) goto error_exit; + if(!(cfg->logfile = strdup(""))) goto error_exit; + if(!(cfg->pidfile = strdup(PIDFILE))) goto error_exit; + if(!(cfg->target_fetch_policy = strdup("3 2 1 0 0"))) goto error_exit; + cfg->fast_server_permil = 0; + cfg->fast_server_num = 3; + cfg->donotqueryaddrs = NULL; + cfg->donotquery_localhost = 1; + cfg->root_hints = NULL; + cfg->use_systemd = 0; + cfg->do_daemonize = 1; + cfg->if_automatic = 0; + cfg->if_automatic_ports = NULL; + cfg->so_rcvbuf = 0; + cfg->so_sndbuf = 0; + cfg->so_reuseport = REUSEPORT_DEFAULT; + cfg->ip_transparent = 0; + cfg->ip_freebind = 0; + cfg->ip_dscp = 0; + cfg->num_ifs = 0; + cfg->ifs = NULL; + cfg->num_out_ifs = 0; + cfg->out_ifs = NULL; + cfg->stubs = NULL; + cfg->forwards = NULL; + cfg->auths = NULL; +#ifdef CLIENT_SUBNET + cfg->client_subnet = NULL; + cfg->client_subnet_zone = NULL; + cfg->client_subnet_opcode = LDNS_EDNS_CLIENT_SUBNET; + cfg->client_subnet_always_forward = 0; + cfg->max_client_subnet_ipv4 = 24; + cfg->max_client_subnet_ipv6 = 56; + cfg->min_client_subnet_ipv4 = 0; + cfg->min_client_subnet_ipv6 = 0; + cfg->max_ecs_tree_size_ipv4 = 100; + cfg->max_ecs_tree_size_ipv6 = 100; +#endif + cfg->views = NULL; + cfg->acls = NULL; + cfg->tcp_connection_limits = NULL; + cfg->harden_short_bufsize = 1; + cfg->harden_large_queries = 0; + cfg->harden_glue = 1; + cfg->harden_dnssec_stripped = 1; + cfg->harden_below_nxdomain = 1; + cfg->harden_referral_path = 0; + cfg->harden_algo_downgrade = 0; + cfg->harden_unknown_additional = 0; + cfg->use_caps_bits_for_id = 0; + cfg->caps_whitelist = NULL; + cfg->private_address = NULL; + cfg->private_domain = NULL; + cfg->unwanted_threshold = 0; + cfg->hide_identity = 0; + cfg->hide_version = 0; + cfg->hide_trustanchor = 0; + cfg->hide_http_user_agent = 0; + cfg->identity = NULL; + cfg->version = NULL; + cfg->http_user_agent = NULL; + cfg->nsid_cfg_str = NULL; + cfg->nsid = NULL; + cfg->nsid_len = 0; + cfg->auto_trust_anchor_file_list = NULL; + cfg->trust_anchor_file_list = NULL; + cfg->trust_anchor_list = NULL; + cfg->trusted_keys_file_list = NULL; + cfg->trust_anchor_signaling = 1; + cfg->root_key_sentinel = 1; + cfg->domain_insecure = NULL; + cfg->val_date_override = 0; + cfg->val_sig_skew_min = 3600; /* at least daylight savings trouble */ + cfg->val_sig_skew_max = 86400; /* at most timezone settings trouble */ + cfg->val_max_restart = 5; + cfg->val_clean_additional = 1; + cfg->val_log_level = 0; + cfg->val_log_squelch = 0; + cfg->val_permissive_mode = 0; + cfg->aggressive_nsec = 1; + cfg->ignore_cd = 0; + cfg->disable_edns_do = 0; + cfg->serve_expired = 0; + cfg->serve_expired_ttl = 0; + cfg->serve_expired_ttl_reset = 0; + cfg->serve_expired_reply_ttl = 30; + cfg->serve_expired_client_timeout = 0; + cfg->ede_serve_expired = 0; + cfg->serve_original_ttl = 0; + cfg->zonemd_permissive_mode = 0; + cfg->add_holddown = 30*24*3600; + cfg->del_holddown = 30*24*3600; + cfg->keep_missing = 366*24*3600; /* one year plus a little leeway */ + cfg->permit_small_holddown = 0; + cfg->key_cache_size = 4 * 1024 * 1024; + cfg->key_cache_slabs = 4; + cfg->neg_cache_size = 1 * 1024 * 1024; + cfg->local_zones = NULL; + cfg->local_zones_nodefault = NULL; +#ifdef USE_IPSET + cfg->local_zones_ipset = NULL; +#endif + cfg->local_zones_disable_default = 0; + cfg->local_data = NULL; + cfg->local_zone_overrides = NULL; + cfg->unblock_lan_zones = 0; + cfg->insecure_lan_zones = 0; + cfg->python_script = NULL; + cfg->dynlib_file = NULL; + cfg->remote_control_enable = 0; + cfg->control_ifs.first = NULL; + cfg->control_ifs.last = NULL; + cfg->control_port = UNBOUND_CONTROL_PORT; + cfg->control_use_cert = 1; + cfg->minimal_responses = 1; + cfg->rrset_roundrobin = 1; + cfg->unknown_server_time_limit = 376; ++ cfg->discard_timeout = 1900; /* msec */ ++ cfg->wait_limit = 1000; ++ cfg->wait_limit_cookie = 10000; ++ cfg->wait_limit_netblock = NULL; ++ cfg->wait_limit_cookie_netblock = NULL; + cfg->max_udp_size = 1232; /* value taken from edns_buffer_size */ + if(!(cfg->server_key_file = strdup(RUN_DIR"/unbound_server.key"))) + goto error_exit; + if(!(cfg->server_cert_file = strdup(RUN_DIR"/unbound_server.pem"))) + goto error_exit; + if(!(cfg->control_key_file = strdup(RUN_DIR"/unbound_control.key"))) + goto error_exit; + if(!(cfg->control_cert_file = strdup(RUN_DIR"/unbound_control.pem"))) + goto error_exit; + +#ifdef CLIENT_SUBNET + if(!(cfg->module_conf = strdup("subnetcache validator iterator"))) goto error_exit; +#else + if(!(cfg->module_conf = strdup("validator iterator"))) goto error_exit; +#endif + if(!(cfg->val_nsec3_key_iterations = + strdup("1024 150 2048 150 4096 150"))) goto error_exit; +#if defined(DNSTAP_SOCKET_PATH) + if(!(cfg->dnstap_socket_path = strdup(DNSTAP_SOCKET_PATH))) + goto error_exit; +#endif + cfg->dnstap_bidirectional = 1; + cfg->dnstap_tls = 1; + cfg->disable_dnssec_lame_check = 0; + cfg->ip_ratelimit_cookie = 0; + cfg->ip_ratelimit = 0; + cfg->ratelimit = 0; + cfg->ip_ratelimit_slabs = 4; + cfg->ratelimit_slabs = 4; + cfg->ip_ratelimit_size = 4*1024*1024; + cfg->ratelimit_size = 4*1024*1024; + cfg->ratelimit_for_domain = NULL; + cfg->ratelimit_below_domain = NULL; + cfg->ip_ratelimit_factor = 10; + cfg->ratelimit_factor = 10; + cfg->ip_ratelimit_backoff = 0; + cfg->ratelimit_backoff = 0; + cfg->outbound_msg_retry = 5; + cfg->max_sent_count = 32; + cfg->max_query_restarts = 11; + cfg->qname_minimisation = 1; + cfg->qname_minimisation_strict = 0; + cfg->shm_enable = 0; + cfg->shm_key = 11777; + cfg->edns_client_strings = NULL; + cfg->edns_client_string_opcode = 65001; + cfg->dnscrypt = 0; + cfg->dnscrypt_port = 0; + cfg->dnscrypt_provider = NULL; + cfg->dnscrypt_provider_cert = NULL; + cfg->dnscrypt_provider_cert_rotated = NULL; + cfg->dnscrypt_secret_key = NULL; + cfg->dnscrypt_shared_secret_cache_size = 4*1024*1024; + cfg->dnscrypt_shared_secret_cache_slabs = 4; + cfg->dnscrypt_nonce_cache_size = 4*1024*1024; + cfg->dnscrypt_nonce_cache_slabs = 4; + cfg->pad_responses = 1; + cfg->pad_responses_block_size = 468; /* from RFC8467 */ + cfg->pad_queries = 1; + cfg->pad_queries_block_size = 128; /* from RFC8467 */ +#ifdef USE_IPSECMOD + cfg->ipsecmod_enabled = 1; + cfg->ipsecmod_ignore_bogus = 0; + cfg->ipsecmod_hook = NULL; + cfg->ipsecmod_max_ttl = 3600; + cfg->ipsecmod_whitelist = NULL; + cfg->ipsecmod_strict = 0; +#endif + cfg->do_answer_cookie = 0; + memset(cfg->cookie_secret, 0, sizeof(cfg->cookie_secret)); + cfg->cookie_secret_len = 16; + init_cookie_secret(cfg->cookie_secret, cfg->cookie_secret_len); +#ifdef USE_CACHEDB + if(!(cfg->cachedb_backend = strdup("testframe"))) goto error_exit; + if(!(cfg->cachedb_secret = strdup("default"))) goto error_exit; + cfg->cachedb_no_store = 0; ++ cfg->cachedb_check_when_serve_expired = 1; +#ifdef USE_REDIS + if(!(cfg->redis_server_host = strdup("127.0.0.1"))) goto error_exit; + cfg->redis_server_path = NULL; + cfg->redis_server_password = NULL; + cfg->redis_timeout = 100; + cfg->redis_server_port = 6379; + cfg->redis_expire_records = 0; + cfg->redis_logical_db = 0; +#endif /* USE_REDIS */ +#endif /* USE_CACHEDB */ +#ifdef USE_IPSET + cfg->ipset_name_v4 = NULL; + cfg->ipset_name_v6 = NULL; +#endif + cfg->ede = 0; + return cfg; +error_exit: + config_delete(cfg); + return NULL; +} + +struct config_file* config_create_forlib(void) +{ + struct config_file* cfg = config_create(); + if(!cfg) return NULL; + /* modifications for library use, less verbose, less memory */ + free(cfg->chrootdir); + cfg->chrootdir = NULL; + cfg->verbosity = 0; + cfg->outgoing_num_ports = 16; /* in library use, this is 'reasonable' + and probably within the ulimit(maxfds) of the user */ + cfg->outgoing_num_tcp = 2; + cfg->msg_cache_size = 1024*1024; + cfg->msg_cache_slabs = 1; + cfg->rrset_cache_size = 1024*1024; + cfg->rrset_cache_slabs = 1; + cfg->infra_cache_slabs = 1; + cfg->use_syslog = 0; + cfg->key_cache_size = 1024*1024; + cfg->key_cache_slabs = 1; + cfg->neg_cache_size = 100 * 1024; + cfg->donotquery_localhost = 0; /* allow, so that you can ask a + forward nameserver running on localhost */ + cfg->val_log_level = 2; /* to fill why_bogus with */ + cfg->val_log_squelch = 1; + cfg->minimal_responses = 0; + cfg->harden_short_bufsize = 1; + return cfg; +} + +/** check that the value passed is >= 0 */ +#define IS_NUMBER_OR_ZERO \ + if(atoi(val) == 0 && strcmp(val, "0") != 0) return 0 +/** check that the value passed is > 0 */ +#define IS_NONZERO_NUMBER \ + if(atoi(val) == 0) return 0 +/** check that the value passed is not 0 and a power of 2 */ +#define IS_POW2_NUMBER \ + if(atoi(val) == 0 || !is_pow2((size_t)atoi(val))) return 0 +/** check that the value passed is yes or no */ +#define IS_YES_OR_NO \ + if(strcmp(val, "yes") != 0 && strcmp(val, "no") != 0) return 0 +/** put integer_or_zero into variable */ +#define S_NUMBER_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NUMBER_OR_ZERO; cfg->var = atoi(val); } +/** put integer_nonzero into variable */ +#define S_NUMBER_NONZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NONZERO_NUMBER; cfg->var = atoi(val); } +/** put integer_or_zero into unsigned */ +#define S_UNSIGNED_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NUMBER_OR_ZERO; cfg->var = (unsigned)atoi(val); } +/** put integer_or_zero into size_t */ +#define S_SIZET_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NUMBER_OR_ZERO; cfg->var = (size_t)atoi(val); } +/** put integer_nonzero into size_t */ +#define S_SIZET_NONZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NONZERO_NUMBER; cfg->var = (size_t)atoi(val); } +/** put yesno into variable */ +#define S_YNO(str, var) if(strcmp(opt, str) == 0) \ + { IS_YES_OR_NO; cfg->var = (strcmp(val, "yes") == 0); } +/** put memsize into variable */ +#define S_MEMSIZE(str, var) if(strcmp(opt, str)==0) \ + { return cfg_parse_memsize(val, &cfg->var); } +/** put pow2 number into variable */ +#define S_POW2(str, var) if(strcmp(opt, str)==0) \ + { IS_POW2_NUMBER; cfg->var = (size_t)atoi(val); } +/** put string into variable */ +#define S_STR(str, var) if(strcmp(opt, str)==0) \ + { free(cfg->var); return (cfg->var = strdup(val)) != NULL; } +/** put string into strlist */ +#define S_STRLIST(str, var) if(strcmp(opt, str)==0) \ + { return cfg_strlist_insert(&cfg->var, strdup(val)); } +/** put string into strlist if not present yet*/ +#define S_STRLIST_UNIQ(str, var) if(strcmp(opt, str)==0) \ + { if(cfg_strlist_find(cfg->var, val)) { return 0;} \ + return cfg_strlist_insert(&cfg->var, strdup(val)); } +/** append string to strlist */ +#define S_STRLIST_APPEND(str, var) if(strcmp(opt, str)==0) \ + { return cfg_strlist_append(&cfg->var, strdup(val)); } + +int config_set_option(struct config_file* cfg, const char* opt, + const char* val) +{ + char buf[64]; + if(!opt) return 0; + if(opt[strlen(opt)-1] != ':' && strlen(opt)+2stat_interval = 0; + else if(atoi(val) == 0) + return 0; + else cfg->stat_interval = atoi(val); + } else if(strcmp(opt, "num-threads:") == 0) { + /* not supported, library must have 1 thread in bgworker */ + return 0; + } else if(strcmp(opt, "outgoing-port-permit:") == 0) { + return cfg_mark_ports(val, 1, + cfg->outgoing_avail_ports, 65536); + } else if(strcmp(opt, "outgoing-port-avoid:") == 0) { + return cfg_mark_ports(val, 0, + cfg->outgoing_avail_ports, 65536); + } else if(strcmp(opt, "local-zone:") == 0) { + return cfg_parse_local_zone(cfg, val); + } else if(strcmp(opt, "val-override-date:") == 0) { + if(strcmp(val, "") == 0 || strcmp(val, "0") == 0) { + cfg->val_date_override = 0; + } else if(strlen(val) == 14) { + cfg->val_date_override = cfg_convert_timeval(val); + return cfg->val_date_override != 0; + } else { + if(atoi(val) == 0) return 0; + cfg->val_date_override = (uint32_t)atoi(val); + } + } else if(strcmp(opt, "local-data-ptr:") == 0) { + char* ptr = cfg_ptr_reverse((char*)opt); + return cfg_strlist_insert(&cfg->local_data, ptr); + } else if(strcmp(opt, "logfile:") == 0) { + cfg->use_syslog = 0; + free(cfg->logfile); + return (cfg->logfile = strdup(val)) != NULL; + } + else if(strcmp(opt, "log-time-ascii:") == 0) + { IS_YES_OR_NO; cfg->log_time_ascii = (strcmp(val, "yes") == 0); + log_set_time_asc(cfg->log_time_ascii); } + else S_SIZET_NONZERO("max-udp-size:", max_udp_size) + else S_YNO("use-syslog:", use_syslog) + else S_STR("log-identity:", log_identity) + else S_YNO("extended-statistics:", stat_extended) + else S_YNO("statistics-inhibit-zero:", stat_inhibit_zero) + else S_YNO("statistics-cumulative:", stat_cumulative) + else S_YNO("shm-enable:", shm_enable) + else S_NUMBER_OR_ZERO("shm-key:", shm_key) + else S_YNO("do-ip4:", do_ip4) + else S_YNO("do-ip6:", do_ip6) + else S_YNO("do-udp:", do_udp) + else S_YNO("do-tcp:", do_tcp) + else S_YNO("prefer-ip4:", prefer_ip4) + else S_YNO("prefer-ip6:", prefer_ip6) + else S_YNO("tcp-upstream:", tcp_upstream) + else S_YNO("udp-upstream-without-downstream:", + udp_upstream_without_downstream) + else S_NUMBER_NONZERO("tcp-mss:", tcp_mss) + else S_NUMBER_NONZERO("outgoing-tcp-mss:", outgoing_tcp_mss) + else S_NUMBER_NONZERO("tcp-auth-query-timeout:", tcp_auth_query_timeout) + else S_NUMBER_NONZERO("tcp-idle-timeout:", tcp_idle_timeout) + else S_NUMBER_NONZERO("max-reuse-tcp-queries:", max_reuse_tcp_queries) + else S_NUMBER_NONZERO("tcp-reuse-timeout:", tcp_reuse_timeout) + else S_YNO("edns-tcp-keepalive:", do_tcp_keepalive) + else S_NUMBER_NONZERO("edns-tcp-keepalive-timeout:", tcp_keepalive_timeout) + else S_NUMBER_OR_ZERO("sock-queue-timeout:", sock_queue_timeout) + else S_YNO("ssl-upstream:", ssl_upstream) + else S_YNO("tls-upstream:", ssl_upstream) + else S_STR("ssl-service-key:", ssl_service_key) + else S_STR("tls-service-key:", ssl_service_key) + else S_STR("ssl-service-pem:", ssl_service_pem) + else S_STR("tls-service-pem:", ssl_service_pem) + else S_NUMBER_NONZERO("ssl-port:", ssl_port) + else S_NUMBER_NONZERO("tls-port:", ssl_port) + else S_STR("ssl-cert-bundle:", tls_cert_bundle) + else S_STR("tls-cert-bundle:", tls_cert_bundle) + else S_YNO("tls-win-cert:", tls_win_cert) + else S_YNO("tls-system-cert:", tls_win_cert) + else S_STRLIST("additional-ssl-port:", tls_additional_port) + else S_STRLIST("additional-tls-port:", tls_additional_port) + else S_STRLIST("tls-additional-ports:", tls_additional_port) + else S_STRLIST("tls-additional-port:", tls_additional_port) + else S_STRLIST_APPEND("tls-session-ticket-keys:", tls_session_ticket_keys) + else S_STR("tls-ciphers:", tls_ciphers) + else S_STR("tls-ciphersuites:", tls_ciphersuites) + else S_YNO("tls-use-sni:", tls_use_sni) + else S_NUMBER_NONZERO("https-port:", https_port) + else S_STR("http-endpoint:", http_endpoint) + else S_NUMBER_NONZERO("http-max-streams:", http_max_streams) + else S_MEMSIZE("http-query-buffer-size:", http_query_buffer_size) + else S_MEMSIZE("http-response-buffer-size:", http_response_buffer_size) + else S_YNO("http-nodelay:", http_nodelay) + else S_YNO("http-notls-downstream:", http_notls_downstream) + else S_YNO("interface-automatic:", if_automatic) + else S_STR("interface-automatic-ports:", if_automatic_ports) + else S_YNO("use-systemd:", use_systemd) + else S_YNO("do-daemonize:", do_daemonize) + else S_NUMBER_NONZERO("port:", port) + else S_NUMBER_NONZERO("outgoing-range:", outgoing_num_ports) + else S_SIZET_OR_ZERO("outgoing-num-tcp:", outgoing_num_tcp) + else S_SIZET_OR_ZERO("incoming-num-tcp:", incoming_num_tcp) + else S_MEMSIZE("stream-wait-size:", stream_wait_size) + else S_SIZET_NONZERO("edns-buffer-size:", edns_buffer_size) + else S_SIZET_NONZERO("msg-buffer-size:", msg_buffer_size) + else S_MEMSIZE("msg-cache-size:", msg_cache_size) + else S_POW2("msg-cache-slabs:", msg_cache_slabs) + else S_SIZET_NONZERO("num-queries-per-thread:",num_queries_per_thread) + else S_SIZET_OR_ZERO("jostle-timeout:", jostle_time) + else S_MEMSIZE("so-rcvbuf:", so_rcvbuf) + else S_MEMSIZE("so-sndbuf:", so_sndbuf) + else S_YNO("so-reuseport:", so_reuseport) + else S_YNO("ip-transparent:", ip_transparent) + else S_YNO("ip-freebind:", ip_freebind) + else S_NUMBER_OR_ZERO("ip-dscp:", ip_dscp) + else S_MEMSIZE("rrset-cache-size:", rrset_cache_size) + else S_POW2("rrset-cache-slabs:", rrset_cache_slabs) + else S_YNO("prefetch:", prefetch) + else S_YNO("prefetch-key:", prefetch_key) + else S_YNO("deny-any:", deny_any) + else if(strcmp(opt, "cache-max-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->max_ttl = atoi(val); MAX_TTL=(time_t)cfg->max_ttl;} + else if(strcmp(opt, "cache-max-negative-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->max_negative_ttl = atoi(val); MAX_NEG_TTL=(time_t)cfg->max_negative_ttl;} ++ else if(strcmp(opt, "cache-min-negative-ttl:") == 0) ++ { IS_NUMBER_OR_ZERO; cfg->min_negative_ttl = atoi(val); MIN_NEG_TTL=(time_t)cfg->min_negative_ttl;} + else if(strcmp(opt, "cache-min-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->min_ttl = atoi(val); MIN_TTL=(time_t)cfg->min_ttl;} + else if(strcmp(opt, "infra-cache-min-rtt:") == 0) { + IS_NUMBER_OR_ZERO; cfg->infra_cache_min_rtt = atoi(val); + RTT_MIN_TIMEOUT=cfg->infra_cache_min_rtt; + } + else if(strcmp(opt, "infra-cache-max-rtt:") == 0) { + IS_NUMBER_OR_ZERO; cfg->infra_cache_max_rtt = atoi(val); + RTT_MAX_TIMEOUT=cfg->infra_cache_max_rtt; + USEFUL_SERVER_TOP_TIMEOUT = RTT_MAX_TIMEOUT; + BLACKLIST_PENALTY = USEFUL_SERVER_TOP_TIMEOUT*4; + } + else S_YNO("infra-keep-probing:", infra_keep_probing) + else S_NUMBER_OR_ZERO("infra-host-ttl:", host_ttl) + else S_POW2("infra-cache-slabs:", infra_cache_slabs) + else S_SIZET_NONZERO("infra-cache-numhosts:", infra_cache_numhosts) + else S_NUMBER_OR_ZERO("delay-close:", delay_close) + else S_YNO("udp-connect:", udp_connect) + else S_STR("chroot:", chrootdir) + else S_STR("username:", username) + else S_STR("directory:", directory) + else S_STR("pidfile:", pidfile) + else S_YNO("hide-identity:", hide_identity) + else S_YNO("hide-version:", hide_version) + else S_YNO("hide-trustanchor:", hide_trustanchor) + else S_YNO("hide-http-user-agent:", hide_http_user_agent) + else S_STR("identity:", identity) + else S_STR("version:", version) + else S_STR("http-user-agent:", http_user_agent) + else if(strcmp(opt, "nsid:") == 0) { + free(cfg->nsid_cfg_str); + if (!(cfg->nsid_cfg_str = strdup(val))) + return 0; + /* Empty string is just validly unsetting nsid */ + if (*val == 0) { + free(cfg->nsid); + cfg->nsid = NULL; + cfg->nsid_len = 0; + return 1; + } + cfg->nsid = cfg_parse_nsid(val, &cfg->nsid_len); + return cfg->nsid != NULL; + } + else S_STRLIST("root-hints:", root_hints) + else S_STR("target-fetch-policy:", target_fetch_policy) + else S_YNO("harden-glue:", harden_glue) + else S_YNO("harden-short-bufsize:", harden_short_bufsize) + else S_YNO("harden-large-queries:", harden_large_queries) + else S_YNO("harden-dnssec-stripped:", harden_dnssec_stripped) + else S_YNO("harden-below-nxdomain:", harden_below_nxdomain) + else S_YNO("harden-referral-path:", harden_referral_path) + else S_YNO("harden-algo-downgrade:", harden_algo_downgrade) + else S_YNO("harden-unknown-additional:", harden_unknown_additional) + else S_YNO("use-caps-for-id:", use_caps_bits_for_id) + else S_STRLIST("caps-whitelist:", caps_whitelist) + else S_SIZET_OR_ZERO("unwanted-reply-threshold:", unwanted_threshold) + else S_STRLIST("private-address:", private_address) + else S_STRLIST("private-domain:", private_domain) + else S_YNO("do-not-query-localhost:", donotquery_localhost) + else S_STRLIST("do-not-query-address:", donotqueryaddrs) + else S_STRLIST("auto-trust-anchor-file:", auto_trust_anchor_file_list) + else S_STRLIST("trust-anchor-file:", trust_anchor_file_list) + else S_STRLIST("trust-anchor:", trust_anchor_list) + else S_STRLIST("trusted-keys-file:", trusted_keys_file_list) + else S_YNO("trust-anchor-signaling:", trust_anchor_signaling) + else S_YNO("root-key-sentinel:", root_key_sentinel) + else S_STRLIST("domain-insecure:", domain_insecure) + else S_NUMBER_OR_ZERO("val-bogus-ttl:", bogus_ttl) + else S_YNO("val-clean-additional:", val_clean_additional) + else S_NUMBER_OR_ZERO("val-log-level:", val_log_level) + else S_YNO("val-log-squelch:", val_log_squelch) + else S_YNO("log-queries:", log_queries) + else S_YNO("log-replies:", log_replies) + else S_YNO("log-tag-queryreply:", log_tag_queryreply) + else S_YNO("log-local-actions:", log_local_actions) + else S_YNO("log-servfail:", log_servfail) + else S_YNO("log-destaddr:", log_destaddr) + else S_YNO("val-permissive-mode:", val_permissive_mode) + else S_YNO("aggressive-nsec:", aggressive_nsec) + else S_YNO("ignore-cd-flag:", ignore_cd) + else S_YNO("disable-edns-do:", disable_edns_do) + else if(strcmp(opt, "serve-expired:") == 0) + { IS_YES_OR_NO; cfg->serve_expired = (strcmp(val, "yes") == 0); + SERVE_EXPIRED = cfg->serve_expired; } + else if(strcmp(opt, "serve-expired-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->serve_expired_ttl = atoi(val); SERVE_EXPIRED_TTL=(time_t)cfg->serve_expired_ttl;} *** 3605 LINES SKIPPED *** From nobody Fri May 10 21:33:59 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhwC4Fv1z5KSrZ; Fri, 10 May 2024 21:34:03 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta001.cacentral1.a.cloudfilter.net (omta001.cacentral1.a.cloudfilter.net [3.97.99.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VbhwC18Nsz4h5V; Fri, 10 May 2024 21:34:03 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4004a.ext.cloudfilter.net ([10.228.9.227]) by cmsmtp with ESMTPS id 5Pies7vbD2Ui55XsQsLuLM; Fri, 10 May 2024 21:34:02 +0000 Received: from spqr.komquats.com ([70.66.152.170]) by cmsmtp with ESMTPSA id 5XsOsD0DQWhyf5XsPs6sCi; Fri, 10 May 2024 21:34:01 +0000 X-Auth-User: cschuber X-Authority-Analysis: v=2.4 cv=MenPuI/f c=1 sm=1 tr=0 ts=663e92c9 a=y8EK/9tc/U6QY+pUhnbtgQ==:117 a=y8EK/9tc/U6QY+pUhnbtgQ==:17 a=kj9zAlcOel0A:10 a=TpHVaj0NuXgA:10 a=6I5d2MoRAAAA:8 a=kyzJ9L_xAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=kX6epsBMpL-IRcOtu6IA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=GQrHswQfl4I-Q0Y8ISRM:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id A4B422FC; Fri, 10 May 2024 14:33:59 -0700 (PDT) Received: by slippy.cwsent.com (Postfix, from userid 1000) id 721AB208; Fri, 10 May 2024 14:33:59 -0700 (PDT) X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.8+dev Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Cy Schubert cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 335c7cda1213 - main - unbound: Vendor import 1.20.0 In-reply-to: <202405102124.44ALOhr7099450@gitrepo.freebsd.org> References: <202405102124.44ALOhr7099450@gitrepo.freebsd.org> Comments: In-reply-to Cy Schubert message dated "Fri, 10 May 2024 21:24:43 +0000." List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 10 May 2024 14:33:59 -0700 Message-Id: <20240510213359.721AB208@slippy.cwsent.com> X-CMAE-Envelope: MS4xfIwtJPCOR6IbOLrAuUm0OX4t7wmXVy+NPY4AwXTK3OMpFitdU75fRLjhMjQ9/CLQp05J/n+WuyuJ/D/gVFullGqi4Hioy+CJJd7CsgUfy7AItjiyVBDN mSFNYXCzUGwLOe9+I7tDxgbXheQso6ADst8TGuWokZSOFrNDNm7NTKjGPyj1zh/ERUWAIEv3HVIbN09/VEHHYpaQS4xOgyxho5YYSg9gOqYn1bJ1xDAuuIOx TPiK4FNPAiB7mKxQOtbl8XuOPbe0v/F/naJS3Bmzedhk4Ej0EWejqkHmnUhwKVqo8EV6W/Ugu9mk7+xoYuZJ3Vez53TH+cms9++FKkvRgVA= X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Queue-Id: 4VbhwC18Nsz4h5V In message <202405102124.44ALOhr7099450@gitrepo.freebsd.org>, Cy Schubert write s: > The branch main has been updated by cy: > > URL: https://cgit.FreeBSD.org/src/commit/?id=335c7cda12138f2aefa41fb739707612 > cc12a9be > > commit 335c7cda12138f2aefa41fb739707612cc12a9be > Merge: 25945af47e7a c2a80056864d > Author: Cy Schubert > AuthorDate: 2024-05-10 20:56:34 +0000 > Commit: Cy Schubert > CommitDate: 2024-05-10 21:23:43 +0000 > > unbound: Vendor import 1.20.0 > > Release notes at > https://www.nlnetlabs.nl/news/2024/May/08/unbound-1.20.0-released > / > > Security: The DNSBomb vulnerability CVE-2024-33655 > > Merge commit 'c2a80056864d6eda0398fd127dc0ae515b39752b' into main I've put it in my calendar to MFC this in a month. -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0 From nobody Fri May 10 21:36:53 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbhzV1pstz5KT6W; Fri, 10 May 2024 21:36: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 4VbhzV1GwPz4hNn; Fri, 10 May 2024 21:36:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715377014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VntkTSPJcsSJetsp8MWCfJE4Khv8HfaqKqGEDeA8+Io=; b=QneRNkQ8jnTHz1PcH4c5pbGFLrMNN1wGhDytbV3UmgiPNgRNzF/5AFN7YNa5mvAx1f0eBo B2G2uddws1Oi84VqtSsadiSszZS5045TldJIEA4KNVmRK1Ao1cTwkRHnSzZmwDNnyGnnQ+ 9alQB5Rn3p28SGMnHYG1lwro4U7ToDjKMfdfSVp4Vte4Nz8B/uStlWMf9VP1XKAmy2PMVe 7cCn78y5JhZCnl6D6q5S8S4ce+OrBYbuMy0sntzhFMIVAiuPLBCmm7PLlCRSBxIqKKiaSh 169UvX9nycjRD91TEwoYy0tFcmpRlbEysAWSwC8ccIi74qgIJk5+fOV8nJhK0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715377014; a=rsa-sha256; cv=none; b=g7uWV4Mx4cPr/c3du/bPyRGrN0bJNoR/iCyN3/jTv3yY5YEnq1ey+7iskNJw10bDLDNWOf AXI58Rvyg1HsEnVE3jfaCn4h3S/gwM2GgJQnA9osPp0e1JZokKvZUbXV+Vb/OXmihWXRJ+ M/PfIr5Xe21ErD9Zl5j2zve6xQgHDdea+eyGnu8GRjxApnGjwpayAtB9PJlIhnjI3lz0UE Hetu87WJgnAIXHLrXFX00GZjxHemvA1Dn+sFZVJi88nqLYyvcY0lNY+508ulX2J4HNV/Ia RckrosScRZaif9R0LUxBCxCZnH032n8wSCA4tahYAoYH2KtSEhs0SEzHt/T7PA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715377014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VntkTSPJcsSJetsp8MWCfJE4Khv8HfaqKqGEDeA8+Io=; b=Gu/TIXlhMsjnWrLzvc5TQQ5RB+N4n5BwyhbnC3WBQs4zR7GNVL9YeJvtObbBNlQI7OrdK6 nCQuUazyGjoZGdP3eWBuoEmp8QMO2N4iVSBM5ANT2u/NdkA4h9f3/Vtm53okO0RLowZDKU Wj+xGUCcuY1lt4a4zwuf/k8CZnlzyTCoV3EMwrp2pMVdEyFYnQrIxdtSLNAVXe374HqEnf aFTIXpReQNgpkWiypzbggf84g58Wd17xnOn+9m+Vdq2UTOfIe7aSwSNSgNnMyREpwKvHPI eyOTlHZGiiulKGEt3mvoB9AJgYBYQsDuhB6LOl8SgIn4Ds0RVU7BDwsq9DWoYQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbhzV0hShztks; Fri, 10 May 2024 21:36:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44ALarTb016777; Fri, 10 May 2024 21:36:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALar5l016774; Fri, 10 May 2024 21:36:53 GMT (envelope-from git) Date: Fri, 10 May 2024 21:36:53 GMT Message-Id: <202405102136.44ALar5l016774@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 38c35248fe3b - main - kern/intr: remove support for passing trap frame as argument List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 38c35248fe3b740e107682b4a10bebe28992590f Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=38c35248fe3b740e107682b4a10bebe28992590f commit 38c35248fe3b740e107682b4a10bebe28992590f Author: Elliott Mitchell AuthorDate: 2021-10-08 21:43:26 +0000 Commit: Warner Losh CommitDate: 2024-05-10 21:33:24 +0000 kern/intr: remove support for passing trap frame as argument While otherwise a handy potential approach, getting the trap frame via the argument isn't documented and isn't supposed to be used. With all uses removed, now remove support to end the mixed calling conventions. Differential Revision: https://reviews.freebsd.org/D37688 Reviewed by: imp, mhorne Pull Request: https://github.com/freebsd/freebsd-src/pull/1225 --- sys/kern/kern_intr.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/sys/kern/kern_intr.c b/sys/kern/kern_intr.c index 9073e0d7af01..008f8d1242ca 100644 --- a/sys/kern/kern_intr.c +++ b/sys/kern/kern_intr.c @@ -1346,8 +1346,8 @@ ithread_loop(void *arg) * * Input: * o ie: the event connected to this interrupt. - * o frame: some archs (i.e. i386) pass a frame to some. - * handlers as their main argument. + * o frame: the current trap frame. + * * Return value: * o 0: everything ok. * o EINVAL: stray interrupt. @@ -1374,9 +1374,6 @@ intr_event_handle(struct intr_event *ie, struct trapframe *frame) /* * Execute fast interrupt handlers directly. - * To support clock handlers, if a handler registers - * with a NULL argument, then we pass it a pointer to - * a trapframe as its argument. */ td->td_intr_nesting_level++; filter = false; @@ -1405,12 +1402,8 @@ intr_event_handle(struct intr_event *ie, struct trapframe *frame) continue; } CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, - ih->ih_filter, ih->ih_argument == NULL ? frame : - ih->ih_argument, ih->ih_name); - if (ih->ih_argument == NULL) - ret = ih->ih_filter(frame); - else - ret = ih->ih_filter(ih->ih_argument); + ih->ih_filter, ih->ih_argument, ih->ih_name); + ret = ih->ih_filter(ih->ih_argument); #ifdef HWPMC_HOOKS PMC_SOFT_CALL_TF( , , intr, all, frame); #endif From nobody Fri May 10 21:44:58 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vbj8p6VRGz5KV4J; Fri, 10 May 2024 21:44: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 4Vbj8p5xdYz4jDB; Fri, 10 May 2024 21:44:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715377498; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qC3M2JPvJrNhrS39jVP3eRTS5iYGJrGsURdt1sEZhpU=; b=UeTa2Gyu9R/zYk6/4mgOXEkOW198AO9t8aRJHUwkg8p6GWwLEtSQ08MegvQFTwaDWWq8Qq m+rTYQJRpYnerb9Cfu6VoRPCo2PPnvrrHcmWcFd8gefiHUDVV2lV83LGKsag/4Ujn+Mr70 9smS2LOzQ2/JAwYcQJIFH1YEBl94HD0UNYRPhqyDvusYQQJCQ3TgaYshFbouDsecSTLnK9 gX2JdMFoC2hhL4YbIcONXVSUBHFf31OaHvd9fDND/UkI+wOqotfloRC4B+CDx8SzHefMOU 7ZnAwv6a6ZGxw13iA/7h9vMd8MJYqkCxo2j3tVMQXyxHvBSwWPhPdN0TOsQEpQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715377498; a=rsa-sha256; cv=none; b=aGQocHUGu/4elkWerYtQgLMbKMdtcgli3nGS5YuPxesKiS77B803tgm4IapgkUwujn+DRz c2/hYtoDgYhZQ2cNt5GShxd6nNSCRjheAfdnO2M2yPi6ULhhKSen9v2yLOd2GQ+3hK8U0l ll1RV85BWnER7txqx6/3vjAqD4uQXBI7rGCBt6MTZiGKbVq0YO/PI7W/Hyb+MvqeIoCre+ M7GQFDsDUWGfrZh9x9u72AcOZejrTme//Vohb+UPzNKKQnvqffhcGMfGFAaQ4+ih7kY2Gy Ufs5vtMWvzHE/bCDqNKL913Qo0ZB/9DUMmw4cAHD6HKgdlGb+ar+Bjxqf5G2gA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715377498; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qC3M2JPvJrNhrS39jVP3eRTS5iYGJrGsURdt1sEZhpU=; b=XXbbj+n6JHAU84LzoWEe0YN4nCcblLt8N1DCGaCkhWuZoNiPP5IMnIpzibxABgYPme5f1i J/zwdnBjhpXyhAh0lAWiXRniMj/WfYlyO1tLjM3CuRP26MqFgwBeuZ8g0FtU283AA7WQX7 0lDNBOAb2GIm1QLUuHzHwrukk+xUF4pRmPqta4q4Pyl26oXe/Bv34gUhcpH83PmVgL5KkE YCmPCXlrSJlEjWKhDKozY+YC13XY34rjqgVb/M2fbc+bFYWs4TrA9sGW8ha+k+lcglHB6l fFGP0UPJuXrLS+RMX/n3L5hnnU4RHQ+qnT/UeyKqPxjIg/36tVB7gZbwdtbbjA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vbj8p5PPZztxp; Fri, 10 May 2024 21:44: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 44ALiw6j033424; Fri, 10 May 2024 21:44:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44ALiw9h033421; Fri, 10 May 2024 21:44:58 GMT (envelope-from git) Date: Fri, 10 May 2024 21:44:58 GMT Message-Id: <202405102144.44ALiw9h033421@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a2409f17377e - main - intr: Document how to get the interrupt frame List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a2409f17377ebb5c6e3e522ae090a0845ee19aeb Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a2409f17377ebb5c6e3e522ae090a0845ee19aeb commit a2409f17377ebb5c6e3e522ae090a0845ee19aeb Author: Warner Losh AuthorDate: 2024-05-10 21:41:36 +0000 Commit: Warner Losh CommitDate: 2024-05-10 21:41:36 +0000 intr: Document how to get the interrupt frame Document that the only way to get the interrupt thread is to use curthread->td_intr_frame, rather than the old-style of having a NULL pointer for the interrupt thread. As of 38c35248fe3b, support for that has been removed. I neglected to update that commit message with these details. Suggested by: mhorne --- sys/kern/kern_intr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_intr.c b/sys/kern/kern_intr.c index 008f8d1242ca..7a57d964acd9 100644 --- a/sys/kern/kern_intr.c +++ b/sys/kern/kern_intr.c @@ -1346,7 +1346,10 @@ ithread_loop(void *arg) * * Input: * o ie: the event connected to this interrupt. - * o frame: the current trap frame. +-------------------------------------------------------------------------------- + * o frame: the current trap frame. If the client interrupt + * handler needs this frame, they should get it + * via curthread->td_intr_frame. * * Return value: * o 0: everything ok. From nobody Sat May 11 06:06:30 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VbwHV3lgzz5L9jX; Sat, 11 May 2024 06:06: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 4VbwHV3T9Jz4967; Sat, 11 May 2024 06:06:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715407590; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7L+IHGpN9q/GZ2+dI9vMVsVFxBcVEwN0Tn7k/4WwNYc=; b=TKwRrzM1VqrLFzM17xMZ16/Rq/g3F6kD+nM6I6cHcw1UAB11xqSYC1szRakxZpryqgyx4o n4q/j3wVATypSjB1UU+57grRc1EzZeQkbuXnquBQfjV+NHSRY3UYrh4eh1K59ACZet0nJG /jv/5C7XHuPUJ/6c0/WazNPIdV0mT0XnFTEKpeImenhVbrbHl5VgNAU83gW6IdHU/G3sAo fLWd22VVe/5iM8484qXNYfmmjL2FcsF6TqFe2t3pXeyyQfqgVF6bN9iFBiUWNI97ktLns6 nAoZpnDRCfP4MJVc4+RPr2m5FNKBvNj8gBdO3g04rn0bcQgnE8cuLRA0tPLotg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715407590; a=rsa-sha256; cv=none; b=pr0/MK1S02VnkcZSccj4Oz3ZJkqWaAclNmyGXxLBBodehQgGbFKfMI0bvd32BkLcilaRVV XGCEwS3U9q/MSZox8kbFRvMZ0+iQbOm9TDyn7zHU7uHy5YKvBtnL4xM5L+L4VErsHkeVRn abOgVNkc2V/3O4gsyJ3bzHi0GNMs3Zj544wcxgRVQrPxg2NLgCYu6riQWfMtlC2yeR07XO hPnx4o19oizfCe8up23HzQm3EDcXIm8QBsy4t019c3Lp1Z2X2Gi6EwBw++TvxI7N11CsRu FxYpfoXw8YBL23JJPTceTelLep7jhEcDKg5xFBYlTKnXifcTQ3OEVOCcUPEEiw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715407590; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7L+IHGpN9q/GZ2+dI9vMVsVFxBcVEwN0Tn7k/4WwNYc=; b=EPjEXtCT1Ee8duxUB2jHji0hx3kmQp21mMEJPP2YrNkTzwb7rvSBM93WJFJ0MGvMUBW0N1 Tj4HFOvAQxKhXHFELgckgqdlaBX16xOf7n8WoHQ8bRUiiPSv87jdeEu2CEDkpM/0xM3ruX CT6MBmorcIdIg/fIG+LfZPd1yZvHMx6fzPo7mkEY/XgxqKFeQzXBy+NZK4uEhKvVD+TtMQ a4Vglwq2ugxanQh0eLzkXc2dhDkA94lE317yOl60sbXgFzlsyKzkg1XBMPLCTtrTsrXmrH h31+ITKiPEUK/jsMzT3vJlgE70jJ+XzI8Y+fUIKfPUuk/7IHn85BN93Ykle58A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VbwHV2yGVz18Q5; Sat, 11 May 2024 06:06: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 44B66UbE077803; Sat, 11 May 2024 06:06:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44B66U38077800; Sat, 11 May 2024 06:06:30 GMT (envelope-from git) Date: Sat, 11 May 2024 06:06:30 GMT Message-Id: <202405110606.44B66U38077800@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: c1ebd76c3f28 - main - arm64: add page-to-pte convenience macros List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c1ebd76c3f283b10afe6b64f29fe68c4d1be3f8c Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=c1ebd76c3f283b10afe6b64f29fe68c4d1be3f8c commit c1ebd76c3f283b10afe6b64f29fe68c4d1be3f8c Author: Doug Moore AuthorDate: 2024-05-11 06:04:48 +0000 Commit: Doug Moore CommitDate: 2024-05-11 06:04:48 +0000 arm64: add page-to-pte convenience macros Define macros to perform pte to vm_page and vm_page to pte conversions without composing two macros, and use the convenience macros wherever possible. Reviewed by: alc Differential Revision: https://reviews.freebsd.org/D44699 --- sys/arm64/arm64/pmap.c | 107 ++++++++++++++++++++++--------------------------- 1 file changed, 48 insertions(+), 59 deletions(-) diff --git a/sys/arm64/arm64/pmap.c b/sys/arm64/arm64/pmap.c index b1a85befa4e1..7780c6ec8767 100644 --- a/sys/arm64/arm64/pmap.c +++ b/sys/arm64/arm64/pmap.c @@ -281,6 +281,9 @@ VM_PAGE_TO_PV_LIST_LOCK(vm_page_t m) } \ } while (0) +#define PTE_TO_VM_PAGE(pte) PHYS_TO_VM_PAGE(PTE_TO_PHYS(pte)) +#define VM_PAGE_TO_PTE(m) PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) + /* * The presence of this flag indicates that the mapping is writeable. * If the ATTR_S1_AP_RO bit is also set, then the mapping is clean, otherwise @@ -2095,7 +2098,7 @@ pmap_kenter(vm_offset_t sva, vm_size_t size, vm_paddr_t pa, int mode) */ if ((va & L2_OFFSET) == 0 && size >= L2_SIZE && (pa & L2_OFFSET) == 0 && vm_initialized) { - mpte = PHYS_TO_VM_PAGE(PTE_TO_PHYS(pmap_load(pde))); + mpte = PTE_TO_VM_PAGE(pmap_load(pde)); KASSERT(pmap_every_pte_zero(VM_PAGE_TO_PHYS(mpte)), ("pmap_kenter: Unexpected mapping")); PMAP_LOCK(kernel_pmap); @@ -2279,7 +2282,7 @@ void pmap_qenter(vm_offset_t sva, vm_page_t *ma, int count) { pd_entry_t *pde; - pt_entry_t attr, old_l3e, pa, *pte; + pt_entry_t attr, old_l3e, *pte; vm_offset_t va; vm_page_t m; int i, lvl; @@ -2294,11 +2297,10 @@ pmap_qenter(vm_offset_t sva, vm_page_t *ma, int count) ("pmap_qenter: Invalid level %d", lvl)); m = ma[i]; - pa = VM_PAGE_TO_PHYS(m); attr = ATTR_DEFAULT | ATTR_S1_AP(ATTR_S1_AP_RW) | ATTR_S1_XN | ATTR_KERN_GP | ATTR_S1_IDX(m->md.pv_memattr) | L3_PAGE; pte = pmap_l2_to_l3(pde, va); - old_l3e |= pmap_load_store(pte, PHYS_TO_PTE(pa) | attr); + old_l3e |= pmap_load_store(pte, VM_PAGE_TO_PTE(m) | attr); va += L3_SIZE; } @@ -2411,7 +2413,7 @@ _pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free) l1 = pmap_l1(pmap, va); tl1 = pmap_load(l1); - l2pg = PHYS_TO_VM_PAGE(PTE_TO_PHYS(tl1)); + l2pg = PTE_TO_VM_PAGE(tl1); pmap_unwire_l3(pmap, va, l2pg, free); } else if (m->pindex < (NUL2E + NUL1E)) { /* We just released an l2, unhold the matching l1 */ @@ -2420,7 +2422,7 @@ _pmap_unwire_l3(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free) l0 = pmap_l0(pmap, va); tl0 = pmap_load(l0); - l1pg = PHYS_TO_VM_PAGE(PTE_TO_PHYS(tl0)); + l1pg = PTE_TO_VM_PAGE(tl0); pmap_unwire_l3(pmap, va, l1pg, free); } pmap_invalidate_page(pmap, va, false); @@ -2447,7 +2449,7 @@ pmap_unuse_pt(pmap_t pmap, vm_offset_t va, pd_entry_t ptepde, if (ADDR_IS_KERNEL(va)) return (0); KASSERT(ptepde != 0, ("pmap_unuse_pt: ptepde != 0")); - mpte = PHYS_TO_VM_PAGE(PTE_TO_PHYS(ptepde)); + mpte = PTE_TO_VM_PAGE(ptepde); return (pmap_unwire_l3(pmap, va, mpte, free)); } @@ -2610,7 +2612,7 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, struct rwlock **lockp) l0p = &pmap->pm_l0[l0index]; KASSERT((pmap_load(l0p) & ATTR_DESCR_VALID) == 0, ("%s: L0 entry %#lx is valid", __func__, pmap_load(l0p))); - l0e = PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | L0_TABLE; + l0e = VM_PAGE_TO_PTE(m) | L0_TABLE; /* * Mark all kernel memory as not accessible from userspace @@ -2642,7 +2644,7 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, struct rwlock **lockp) return (NULL); } } else { - l1pg = PHYS_TO_VM_PAGE(PTE_TO_PHYS(tl0)); + l1pg = PTE_TO_VM_PAGE(tl0); l1pg->ref_count++; } @@ -2650,7 +2652,7 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, struct rwlock **lockp) l1 = &l1[ptepindex & Ln_ADDR_MASK]; KASSERT((pmap_load(l1) & ATTR_DESCR_VALID) == 0, ("%s: L1 entry %#lx is valid", __func__, pmap_load(l1))); - pmap_store(l1, PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | L1_TABLE); + pmap_store(l1, VM_PAGE_TO_PTE(m) | L1_TABLE); } else { vm_pindex_t l0index, l1index; pd_entry_t *l0, *l1, *l2; @@ -2685,7 +2687,7 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, struct rwlock **lockp) return (NULL); } } else { - l2pg = PHYS_TO_VM_PAGE(PTE_TO_PHYS(tl1)); + l2pg = PTE_TO_VM_PAGE(tl1); l2pg->ref_count++; } } @@ -2694,7 +2696,7 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t ptepindex, struct rwlock **lockp) l2 = &l2[ptepindex & Ln_ADDR_MASK]; KASSERT((pmap_load(l2) & ATTR_DESCR_VALID) == 0, ("%s: L2 entry %#lx is valid", __func__, pmap_load(l2))); - pmap_store(l2, PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | L2_TABLE); + pmap_store(l2, VM_PAGE_TO_PTE(m) | L2_TABLE); } pmap_resident_count_inc(pmap, 1); @@ -2719,7 +2721,7 @@ retry: l2 = pmap_l1_to_l2(l1, va); if (!ADDR_IS_KERNEL(va)) { /* Add a reference to the L2 page. */ - l2pg = PHYS_TO_VM_PAGE(PTE_TO_PHYS(pmap_load(l1))); + l2pg = PTE_TO_VM_PAGE(pmap_load(l1)); l2pg->ref_count++; } else l2pg = NULL; @@ -2788,7 +2790,7 @@ retry: case 2: tpde = pmap_load(pde); if (tpde != 0) { - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(tpde)); + m = PTE_TO_VM_PAGE(tpde); m->ref_count++; return (m); } @@ -2907,7 +2909,6 @@ SYSCTL_PROC(_vm, OID_AUTO, kvm_free, CTLTYPE_LONG | CTLFLAG_RD | CTLFLAG_MPSAFE, void pmap_growkernel(vm_offset_t addr) { - vm_paddr_t paddr; vm_page_t nkpg; pd_entry_t *l0, *l1, *l2; @@ -2935,8 +2936,7 @@ pmap_growkernel(vm_offset_t addr) nkpg->pindex = kernel_vm_end >> L1_SHIFT; /* See the dmb() in _pmap_alloc_l3(). */ dmb(ishst); - paddr = VM_PAGE_TO_PHYS(nkpg); - pmap_store(l1, PHYS_TO_PTE(paddr) | L1_TABLE); + pmap_store(l1, VM_PAGE_TO_PTE(nkpg) | L1_TABLE); continue; /* try again */ } l2 = pmap_l1_to_l2(l1, kernel_vm_end); @@ -2956,8 +2956,7 @@ pmap_growkernel(vm_offset_t addr) nkpg->pindex = kernel_vm_end >> L2_SHIFT; /* See the dmb() in _pmap_alloc_l3(). */ dmb(ishst); - paddr = VM_PAGE_TO_PHYS(nkpg); - pmap_store(l2, PHYS_TO_PTE(paddr) | L2_TABLE); + pmap_store(l2, VM_PAGE_TO_PTE(nkpg) | L2_TABLE); kernel_vm_end = (kernel_vm_end + L2_SIZE) & ~L2_OFFSET; if (kernel_vm_end - 1 >= vm_map_max(kernel_map)) { @@ -3110,7 +3109,7 @@ reclaim_pv_chunk_domain(pmap_t locked_pmap, struct rwlock **lockp, int domain) if ((tpte & ATTR_CONTIGUOUS) != 0) (void)pmap_demote_l3c(pmap, pte, va); tpte = pmap_load_clear(pte); - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(tpte)); + m = PTE_TO_VM_PAGE(tpte); if (pmap_pte_dirty(pmap, tpte)) vm_page_dirty(m); if ((tpte & ATTR_AF) != 0) { @@ -3690,7 +3689,7 @@ pmap_remove_l2(pmap_t pmap, pt_entry_t *l2, vm_offset_t sva, pmap->pm_stats.wired_count -= L2_SIZE / PAGE_SIZE; pmap_resident_count_dec(pmap, L2_SIZE / PAGE_SIZE); if (old_l2 & ATTR_SW_MANAGED) { - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(old_l2)); + m = PTE_TO_VM_PAGE(old_l2); pvh = page_to_pvh(m); CHANGE_PV_LIST_LOCK_TO_VM_PAGE(lockp, m); pmap_pvh_free(pvh, pmap, sva); @@ -3742,7 +3741,7 @@ pmap_remove_l3(pmap_t pmap, pt_entry_t *l3, vm_offset_t va, pmap->pm_stats.wired_count -= 1; pmap_resident_count_dec(pmap, 1); if (old_l3 & ATTR_SW_MANAGED) { - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(old_l3)); + m = PTE_TO_VM_PAGE(old_l3); if (pmap_pte_dirty(pmap, old_l3)) vm_page_dirty(m); if (old_l3 & ATTR_AF) @@ -3801,7 +3800,7 @@ pmap_remove_l3c(pmap_t pmap, pt_entry_t *l3p, vm_offset_t va, vm_offset_t *vap, pmap->pm_stats.wired_count -= L3C_ENTRIES; pmap_resident_count_dec(pmap, L3C_ENTRIES); if ((first_l3e & ATTR_SW_MANAGED) != 0) { - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(first_l3e)); + m = PTE_TO_VM_PAGE(first_l3e); new_lock = VM_PAGE_TO_PV_LIST_LOCK(m); if (new_lock != *lockp) { if (*lockp != NULL) { @@ -3870,7 +3869,7 @@ pmap_remove_l3_range(pmap_t pmap, pd_entry_t l2e, vm_offset_t sva, PMAP_LOCK_ASSERT(pmap, MA_OWNED); KASSERT(rounddown2(sva, L2_SIZE) + L2_SIZE == roundup2(eva, L2_SIZE), ("pmap_remove_l3_range: range crosses an L3 page table boundary")); - l3pg = !ADDR_IS_KERNEL(sva) ? PHYS_TO_VM_PAGE(PTE_TO_PHYS(l2e)) : NULL; + l3pg = !ADDR_IS_KERNEL(sva) ? PTE_TO_VM_PAGE(l2e) : NULL; va = eva; for (l3 = pmap_l2_to_l3(&l2e, sva); sva != eva; l3++, sva += L3_SIZE) { old_l3 = pmap_load(l3); @@ -3907,7 +3906,7 @@ pmap_remove_l3_range(pmap_t pmap, pd_entry_t l2e, vm_offset_t sva, pmap->pm_stats.wired_count--; pmap_resident_count_dec(pmap, 1); if ((old_l3 & ATTR_SW_MANAGED) != 0) { - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(old_l3)); + m = PTE_TO_VM_PAGE(old_l3); if (pmap_pte_dirty(pmap, old_l3)) vm_page_dirty(m); if ((old_l3 & ATTR_AF) != 0) @@ -4220,7 +4219,7 @@ pmap_protect_l2(pmap_t pmap, pt_entry_t *l2, vm_offset_t sva, pt_entry_t mask, if ((old_l2 & ATTR_SW_MANAGED) != 0 && (nbits & ATTR_S1_AP(ATTR_S1_AP_RO)) != 0 && pmap_pte_dirty(pmap, old_l2)) { - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(old_l2)); + m = PTE_TO_VM_PAGE(old_l2); for (mt = m; mt < &m[L2_SIZE / PAGE_SIZE]; mt++) vm_page_dirty(mt); } @@ -4271,7 +4270,7 @@ pmap_mask_set_l3c(pmap_t pmap, pt_entry_t *l3p, vm_offset_t va, if ((l3e & ATTR_SW_MANAGED) != 0 && (nbits & ATTR_S1_AP(ATTR_S1_AP_RO)) != 0 && dirty) { - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(pmap_load(l3p))); + m = PTE_TO_VM_PAGE(pmap_load(l3p)); for (mt = m; mt < &m[L3C_ENTRIES]; mt++) vm_page_dirty(mt); } @@ -4405,7 +4404,7 @@ pmap_mask_set_locked(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, pt_entry_t m if ((l3 & ATTR_SW_MANAGED) != 0 && (nbits & ATTR_S1_AP(ATTR_S1_AP_RO)) != 0 && pmap_pte_dirty(pmap, l3)) - vm_page_dirty(PHYS_TO_VM_PAGE(PTE_TO_PHYS(l3))); + vm_page_dirty(PTE_TO_VM_PAGE(l3)); if (va == va_next) va = sva; @@ -4733,7 +4732,7 @@ setl3: * destroyed by pmap_remove_l3(). */ if (mpte == NULL) - mpte = PHYS_TO_VM_PAGE(PTE_TO_PHYS(pmap_load(l2))); + mpte = PTE_TO_VM_PAGE(pmap_load(l2)); KASSERT(mpte >= vm_page_array && mpte < &vm_page_array[vm_page_array_size], ("pmap_promote_l2: page table page is out of range")); @@ -4923,8 +4922,7 @@ restart: KASSERT(l1p != NULL, ("va %#lx lost l1 entry", va)); origpte = pmap_load(l1p); if ((origpte & ATTR_DESCR_VALID) == 0) { - mp = PHYS_TO_VM_PAGE( - PTE_TO_PHYS(pmap_load(l0p))); + mp = PTE_TO_VM_PAGE(pmap_load(l0p)); mp->ref_count++; } } @@ -4953,8 +4951,7 @@ restart: l1p = pmap_l1(pmap, va); origpte = pmap_load(l2p); if ((origpte & ATTR_DESCR_VALID) == 0) { - mp = PHYS_TO_VM_PAGE( - PTE_TO_PHYS(pmap_load(l1p))); + mp = PTE_TO_VM_PAGE(pmap_load(l1p)); mp->ref_count++; } } @@ -5089,7 +5086,7 @@ retry: if (pde != NULL && lvl == 2) { l3 = pmap_l2_to_l3(pde, va); if (!ADDR_IS_KERNEL(va) && mpte == NULL) { - mpte = PHYS_TO_VM_PAGE(PTE_TO_PHYS(pmap_load(pde))); + mpte = PTE_TO_VM_PAGE(pmap_load(pde)); mpte->ref_count++; } goto havel3; @@ -5099,8 +5096,7 @@ retry: (l3 = pmap_demote_l2_locked(pmap, l2, va, &lock)) != NULL) { l3 = &l3[pmap_l3_index(va)]; if (!ADDR_IS_KERNEL(va)) { - mpte = PHYS_TO_VM_PAGE( - PTE_TO_PHYS(pmap_load(l2))); + mpte = PTE_TO_VM_PAGE(pmap_load(l2)); mpte->ref_count++; } goto havel3; @@ -5335,7 +5331,7 @@ pmap_enter_l2_rx(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, KASSERT(ADDR_IS_CANONICAL(va), ("%s: Address not in canonical form: %lx", __func__, va)); - new_l2 = (pd_entry_t)(PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | ATTR_DEFAULT | + new_l2 = (pd_entry_t)(VM_PAGE_TO_PTE(m) | ATTR_DEFAULT | ATTR_S1_IDX(m->md.pv_memattr) | ATTR_S1_AP(ATTR_S1_AP_RO) | L2_BLOCK); new_l2 |= pmap_pte_bti(pmap, va); @@ -5464,7 +5460,7 @@ pmap_enter_l2(pmap_t pmap, vm_offset_t va, pd_entry_t new_l2, u_int flags, * an invalidation at all levels after clearing * the L2_TABLE entry. */ - mt = PHYS_TO_VM_PAGE(PTE_TO_PHYS(pmap_load(l2))); + mt = PTE_TO_VM_PAGE(pmap_load(l2)); if (pmap_insert_pt_page(pmap, mt, false, false)) panic("pmap_enter_l2: trie insert failed"); pmap_clear(l2); @@ -5563,7 +5559,7 @@ pmap_enter_l3c_rx(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_page_t *ml3p, KASSERT(ADDR_IS_CANONICAL(va), ("%s: Address not in canonical form: %lx", __func__, va)); - l3e = PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | ATTR_DEFAULT | + l3e = VM_PAGE_TO_PTE(m) | ATTR_DEFAULT | ATTR_S1_IDX(m->md.pv_memattr) | ATTR_S1_AP(ATTR_S1_AP_RO) | ATTR_CONTIGUOUS | L3_PAGE; l3e |= pmap_pte_bti(pmap, va); @@ -5632,9 +5628,8 @@ retry: l3p = pmap_demote_l2_locked(pmap, l2p, va, lockp); if (l3p != NULL) { - *ml3p = PHYS_TO_VM_PAGE( - PTE_TO_PHYS(pmap_load( - l2p))); + *ml3p = PTE_TO_VM_PAGE( + pmap_load(l2p)); (*ml3p)->ref_count += L3C_ENTRIES; goto have_l3p; @@ -5648,8 +5643,7 @@ retry: * count. Otherwise, we attempt to allocate it. */ if (lvl == 2 && pmap_load(pde) != 0) { - *ml3p = PHYS_TO_VM_PAGE(PTE_TO_PHYS( - pmap_load(pde))); + *ml3p = PTE_TO_VM_PAGE(pmap_load(pde)); (*ml3p)->ref_count += L3C_ENTRIES; } else { *ml3p = _pmap_alloc_l3(pmap, l2pindex, (flags & @@ -5902,8 +5896,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, if ((pmap_load(l2) & ATTR_DESCR_MASK) == L2_BLOCK) return (NULL); - mpte = PHYS_TO_VM_PAGE( - PTE_TO_PHYS(pmap_load(l2))); + mpte = PTE_TO_VM_PAGE(pmap_load(l2)); mpte->ref_count++; } else { mpte = _pmap_alloc_l3(pmap, l2pindex, @@ -6162,8 +6155,7 @@ pmap_copy_l3c(pmap_t pmap, pt_entry_t *l3p, vm_offset_t va, pt_entry_t l3e, return (false); } - if (!pmap_pv_insert_l3c(pmap, va, PHYS_TO_VM_PAGE(PTE_TO_PHYS(l3e)), - lockp)) { + if (!pmap_pv_insert_l3c(pmap, va, PTE_TO_VM_PAGE(l3e), lockp)) { if (ml3 != NULL) pmap_abort_ptp(pmap, va, ml3); return (false); @@ -6252,8 +6244,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, vm_size_t len, l1 = pmap_l1(dst_pmap, addr); } else { l0 = pmap_l0(dst_pmap, addr); - dst_m = PHYS_TO_VM_PAGE( - PTE_TO_PHYS(pmap_load(l0))); + dst_m = PTE_TO_VM_PAGE(pmap_load(l0)); dst_m->ref_count++; } KASSERT(pmap_load(l1) == 0, @@ -6308,7 +6299,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, vm_size_t len, } KASSERT((srcptepaddr & ATTR_DESCR_MASK) == L2_TABLE, ("pmap_copy: invalid L2 entry")); - srcmpte = PHYS_TO_VM_PAGE(PTE_TO_PHYS(srcptepaddr)); + srcmpte = PTE_TO_VM_PAGE(srcptepaddr); KASSERT(srcmpte->ref_count > 0, ("pmap_copy: source page table page is unused")); if (va_next > end_addr) @@ -6345,7 +6336,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, vm_size_t len, src_pte += L3C_ENTRIES - 1; } else if (pmap_load(dst_pte) == 0 && pmap_try_insert_pv_entry(dst_pmap, addr, - PHYS_TO_VM_PAGE(PTE_TO_PHYS(ptetemp)), &lock)) { + PTE_TO_VM_PAGE(ptetemp), &lock)) { /* * Clear the wired, contiguous, modified, and * accessed bits from the destination PTE. @@ -7359,7 +7350,7 @@ pmap_advise(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, int advice) * can be avoided by making the page * dirty now. */ - m = PHYS_TO_VM_PAGE(PTE_TO_PHYS(oldl3)); + m = PTE_TO_VM_PAGE(oldl3); vm_page_dirty(m); } if ((oldl3 & ATTR_CONTIGUOUS) != 0) { @@ -9290,18 +9281,17 @@ pmap_san_enter(vm_offset_t va) MPASS(l1 != NULL); if ((pmap_load(l1) & ATTR_DESCR_VALID) == 0) { m = pmap_san_enter_alloc_l3(); - pmap_store(l1, PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | L1_TABLE); + pmap_store(l1, VM_PAGE_TO_PTE(m) | L1_TABLE); } l2 = pmap_l1_to_l2(l1, va); if ((pmap_load(l2) & ATTR_DESCR_VALID) == 0) { m = pmap_san_enter_alloc_l2(); if (m != NULL) { - pmap_store(l2, PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | + pmap_store(l2, VM_PAGE_TO_PTE(m) | PMAP_SAN_PTE_BITS | L2_BLOCK); } else { m = pmap_san_enter_alloc_l3(); - pmap_store(l2, PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | - L2_TABLE); + pmap_store(l2, VM_PAGE_TO_PTE(m) | L2_TABLE); } dmb(ishst); } @@ -9311,8 +9301,7 @@ pmap_san_enter(vm_offset_t va) if ((pmap_load(l3) & ATTR_DESCR_VALID) != 0) return; m = pmap_san_enter_alloc_l3(); - pmap_store(l3, PHYS_TO_PTE(VM_PAGE_TO_PHYS(m)) | - PMAP_SAN_PTE_BITS | L3_PAGE); + pmap_store(l3, VM_PAGE_TO_PTE(m) | PMAP_SAN_PTE_BITS | L3_PAGE); dmb(ishst); } #endif /* KASAN || KMSAN */ From nobody Sat May 11 13:32:18 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vc69z0dxvz5K7g5 for ; Sat, 11 May 2024 13:32:23 +0000 (UTC) (envelope-from rrs@lakerest.net) Received: from smtp-out.a.misk.com (smtp-out.a.misk.com [199.47.128.30]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Vc69y5TvCz4nXp for ; Sat, 11 May 2024 13:32:22 +0000 (UTC) (envelope-from rrs@lakerest.net) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of rrs@lakerest.net designates 199.47.128.30 as permitted sender) smtp.mailfrom=rrs@lakerest.net X-Authenticated-User: rrs@lakerest.net Received: from 10.1.1.87 (nonat-pool-1510-nbry-162-213-116-120.carolinaconnect.net [162.213.116.120]) by smtp.misk.com (MiskSMTP) with ESMTPSA id 4d05c9fa4e634756871e2fb0ed417ccd for ; Sat, 11 May 2024 13:32:18 +0000 Message-ID: Date: Sat, 11 May 2024 09:32:18 -0400 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: fce03f85c5bf - main - TCP can be subject to Sack Attacks lets fix this issue. To: Alexander Leidinger , Randall Stewart Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202405051310.445DAMEO069675@gitrepo.freebsd.org> <97c2eddd682d7347b0d26c0f042401bb@Leidinger.net> Content-Language: en-US From: rrs In-Reply-To: <97c2eddd682d7347b0d26c0f042401bb@Leidinger.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spamd-Bar: - X-Spamd-Result: default: False [-1.65 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-0.99)[-0.995]; NEURAL_SPAM_SHORT(0.74)[0.738]; R_SPF_ALLOW(-0.20)[+ip4:199.47.128.0/23:c]; RCVD_IN_DNSWL_MED(-0.20)[199.47.128.30:from]; MIME_GOOD(-0.10)[text/plain]; ONCE_RECEIVED(0.10)[]; XM_UA_NO_VERSION(0.01)[]; ASN(0.00)[asn:14618, ipnet:199.47.128.0/24, country:US]; RCVD_COUNT_ONE(0.00)[1]; FREEFALL_USER(0.00)[rrs]; TO_DN_SOME(0.00)[]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; R_DKIM_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_FIVE(0.00)[5]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DMARC_NA(0.00)[lakerest.net]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspamd-Queue-Id: 4Vc69y5TvCz4nXp Alexander: In-line On 5/6/24 3:27 AM, Alexander Leidinger wrote: > Am 2024-05-05 15:10, schrieb Randall Stewart: >> The branch main has been updated by rrs: >> >> URL: >> https://cgit.FreeBSD.org/src/commit/?id=fce03f85c5bfc0d73fb5c43ac1affad73efab11a >> >> commit fce03f85c5bfc0d73fb5c43ac1affad73efab11a >> Author:     Randall Stewart >> AuthorDate: 2024-05-05 13:08:47 +0000 >> Commit:     Randall Stewart >> CommitDate: 2024-05-05 13:08:47 +0000 >> >>     TCP can be subject to Sack Attacks lets fix this issue. >> >>     There is a type of attack that a TCP peer can launch on a >> connection. This is for sure in Rack or BBR and probably even the >> default stack if it uses lists in sack processing. The idea of the >> attack is that the attacker is driving you to look at 100's of sack >> blocks that only update 1 byte. So for example if you have 1 - 10,000 >> bytes outstanding the attacker sends in something like: >> >>     ACK 0 SACK(1-512) SACK(1024 - 1536), SACK(2048-2536), SACK(4096 - >> 4608), SACK(8192-8704) >>     This first sack looks fine but then the attacker sends >> >>     ACK 0 SACK(1-512) SACK(1025 - 1537), SACK(2049-2537), SACK(4097 - >> 4609), SACK(8193-8705) >>     ACK 0 SACK(1-512) SACK(1027 - 1539), SACK(2051-2539), SACK(4099 - >> 4611), SACK(8195-8707) >>     ... >>     These blocks are making you hunt across your linked list and >> split things up so that you have an entry for every other byte. Has >> your list grows you spend more and more CPU running through the >> lists. The idea here is the attacker chooses entries as far apart as >> possible that make you run through the list. This example is small >> but in theory if the window is open to say 1Meg you could end up with >> 100's of thousands link list entries. > > Would it make sense to use a tree list (generic example: > https://commons.apache.org/proper/commons-collections/apidocs/org/apache/commons/collections4/list/TreeList.html) > instead of a linked list additional/independently to what you committed? > We used to use an RBtree but this had CPU consequences that @gallatin and I worked on. Using this customized hash-list which is tuned for TCP sequence numbers saved us about 10% CPU IIRR over the RB tree. With these new fixes I think we are ok and I really don't want to introduce more overhead cpu wise :) R >> diff --git a/sys/netinet/tcp_stacks/sack_filter.c >> b/sys/netinet/tcp_stacks/sack_filter.c >> index e82fcee2ffac..fc9ee8454a1e 100644 >> --- a/sys/netinet/tcp_stacks/sack_filter.c >> +++ b/sys/netinet/tcp_stacks/sack_filter.c > >>  #ifndef _KERNEL >> + >> +static u_int tcp_fixed_maxseg(const struct tcpcb *tp) >> +{ >> +    /* Lets pretend their are timestamps on for user space */ >> +    return (tp->t_maxseg - 12); >> +} > > Typo in the comment? > > Bye, > Alexander. > From nobody Sat May 11 14:34:24 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vc7YX62QNz5KDcr; Sat, 11 May 2024 14:34: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 4Vc7YX3XjQz40Yq; Sat, 11 May 2024 14:34:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715438064; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2TPwqDvFZehuPVYJtptm5G2o0Bdg3uPXJ392T4F1zx8=; b=mCYaHfKsGfRel0drNG4nZ4AobJRB2SrhScV4gMnPIIgQJsiC4b+o7ISsP3tZIEGW6DqXzS nSk6QXDcaB1MUS5p2hJwOvCPntso2iRQ4NyNf5SlklTov3AimaNlkj1k08lus4Ow4J32Be CjF2LI+8XYrAyBQdsFhXkjel3A87xoC9bVvbWsR61QsM022cdvB+75liXmTUu2oXagCYoM pgxZ8tDp8qBSjrTsma8eMVfpnJKIZupueZMLgh5jcXm11qiShDx0PrxVYChB761BcfhCvf FElnS133rCct7Zwiro/saeB7TFaaxa38SCgs4DeEnxecC9jAiE128fyHbGXhxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715438064; a=rsa-sha256; cv=none; b=FnugjsagakO2/gCpew1fUk+oq4RHJkY6qHh0lofCUmjUvInWNdgCeumFbknerHwbGjx/4G v0q9ZydkrVOFqZcaWvy3IqEHlajve82hh78Pqnxe9wbnW6RYkmRawiwI28QL5cT2GBEbv0 I14hqinNouy3uHmJzWtnCVYwK4nMPatd89bIL+aoT9N4p6DXn6xcxS4wpqyPmbmXLimjdN TAxzBn9/c8w4a+IyB8DxG3ll2ZO1WZeNSCZHHJRGddVZg0IbpG/m2FFVCIkRXpsHduE1ui 7W1lYr8iaM+wCyo2DmciWkHuTfKggcu7/sOBsXG8fnXFXkBaEq7jyOsUqw3MKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715438064; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2TPwqDvFZehuPVYJtptm5G2o0Bdg3uPXJ392T4F1zx8=; b=fws5TjGDWf2f003C7wuj2CwOY+bAtAEU+Rtzc2RjWLP25wsTSCe0jAZvOHbGcJUg2yFH0S HJ10LIW/hMlZbqCiKM04Q6rF6jaH4ZWh6Aa/H5nwZ8hg/Cw+uCCJiN8MqkdooWAN8eS1Gx oMxcBmtTNFc9Ko2hxbo6XOyO+sMyeV8quVhthl72Pq0Q7jcE5RjMQhocvdmnkvG0J4g+D9 qWe/29l5JwmAsPH+C3A6nHJUXY/9SwAc/+jhdGPqb3G09iHGjFYfQineyo69gQFCTvJdda F7jrl5xkx8k7tK0ag9pc8P7e97jfL9c32MvYNtWC9UMKGqztUz9V8OM1+VIuSA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vc7YX1GpmzPvx; Sat, 11 May 2024 14:34: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 44BEYOVj037272; Sat, 11 May 2024 14:34:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BEYOqc037269; Sat, 11 May 2024 14:34:24 GMT (envelope-from git) Date: Sat, 11 May 2024 14:34:24 GMT Message-Id: <202405111434.44BEYOqc037269@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 2f923a0cedb8 - main - tcp rack: improve handling of front states List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2f923a0cedb8db9b8bd042c5b457dee6333604fe Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=2f923a0cedb8db9b8bd042c5b457dee6333604fe commit 2f923a0cedb8db9b8bd042c5b457dee6333604fe Author: Michael Tuexen AuthorDate: 2024-05-11 14:28:45 +0000 Commit: Michael Tuexen CommitDate: 2024-05-11 14:28:45 +0000 tcp rack: improve handling of front states When the RACK stack wants to send a FIN, but still has outstanding or unsent data, it sends a challenge ack. Don't do this when the TCP endpoint is still in the front states, since it does not make sense. Reviewed by: rrs MFC after: 3 days Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D45122 --- sys/netinet/tcp_stacks/rack.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index 49758072c6a1..b0d0f94b8f0e 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -22776,7 +22776,8 @@ send: * is acked first. */ flags &= ~TH_FIN; - if ((sbused(sb) == (tp->snd_max - tp->snd_una)) && + if (TCPS_HAVEESTABLISHED(tp->t_state) && + (sbused(sb) == (tp->snd_max - tp->snd_una)) && ((tp->snd_max - tp->snd_una) <= segsiz)) { /* * Ok less than or right at a MSS is From nobody Sat May 11 18:10:33 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcDLx5l0Mz5KXfN; Sat, 11 May 2024 18:10: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 4VcDLx5FKKz4LBJ; Sat, 11 May 2024 18:10:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715451033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2mouhOZU4R+ValELZ58q3x3tiDm9FfH0WAbqjhC594g=; b=HQpNtvXbhXDQoT2z5neQP+w6/vrADdFONgDEZyqzye7sNaZnd3yGV9MzmibfXBRKqEcq+E 3XSzt+PBjuWQXuM0zzuj9XYPTT74duuEDKWCQyZPOjY3emiSXIXR8DtzuURdulICrDQaDN By6TH0Qu1/aUPnt1fSTa8tS+eGLPkQ108WrR5v9KbS/2EDNeSLaCF/gusGihiVrXUmcknL r0kuP1bnYnbSaUYGPR8bBPvf62A9PqAesom3gPGzs15SGNXKHNPDq/MC3y71W0kc+sFVFG m4Tmz7vOqeEX8uqmGa4SMOxMfEXCs85YN8uwJVeXPJZZ0qgbxOhtdKRjZGcn0w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715451033; a=rsa-sha256; cv=none; b=OGFGjkBNsKuZJVPftGAzNplch9jQrbolfoNm6osQSgXyeV+eJ2SqrWejX2q4q9RbpnE70t R+6/GfJDOO1JKnAVUskQORKoWMg+S3fEehfEEtCQIqFCeYOZSDV5dI+XOtb4egRXx0lvwA f0RVd4+iKb0mqSV8AIIUuUt33KSwcIyPY9KHoDBQKrUlA+sP0tGnBaUZ1s7V6H/buBFFGr Ppbg1VZOEzY3bUZOoD0yeeQYrWiUiJmZDMWzfy4Woudjul1UQge8g6UFkAiOKq615Ytdsf FZhROAu+KCIFbr40vhNB0x9noG6qD8Hfvc7KIavisPVE68SgLod/c1ZhIbqlFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715451033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2mouhOZU4R+ValELZ58q3x3tiDm9FfH0WAbqjhC594g=; b=mcHuLJuoD1nDUSmam3S2lxSI8kGlUJAjIjXdwQtJ2gJSmFyuXupNXTrc838X45n7wNv36n k6uOWrMGorCXkPCvqpS0f06r5UN1SFnlmf/CxXzFw7f36znJD7aMGrSuCcoBaoFwsewbUT uNWR/RxriMwcDgKah/tBSxXx80vrrhHhMnhugaCtsgrCmBZQapJe3Hs3y7u715/AID9uFm TUEKEtVn36tB9Ke+pISBIzoAz4LVad0BR3+YwikJiDSXAdZgnLthdR50l4RtY2DuEbWvQ+ OUO8VarkDwCzh/5mvl624HVMEQEUN+2B1CstCJkdh+KnZll1cu+QmjMYdL9BtQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcDLx4lKMzXBJ; Sat, 11 May 2024 18:10: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 44BIAXpO001814; Sat, 11 May 2024 18:10:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BIAXIF001811; Sat, 11 May 2024 18:10:33 GMT (envelope-from git) Date: Sat, 11 May 2024 18:10:33 GMT Message-Id: <202405111810.44BIAXIF001811@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: e84a75f93602 - main - nvme: Add telemetry page definitions List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e84a75f936028bf3947f72f11eac4e25baf91b3a Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=e84a75f936028bf3947f72f11eac4e25baf91b3a commit e84a75f936028bf3947f72f11eac4e25baf91b3a Author: Warner Losh AuthorDate: 2024-04-07 23:48:42 +0000 Commit: Warner Losh CommitDate: 2024-05-11 18:09:50 +0000 nvme: Add telemetry page definitions Add definition for page types 7 and 8 for host initiated telemetry and controller initiated telemetry (they differ by one byte, but that byte that's defined in the host version is reserved in the controller version). Sponsored by: Netflix --- sys/dev/nvme/nvme.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h index bca4df92cb25..a389fc443743 100644 --- a/sys/dev/nvme/nvme.h +++ b/sys/dev/nvme/nvme.h @@ -1652,6 +1652,30 @@ struct nvme_device_self_test_page { _Static_assert(sizeof(struct nvme_device_self_test_page) == 564, "bad size for nvme_device_self_test_page"); +/* + * Header structure for both host initiated telemetry (page 7) and controller + * initiated telemetry (page 8). + */ +struct nvme_telemetry_log_page { + uint8_t identifier; + uint8_t rsvd[4]; + uint8_t oui[3]; + uint16_t da1_last; + uint16_t da2_last; + uint16_t da3_last; + uint8_t rsvd2[2]; + uint32_t da4_last; + uint8_t rsvd3[361]; + uint8_t hi_gen; + uint8_t ci_avail; + uint8_t ci_gen; + uint8_t reason[128]; + /* Blocks of telemetry data follow */ +} __packed __aligned(4); + +_Static_assert(sizeof(struct nvme_telemetry_log_page) == 512, + "bad size for nvme_telemetry_log"); + struct nvme_discovery_log_entry { uint8_t trtype; uint8_t adrfam; From nobody Sat May 11 18:10:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcDLz0Plcz5KXS1; Sat, 11 May 2024 18:10: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 4VcDLy5yztz4LBK; Sat, 11 May 2024 18:10:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715451034; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kN/xj/P+cFALO5NkDWA8ktcTpf71zJ9yWJTfTb9cp54=; b=dJ0Q4wsF9EQqZEZZ8xIoSllhr6GwS5BFo5/4tYkljLrxI7855ekDpVrDOgLMvA9Qs2lgMy liLKPcafsJJ2vkVM+0KdkzTeo2yH/oYIz2W9K5tFCUQwKZhUqltRwFkCZHPuSOqhBeDDFu ZYAUZQkyjaSU+8FdJtAdkK/Ep5Kko7yjSB1F7fATfUodHKAbXKoKrCtFfFY0+o0r/ITsx2 JTH6YuFLUAUjwmLksfkx9uq8KkAZOqSLPE+rX4kG3MeLDP0KPN57HKh0lxrFfYzktVXhs1 YH0IUao//QoC/H7AA5OJDMzpezklQTW5vfJRActogvilWD82jA4g5lLgkrmokA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715451034; a=rsa-sha256; cv=none; b=aD3PTgIwXtu8hFALsGE7xBjh5l/E4Yf4O1KhH/j/keacYcC5TMBlrWRJHnMkYzE/o+DWjO OE7rauaP74nA3h4RNeNp2a6ZkM6D1eFyWcMhmdPchxKWYM8VaYX73VFSdZ9QMNAOtNpsIm kjHSAdJ5CybDLdmid75sK+UCuhZcS3UC08ncVAk2f/+uwJJ4Lc43UEbuJ9KCJ+NCWuy0JU kVvMr1sqgDh8uSt4UXk8Oxw32rgzlwbr5KrQPBCiBI1syjBUUCeBURBs1mMR1PjeuhKSph pVoTG0WV+37XwF6M8QisPVxEdY67CyJ+T7WpYjLbPSv+IaSTbstiFN1Qq7vzPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715451034; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kN/xj/P+cFALO5NkDWA8ktcTpf71zJ9yWJTfTb9cp54=; b=mMVipiyhoPjUIYj/CllmRhQ8NR2ySIDcy/gdQu8HWXR6bRUKbDrODF6bLdS7QK/GviAsjC u1XjbxwNK+4wiUsA6SjSnJ1lV3G9rBxHiVF/Z8xgzLZaykaj225Fvty5IfbEeYcW0xLGFL sC4rbkIww9K2AbHGNcV7m4Vp6v11A3m6fqPbTNTK9RLM/NBXc4IHgnFRTaAbNHI06RVdMb HM2JlWoKBIbuPI60RtUJIHA7mEpTgednCXNT+/IWGJeOEBv8sO2+ZiLfWCEWHWelCmlYuk uIum8fikpm/cO2Bx8/PvYBmVWWdTL1vTXLeSBIXKuGxyz9r4pOawWopTlngrPA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcDLy5KGqzX5q; Sat, 11 May 2024 18:10: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 44BIAY7K001855; Sat, 11 May 2024 18:10:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BIAYPJ001851; Sat, 11 May 2024 18:10:34 GMT (envelope-from git) Date: Sat, 11 May 2024 18:10:34 GMT Message-Id: <202405111810.44BIAYPJ001851@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: c1fccf0f60ca - main - nvmecontrol: Implement telemetry-log command. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c1fccf0f60cad746e8f88d971d0ec9f36d691ccc Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=c1fccf0f60cad746e8f88d971d0ec9f36d691ccc commit c1fccf0f60cad746e8f88d971d0ec9f36d691ccc Author: Warner Losh AuthorDate: 2024-04-08 16:54:12 +0000 Commit: Warner Losh CommitDate: 2024-05-11 18:09:51 +0000 nvmecontrol: Implement telemetry-log command. This produces the same data as the Linux nvme-cli 'nvme telemetry-log' command. It extracts the telemetry log from drive. This is a variable length log, so we read the first page and find out how much of the log to grab. There's 3 levels of details available, and we grab the level of detail specified on the command line. Sponsored by: Netflix --- sbin/nvmecontrol/Makefile | 1 + sbin/nvmecontrol/nvmecontrol.8 | 18 +++- sbin/nvmecontrol/telemetry.c | 182 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 200 insertions(+), 1 deletion(-) diff --git a/sbin/nvmecontrol/Makefile b/sbin/nvmecontrol/Makefile index 81674475ba1f..2abcd72dedfa 100644 --- a/sbin/nvmecontrol/Makefile +++ b/sbin/nvmecontrol/Makefile @@ -26,6 +26,7 @@ SRCS+= reset.c SRCS+= resv.c SRCS+= sanitize.c SRCS+= selftest.c +SRCS+= telemetry.c CFLAGS+= -I${SRCTOP}/lib/libnvmf MAN= nvmecontrol.8 LDFLAGS+= -rdynamic diff --git a/sbin/nvmecontrol/nvmecontrol.8 b/sbin/nvmecontrol/nvmecontrol.8 index 6f7b45aac607..713fcf092d64 100644 --- a/sbin/nvmecontrol/nvmecontrol.8 +++ b/sbin/nvmecontrol/nvmecontrol.8 @@ -33,7 +33,7 @@ .\" .\" Author: Jim Harris .\" -.Dd May 3, 2024 +.Dd May 10, 2024 .Dt NVMECONTROL 8 .Os .Sh NAME @@ -243,6 +243,11 @@ .Op Fl Q Ar entries .Aq Ar device-id .Aq Ar address +.Nm +.Ic telemetry-log +.Fl O Ar output-file +.Op Fl d Ar data-area +.Aq Ar device-id .Sh DESCRIPTION NVM Express (NVMe) is a storage protocol standard for SSDs and other high-speed storage devices over PCI Express as well as remote storage @@ -806,6 +811,17 @@ The flags have the same meaning for the new association as described above for the .Cm connect command. +.Ss telemetry-log +Extract the telemetry log associated with +.Ar device-id , +using the specified parameters: +.Bl -tag -width 6n +.It Fl O Ar output-file +Output file for the data. +This parameter is mandatory. +.It Fl d Ar data-area +The data area is either 1, 2 or 3. +.El .Sh DEVICE NAMES Where .Aq Ar namespace-id diff --git a/sbin/nvmecontrol/telemetry.c b/sbin/nvmecontrol/telemetry.c new file mode 100644 index 000000000000..df83382d50ed --- /dev/null +++ b/sbin/nvmecontrol/telemetry.c @@ -0,0 +1,182 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (C) 2024 Netflix, Inc + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "nvmecontrol.h" + +/* Tables for command line parsing */ + +static cmd_fn_t telemetry_log; + +#define NONE 0xffffffffu +static struct options { + const char *outfn; + const char *dev; + uint8_t da; +} opt = { + .outfn = NULL, + .dev = NULL, + .da = 3, +}; + +static const struct opts telemetry_log_opts[] = { +#define OPT(l, s, t, opt, addr, desc) { l, s, t, &opt.addr, desc } + OPT("output-file", 'O', arg_string, opt, outfn, + "output file for telemetry data"), + OPT("data-area", 'd', arg_uint8, opt, da, + "output file for telemetry data"), + { NULL, 0, arg_none, NULL, NULL } +}; +#undef OPT + +static const struct args telemetry_log_args[] = { + { arg_string, &opt.dev, "" }, + { arg_none, NULL, NULL }, +}; + +static struct cmd telemetry_log_cmd = { + .name = "telemetry-log", + .fn = telemetry_log, + .descr = "Retrieves telemetry log pages from drive", + .ctx_size = sizeof(opt), + .opts = telemetry_log_opts, + .args = telemetry_log_args, +}; + +CMD_COMMAND(telemetry_log_cmd); + +/* End of tables for command line parsing */ + +/* + * Note: Even though this is a logpage, it's variable size and tricky + * to get with some weird options, so it's its own command. + */ + +static void +telemetry_log(const struct cmd *f, int argc, char *argv[]) +{ + int fd, fdout; + char *path; + uint32_t nsid; + uint64_t size; + uint64_t off; + uint32_t chunk; + struct nvme_controller_data cdata; + bool can_telemetry; + struct nvme_telemetry_log_page tlp, buf; + + if (arg_parse(argc, argv, f)) + return; + if (opt.da < 1 || opt.da > 3) + errx(EX_USAGE, "Data area %d is not in the range 1-3\n", opt.da); + if (opt.outfn == NULL) + errx(EX_USAGE, "No output file specified"); + + open_dev(opt.dev, &fd, 0, 1); + get_nsid(fd, &path, &nsid); + if (nsid == 0) { + nsid = NVME_GLOBAL_NAMESPACE_TAG; + } else { + close(fd); + open_dev(path, &fd, 0, 1); + } + free(path); + + if (read_controller_data(fd, &cdata)) + errx(EX_IOERR, "Identify request failed"); + + can_telemetry = NVMEV(NVME_CTRLR_DATA_LPA_TELEMETRY, cdata.lpa); + if (!can_telemetry) + errx(EX_UNAVAILABLE, "Drive does not support telemetry"); + if (nsid != NVME_GLOBAL_NAMESPACE_TAG) + errx(EX_UNAVAILABLE, "Cannot operate on namespace"); + + fdout = open(opt.outfn, O_WRONLY | O_CREAT, 0664); + if (fdout == -1) + err(EX_IOERR, "Can't create %s", opt.outfn); + + /* Read the log page */ + size = sizeof(tlp); + off = 0; + read_logpage(fd, NVME_LOG_TELEMETRY_HOST_INITIATED, nsid, 0, 0, 0, + off, 0, 0, 0, &tlp, size); + switch(opt.da) { + case 1: + size = letoh(tlp.da1_last); + break; + case 2: + size = letoh(tlp.da2_last); + break; + case 3: + size = letoh(tlp.da3_last); + break; + default: + errx(EX_USAGE, "Impossible data area %d", opt.da); + } + size = (size + 1) * 512; /* The count of additional pages */ + chunk = 4096; + + printf("Extracting %llu bytes\n", (unsigned long long)size); + do { + if (chunk > size) + chunk = size; + read_logpage(fd, NVME_LOG_TELEMETRY_HOST_INITIATED, nsid, 0, 0, 0, + off, 0, 0, 0, &buf, chunk); + if (off == 0) { + /* + * Sanity check to make sure that the generation number + * didn't change between the two reads. + */ + if (tlp.hi_gen != buf.hi_gen) + warnx( + "Generation number changed from %d to %d", + tlp.hi_gen, buf.hi_gen); + } + if (write(fdout, &buf, chunk) != chunk) + err(EX_IOERR, "Error writing %s", opt.outfn); + off += chunk; + size -= chunk; + } while (size > 0); + + close(fdout); + close(fd); + exit(0); +} From nobody Sat May 11 18:10:35 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcDM00sc2z5KXYB; Sat, 11 May 2024 18:10: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 4VcDLz6t1wz4L3m; Sat, 11 May 2024 18:10:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715451036; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PpmqdNsD5sxWv6ASxehQOpo7ehcZNj585rLeZYRwPW4=; b=qVSOiO72cezrX45uLXc2JdiDhQVmjJyqOzbE4kNYkrgyCXei6yTsWLvgFLpw4rlBE92j0I zS6GJaVYarM2j6LyksuSAu++VP61P2mBgPwg0BeVROsiT4icDELdRa+PDAJhHLao3C8+iU KdNIr23C15IaoHuJACK6+qiNoszCqdfRNGsePfs111eaJeRFuO4qFN2dDgLmskBGDExM6j eHzSP9uZL0IuJ2xxpt1Ri7RmXNYZVoHXOA670HULr6X7PMmB2iBgz4xXiDBNvRsZY6BBkB mRaAZUaGVMoN9TNxbgVzP48fNHy55+04onSGK2vmdddd/sJy00P4ZG8a8/H3gg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715451036; a=rsa-sha256; cv=none; b=AxiutCCj2EC6cFpY4kjOkMReppoWSWG63LBTBb+X0MRpzRsdeBp0hTPn9uKWsxAEm4HOil H7O0Ozcvt/7TGaUQ/ruCTuHNE8koQuloZ/f1XbKgqfNdqxVqbMA2SQ0Gd4/HNIgSUaVQP7 GSnzm8p24Fwr2uVfAa+AW2apP5WbWgrjHv9ESZlHJ/uDIzjwQIGypjcV7kaZ/5cSM2QiLW ajSLKkj/i0w0OgILBbt2+3GyrSvKh2zWhHP1u+u0ZnDiUgJiAUldqXjFaHUu1UQhX8WZRn QgFUrNXcp5OexnunkK2Va0mMoSIcFz029v9Sq0xpNmx/4BBGyfJXAasXSjFtrg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715451036; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PpmqdNsD5sxWv6ASxehQOpo7ehcZNj585rLeZYRwPW4=; b=E28Mw7Q4kOUBD6u+qOUHivasTkVK69adsjy6H7F3KH80O6aJsop11yU8cUfgb0ADATbFwy 5h3tU0OgN0M5cXfORq43OFLr9XkVCfGXwupqjCzjzHL01enZM8NQ/69xSMWmdGxuMmyzry Tapr/kQMaZATjF8z+6pWifeN6J3GgLlhbxAfASLZXFDnCj/DUUBS8sfG9YJTItODh6zkVU xgoJBQI7F60Wth9GR8nkV/xzAxjFVmanPfMv6WZY+Rm2wZRoze9TCAg0kLqO3Mo5nBaEN7 iSLevWOyzu1ZOurY0/LQ3Zrp6vnZAK046E7irUerpRw4KHGteIG8PvPndxr4SA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcDLz6JpkzWvQ; Sat, 11 May 2024 18:10: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 44BIAZE4001912; Sat, 11 May 2024 18:10:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BIAZLW001908; Sat, 11 May 2024 18:10:35 GMT (envelope-from git) Date: Sat, 11 May 2024 18:10:35 GMT Message-Id: <202405111810.44BIAZLW001908@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: e63d20b70ee1 - main - stand: Spell LUA_COMPILE_SET correctly. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e63d20b70ee1dbee9b075f29de6f30cdcfe1abe1 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=e63d20b70ee1dbee9b075f29de6f30cdcfe1abe1 commit e63d20b70ee1dbee9b075f29de6f30cdcfe1abe1 Author: Warner Losh AuthorDate: 2024-05-11 18:05:53 +0000 Commit: Warner Losh CommitDate: 2024-05-11 18:09:51 +0000 stand: Spell LUA_COMPILE_SET correctly. MFC After: 2 days Sponsored by: Netflix --- stand/liblua/lutils.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/liblua/lutils.h b/stand/liblua/lutils.h index ea715096df09..7fff8d3ae83d 100644 --- a/stand/liblua/lutils.h +++ b/stand/liblua/lutils.h @@ -34,7 +34,7 @@ int luaopen_pager(lua_State *); #include typedef void lua_init_md_t(lua_State *); -#define _LUA_COMPIE_SET Xlua_compile_set +#define _LUA_COMPILE_SET Xlua_compile_set #define LUA_COMPILE_SET(func) \ DATA_SET(_LUA_COMPILE_SET, func) #define LUA_FOREACH_SET(s) \ From nobody Sat May 11 19:05:44 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcFZf0Qjlz5Kcl7; Sat, 11 May 2024 19:05: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 4VcFZc6jWhz4QZY; Sat, 11 May 2024 19:05:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715454344; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IHOpFZ4nGD8ZUyGHPrqoGc3cKNsIl+OVh3VJ6P1/i9s=; b=IRG2Xe0WNZP1HYN+OUEDLFuSElz9wtdxr0OT/kGdGdZHFC47gtdz+1b0t5dIzNwnfh1nUV diPwZ6ErFEi/NtFdr07UPriHwjoRH8p9KWJYq7HYZnEdA4mWqTQEdirQg934n1W1qKkaeF tRJoNqVHzdhZIA81SWAv7S5t2NS1Zty2T3sWkW0tzIJ94ZT+Ff3Hc4/pmRjvA4KkdsHGtX SYhMzD0YuzPPbJhX+F80pGw03s14yC7NZ2ZgXTraQtrS+Te/06iwLLqrI3ztHdajNq5ySk Zy2Qb/YnqZ1TVB2dssnPgUUGuJnJWWoXnAmfzzYegN/QWajFggUsjF1L9GZqWw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715454344; a=rsa-sha256; cv=none; b=iPDW+VbcwrHz3l3sBO7uIaYP/QR7PQS6b/wiyj4UpB2AJR+l6vsFmN9yybI1MzrYXvxJP5 oFfkzq3AisRoB29lyA1bsmTiL9ueCG3azqd9mUHmkqgYn9fHiwZQPfkq1IOC6PFHYaJz37 6u6DZLni0jckptBbZ7FJaGdloapfgGjNLmr70KVPGJ3WetdM2C7vsgZ73Sb3DadAnaNAmC idiILxIA6M+Yx1ICPRW5C9c/PsMUkgswv+eIFM/3e65nvyB9vfGCx5ughxSAtoH93T0STy ZHviCboo10nRjEBoLhWvWfvcVQBb/ZoLt3l1Xi7SNxaWvJbDndTVZkQaRft00Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715454344; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IHOpFZ4nGD8ZUyGHPrqoGc3cKNsIl+OVh3VJ6P1/i9s=; b=OV0oqlpBLT9WTTuRpq8Q6pJVsr2hzrN8ctfJLivF5H+rZQAPseTq3PNoOZKeHzpZrhNajj wrsNf8ol8ZQjBEEkYfp52ZwQul+EhAKtevNkStajdYDlTIIcT5FWxhhb1h2i/525LRu8TL 2rWLIEk4Op1VmhOotdTN5qrNfkAQPNY77HfFUbSQXSzWhpiWDfmsn4aR09+5phSJrS7MMN g3oQTcs80SfHPR1DPE14htkrPAPa2C7z3Dh4TR4IX0R/Q3FdmFL+02a+C56kDnBmBuf2E3 tkBd6csUGP0h5Eamlb+h/ceEi2Z05i0wD0ixVuy+ks3kBlny6lWZ1aRysTZ54A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcFZc6KjgzYQT; Sat, 11 May 2024 19:05:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44BJ5imW094520; Sat, 11 May 2024 19:05:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BJ5iFR094517; Sat, 11 May 2024 19:05:44 GMT (envelope-from git) Date: Sat, 11 May 2024 19:05:44 GMT Message-Id: <202405111905.44BJ5iFR094517@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 3d966ae7895b - main - nvmecontrol: Appease a meaningless signed error warning thing List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3d966ae7895b40c7a4985f61ff4819c25c8618c9 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=3d966ae7895b40c7a4985f61ff4819c25c8618c9 commit 3d966ae7895b40c7a4985f61ff4819c25c8618c9 Author: Warner Losh AuthorDate: 2024-05-11 19:01:10 +0000 Commit: Warner Losh CommitDate: 2024-05-11 19:03:29 +0000 nvmecontrol: Appease a meaningless signed error warning thing Consistently use the weird ssize_t type for things I know are unsigned, but which none-the-less need to be compared to signed things to prevent a bogus warning. Sigh, these aren't bugs, can't possibly be bugs and a waste of time to fix. Sponsored by: Netflix --- sbin/nvmecontrol/telemetry.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/nvmecontrol/telemetry.c b/sbin/nvmecontrol/telemetry.c index df83382d50ed..72c304229a80 100644 --- a/sbin/nvmecontrol/telemetry.c +++ b/sbin/nvmecontrol/telemetry.c @@ -96,9 +96,9 @@ telemetry_log(const struct cmd *f, int argc, char *argv[]) int fd, fdout; char *path; uint32_t nsid; - uint64_t size; + ssize_t size; uint64_t off; - uint32_t chunk; + ssize_t chunk; struct nvme_controller_data cdata; bool can_telemetry; struct nvme_telemetry_log_page tlp, buf; From nobody Sat May 11 19:16:19 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcFpq72tCz5KddC; Sat, 11 May 2024 19:16: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 4VcFpq66G0z4RQ3; Sat, 11 May 2024 19:16:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715454979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y3GWuoJ6QYs8lHLrAr7dAGzIIVGef0zRv08QxbGbsNk=; b=NL9Wcan1xgRJPDw6cqkgGj+RsskrQh7WtQml+8gKwcsBDP930c0jOIThhfQA7xfcKYiw9h ACflnNV5opQwiiXjfGu2JeUFWU1ofRrm/1a7o7Xpt3l0hvNIqgU0RcPecFNKojzDJbd+b6 jj7Byco8G3Pw4oWge+yor/WGDnCEEwASwSeUGj3hTcKNpFmZKnL6VWoJEFdXXWtrx/tD4q ZjQ9EhN/N49PmS7nmwPpAPubAC0QjXoEIUvTqTcfxKQXkoQhvEXWOyYI6B0+ZnxpNVwtRz s7ayCMN6YtzLsovSmT3aOXPAtcCiNoFu5Z7eymZ1GCv/OxX+09ZTpqoUWN7urQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715454979; a=rsa-sha256; cv=none; b=yl9KvaKU69K+SmzvPRYiaH5tkRC/mRrTpj/XgoSaf5s+La7jry1lFS00nMUbTlz5HL2Za1 pxGyFFGhYccyjTJRGXiCOm2RNytrwaSPbHzRiDlGT+EzRZ7BXCFKvqk9M65MbIOt6XCYP8 N5K7wBTF9EEbAknR8Iz12ThXuYhAydGvEIG4Pmgh8tzXbDVlQKP6ye8pxJc1kfFvrOD7vb mNtWbEhcf2Z4H8VO5kipabg/mNmV85R6OTvcFcSty29w/mviMktc7b5cktA7JkjDRlWe5G gk+lpqSNuWwcEFPqffGLRVDICRGlg6Y8mue1XpZ4KUijsQWYXHB8cJWcLcR1yg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715454979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y3GWuoJ6QYs8lHLrAr7dAGzIIVGef0zRv08QxbGbsNk=; b=bvJktWthQdsd2Ngp8Jj+mdAB54bq9IhWt/ul619s454hHGTRloK3tlOs1fuz3KEYWzOxAH 6Yk8M6hyI0kH5AypAZDVLFPhfy6WeJ0lKZUPNSneI3kBc34Cm3lf6KUgxc2qQs0aNFOC9N VnliwzH2vEJWre9XCDjK1Pk+EQtrvgIf9JZuIl9+UlwIvYNShWDocXMOpnEAjShsTEeZx1 zhhgxB1+K1YOQR15ofLHexxKjvBGXSJcodYww6cPlDEZ1qDStXGtDg4v/mILU7OzkWfvVr +GuoF/eWRFfS5/Ub5znbl0MFrbHy+IYzeGaS7C7tTnDPWsEkWLKpkMZGWtRzJA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcFpq5bPTzY8j; Sat, 11 May 2024 19:16:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44BJGJJO010962; Sat, 11 May 2024 19:16:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BJGJ2I010959; Sat, 11 May 2024 19:16:19 GMT (envelope-from git) Date: Sat, 11 May 2024 19:16:19 GMT Message-Id: <202405111916.44BJGJ2I010959@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 9bcc1b18c119 - main - /bin/rmdir: Exit with status 2 for invalid arguments List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9bcc1b18c119148e4455e548c90b2bc9cef16d1b Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=9bcc1b18c119148e4455e548c90b2bc9cef16d1b commit 9bcc1b18c119148e4455e548c90b2bc9cef16d1b Author: Henrich Hartzer AuthorDate: 2024-05-10 17:53:49 +0000 Commit: Warner Losh CommitDate: 2024-05-11 19:13:28 +0000 /bin/rmdir: Exit with status 2 for invalid arguments PR: 277677 Signed-off-by: Henrich Hartzer Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1161 --- bin/rmdir/rmdir.1 | 15 ++++++++------- bin/rmdir/rmdir.c | 2 +- bin/rmdir/tests/rmdir_test.sh | 6 +++--- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/bin/rmdir/rmdir.1 b/bin/rmdir/rmdir.1 index 87ca1f1547f0..eb23c605050c 100644 --- a/bin/rmdir/rmdir.1 +++ b/bin/rmdir/rmdir.1 @@ -74,14 +74,14 @@ The .Nm utility exits with one of the following values: .Bl -tag -width indent -.It Li 0 -Each directory entry specified by a +.It Er 0 +Each .Ar directory -operand -referred to an empty directory and was removed -successfully. -.It Li >0 -An error occurred. +referred to an empty directory and was removed successfully. +.It Er 1 +An error occurred while attempting to remove one or more directories. +.It Er 2 +Invalid arguments. .El .Sh EXAMPLES Remove the directory @@ -97,6 +97,7 @@ stopping at the first non-empty directory (if any): .Dl $ rmdir -p cow/horse/monkey .Sh SEE ALSO .Xr rm 1 +.Xr rmdir 2 .Sh STANDARDS The .Nm diff --git a/bin/rmdir/rmdir.c b/bin/rmdir/rmdir.c index c5d3db831309..0a495018495c 100644 --- a/bin/rmdir/rmdir.c +++ b/bin/rmdir/rmdir.c @@ -112,5 +112,5 @@ usage(void) { (void)fprintf(stderr, "usage: rmdir [-pv] directory ...\n"); - exit(1); + exit(2); } diff --git a/bin/rmdir/tests/rmdir_test.sh b/bin/rmdir/tests/rmdir_test.sh index d443849258b6..ba80ac6204be 100644 --- a/bin/rmdir/tests/rmdir_test.sh +++ b/bin/rmdir/tests/rmdir_test.sh @@ -35,8 +35,8 @@ invalid_usage_head() invalid_usage_body() { - atf_check -s not-exit:0 -e match:"$usage_output" rmdir -p - atf_check -s not-exit:0 -e match:"$usage_output" rmdir -v + atf_check -s exit:2 -e match:"$usage_output" rmdir -p + atf_check -s exit:2 -e match:"$usage_output" rmdir -v } atf_test_case no_arguments @@ -47,7 +47,7 @@ no_arguments_head() no_arguments_body() { - atf_check -s not-exit:0 -e match:"$usage_output" rmdir + atf_check -s exit:2 -e match:"$usage_output" rmdir } atf_init_test_cases() From nobody Sat May 11 19:36:49 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcGGV0JHyz5Kfxj; Sat, 11 May 2024 19:36: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 4VcGGT6tKPz4TKQ; Sat, 11 May 2024 19:36:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715456210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QM5JQieAsHS+rTF3fHMkiBAnoFp+LtHtRvvWQFcz0Ik=; b=u4tSG5PT6fd6linP3kcZl1mxb9kaXzAmZiDU31MrT+T1dSU855U/f1coQvI1ZhSh8NT5V5 7hBpnm5RVJp8nS+pEE8gP5tJ6Zihxjwx1yRLweB+xjGGP2zCmwMLH67u0eIc+b3ukTk4p+ Dy6UF3j4tktCQ5tGWoKpLJ1momSf8RSEAyQNyrXg4/rfoL2mkg3ew1OJduuI17DGzj+mW5 HRFuTVpgYnFlT0GZ9zTcqlvfrcG1q8DT/krmOE04YKO5+iaKi6q4hAmD067d3vxXtzqveq EbIoR6EHsXDdsrD4LiLyCKgCsaOT++ulxbRgi0z8SlaI1hSgYANf7l20NnV2hg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715456210; a=rsa-sha256; cv=none; b=w2KiK2puPRRtY/7EOOqpzE0W2ZB5V4mvR/Fd2vSvmyvaasaSlxXWz1kbx9Nh5O/kfEw9HZ SfOTSIoLCBbWcJ1Sd21OXKbL4m+rTprdUWIbpotUElb2bkxGTUqv6daYDf9OzgiKwq/8bk 2tjE/evCIjBDblccFwo03z+aoh8f+BJPP2TNQSPodhL+uxEgFKGhPgFKBBBP2CdJgllvfM AAkyVZn59SSzpULPF2cQ21igqgX8dmaetsALLRqJMz3gdzW6bvHQukYM9nSW7htAbZxwMe /a9+C7pllZY+UUEXQHbnxPonkXxwi/8R67dBIf+DyIII8YolbkyrcBWGiGu4bw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715456210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QM5JQieAsHS+rTF3fHMkiBAnoFp+LtHtRvvWQFcz0Ik=; b=Fre01bmHNdLgXxijmTiGheufdbrcbCM2ylHj+3L41nEXH5Q0069EoXgnc3LsRG2tX+N/ct rcKfW3P6ouEQd5TdW+8GxTjaAj+cnKxV93mzhuuXlojdXzwxq667Al1vuDmlvnIr5VNBIV lsvM5Fi/r63W6yMJVLKEvFODugYFD34zuYNOw8DiQJF0iv2Lh9hiNEQc4E5YgfxVnrs0T4 0gpkKAcRRFtOsY3ebfQJ2RTnl+uRlbdckuOVS+kR+fLezY9GGGT/JY5WaPhkYAs1jhz8v1 Yf+V8+0BOZmtTqMGuW85Q9IasdBufhVCrgv0nmIulxG6F33Hu/RaEW/zC4SMYQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcGGT6T31zZ90; Sat, 11 May 2024 19:36: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 44BJanGM045262; Sat, 11 May 2024 19:36:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BJan2q045259; Sat, 11 May 2024 19:36:49 GMT (envelope-from git) Date: Sat, 11 May 2024 19:36:49 GMT Message-Id: <202405111936.44BJan2q045259@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 64e05e90657f - main - usb: Fix quirks list List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 64e05e90657fc4054797efc2b2a1848e4ba56c54 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=64e05e90657fc4054797efc2b2a1848e4ba56c54 commit 64e05e90657fc4054797efc2b2a1848e4ba56c54 Author: Ahmad Khalifa AuthorDate: 2024-04-20 00:51:25 +0000 Commit: Warner Losh CommitDate: 2024-05-11 19:32:37 +0000 usb: Fix quirks list In some cases, the USB_QUIRK_VP macro was being misused. Instead of setting quirks to the intended value, the first two supplied quirks would go into lo_rev and hi_rev. Replace it with USB_QUIRK_VO which only takes the needed args. This also makes the Dummy products, which where being used to correctly set vendor only quirks, not necessary. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1153 --- sys/dev/usb/quirk/usb_quirk.c | 36 +++++++++++++++++++----------------- sys/dev/usb/usbdevs | 10 ---------- 2 files changed, 19 insertions(+), 27 deletions(-) diff --git a/sys/dev/usb/quirk/usb_quirk.c b/sys/dev/usb/quirk/usb_quirk.c index a0a7b3fc75a5..2a88f901b674 100644 --- a/sys/dev/usb/quirk/usb_quirk.c +++ b/sys/dev/usb/quirk/usb_quirk.c @@ -74,11 +74,16 @@ struct usb_quirk_entry { static struct mtx usb_quirk_mtx; -#define USB_QUIRK_VP(v,p,l,h,...) \ - { .vid = (v), .pid = (p), .lo_rev = (l), .hi_rev = (h), \ - .quirks = { __VA_ARGS__ } } -#define USB_QUIRK(v,p,l,h,...) \ - USB_QUIRK_VP(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, l, h, __VA_ARGS__) +#define USB_QUIRK(v, p, l, h, ...) { \ + .vid = USB_VENDOR_##v, .pid = USB_PRODUCT_##v##_##p, .lo_rev = l, \ + .hi_rev = h, .quirks = { __VA_ARGS__ } \ +} + +/* Vendor only */ +#define USB_QUIRK_VO(v, ...) { \ + .vid = USB_VENDOR_##v, .pid = 0x0000, .lo_rev = 0x0000, .hi_rev = 0xffff, \ + .quirks = { UQ_MATCH_VENDOR_ONLY, __VA_ARGS__ } \ +} static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { USB_QUIRK(ASUS, LCM, 0x0000, 0xffff, UQ_HID_IGNORE), @@ -191,8 +196,7 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { USB_QUIRK(BALTECH, SMARTCARDREADER, 0x0000, 0xffff, UQ_IGNORE_CDC_CM), /* USB Mass Storage Class Quirks */ - USB_QUIRK_VP(USB_VENDOR_ASAHIOPTICAL, 0, UQ_MSC_NO_RS_CLEAR_UA, - UQ_MATCH_VENDOR_ONLY), + USB_QUIRK_VO(ASAHIOPTICAL, UQ_MSC_NO_RS_CLEAR_UA), USB_QUIRK(ADDON, ATTACHE, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), USB_QUIRK(ADDON, A256MB, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, @@ -337,8 +341,7 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { USB_QUIRK(MOTOROLA2, E398, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_INQUIRY_EVPD, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK_VP(USB_VENDOR_MPMAN, 0, UQ_MSC_NO_SYNC_CACHE, - UQ_MATCH_VENDOR_ONLY), + USB_QUIRK_VO(MPMAN, UQ_MSC_NO_SYNC_CACHE), USB_QUIRK(MSYSTEMS, DISKONKEY, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_RS_CLEAR_UA), @@ -425,8 +428,7 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { UQ_MSC_NO_START_STOP), USB_QUIRK(PROLIFIC, PL2506, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_PREVENT_ALLOW), - USB_QUIRK_VP(USB_VENDOR_SAMSUNG_TECHWIN, - USB_PRODUCT_SAMSUNG_TECHWIN_DIGIMAX_410, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SAMSUNG_TECHWIN, DIGIMAX_410, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), USB_QUIRK(SANDISK, SDDR05A, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_READ_CAP_OFFBY1, @@ -624,11 +626,11 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { * Quirks for manufacturers which USB devices does not respond * after issuing non-supported commands: */ - USB_QUIRK(ALCOR, DUMMY, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_TEST_UNIT_READY, UQ_MATCH_VENDOR_ONLY), - USB_QUIRK(APPLE, DUMMY, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, UQ_MATCH_VENDOR_ONLY), - USB_QUIRK(FEIYA, DUMMY, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, UQ_MATCH_VENDOR_ONLY), - USB_QUIRK(REALTEK, DUMMY, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, UQ_MATCH_VENDOR_ONLY), - USB_QUIRK(INITIO, DUMMY, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, UQ_MATCH_VENDOR_ONLY), + USB_QUIRK_VO(ALCOR, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_TEST_UNIT_READY), + USB_QUIRK_VO(APPLE, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK_VO(FEIYA, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK_VO(REALTEK, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK_VO(INITIO, UQ_MSC_NO_SYNC_CACHE), /* DYMO LabelManager Pnp */ USB_QUIRK(DYMO, LABELMANAGERPNP, 0x0000, 0xffff, UQ_MSC_DYMO_EJECT), @@ -639,7 +641,7 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { /* This works much better with if_cdce than if_ure */ USB_QUIRK(LENOVO, TBT3LAN, 0x0000, 0xffff, UQ_CFG_INDEX_1), }; -#undef USB_QUIRK_VP +#undef USB_QUIRK_VO #undef USB_QUIRK static const char *usb_quirk_str[USB_QUIRK_MAX] = { diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs index 65dcb06c2f3f..6820e8b4025a 100644 --- a/sys/dev/usb/usbdevs +++ b/sys/dev/usb/usbdevs @@ -1047,7 +1047,6 @@ product ALCATEL OT535 0x02df One Touch 535/735 /* Alcor Micro, Inc. products */ product ALCOR2 KBD_HUB 0x2802 Kbd Hub -product ALCOR DUMMY 0x0000 Dummy product product ALCOR SDCR_6335 0x6335 SD/MMC Card Reader product ALCOR SDCR_6362 0x6362 SD/MMC Card Reader product ALCOR SDCR_6366 0x6366 SD/MMC Card Reader @@ -1137,7 +1136,6 @@ product ANYDATA ADU_500A 0x6502 CDMA 2000 EV-DO USB Modem product AOX USB101 0x0008 Ethernet /* Apple Computer products */ -product APPLE DUMMY 0x0000 Dummy product product APPLE IMAC_KBD 0x0201 USB iMac Keyboard product APPLE KBD 0x0202 USB Keyboard M2452 product APPLE EXT_KBD 0x020c Apple Extended USB Keyboard @@ -1862,7 +1860,6 @@ product EGALAX TPANEL2 0x0002 Touch Panel product EGALAX2 TPANEL 0x0001 Touch Panel /* EGO Products */ -product EGO DUMMY 0x0000 Dummy Product product EGO M4U 0x1020 ESI M4U /* Eicon Networks */ @@ -1986,7 +1983,6 @@ product FALCOM TWIST 0x0001 USB GSM/GPRS Modem product FALCOM SAMBA 0x0005 FTDI compatible adapter /* FEIYA products */ -product FEIYA DUMMY 0x0000 Dummy product product FEIYA 5IN1 0x1132 5-in-1 Card Reader product FEIYA ELANGO 0x6200 MicroSDHC Card Reader product FEIYA AC110 0x6300 AC-110 Card Reader @@ -2601,7 +2597,6 @@ product IDTECH IDT1221U 0x0300 FTDI compatible adapter product IMAGINATION DBX1 0x2107 DBX1 DSP core /* Initio Corporation products */ -product INITIO DUMMY 0x0000 Dummy product product INITIO INIC_1610P 0x1e40 USB to SATA Bridge /* Inside Out Networks products */ @@ -2874,7 +2869,6 @@ product LINKSYS4 RT3070 0x0078 RT3070 product LINKSYS4 WUSB600NV2 0x0079 WUSB600N v2 /* Logilink products */ -product LOGILINK DUMMY 0x0000 Dummy product product LOGILINK U2M 0x0101 LogiLink USB MIDI Cable /* Logitech products */ @@ -4053,7 +4047,6 @@ product RATOC REXUSB60F 0xb020 USB serial adapter REX-USB60F /* Realtek products */ /* Green House and CompUSA OEM this part */ -product REALTEK DUMMY 0x0000 Dummy product product REALTEK USB20CRW 0x0158 USB20CRW Card Reader product REALTEK RTL8188ETV 0x0179 RTL8188ETV product REALTEK RTL8188CTV 0x018a RTL8188CTV @@ -4098,7 +4091,6 @@ product REALTEK RTL8192SU 0xc512 RTL8192SU product REALTEK RTW8821CU 0xc811 RTW8821CU /* RedOctane products */ -product REDOCTANE DUMMY 0x0000 Dummy product product REDOCTANE GHMIDI 0x474b GH MIDI INTERFACE /* Renesas products */ @@ -4668,7 +4660,6 @@ product TECLAST TLC300 0x3203 USB Media Player product TESTO USB_INTERFACE 0x0001 FTDI compatible adapter /* TexTech products */ -product TEXTECH DUMMY 0x0000 Dummy product product TEXTECH U2M_1 0x0101 Textech USB MIDI cable product TEXTECH U2M_2 0x1806 Textech USB MIDI cable @@ -4909,7 +4900,6 @@ product WAVESENSE JAZZ 0xaaaa Jazz blood glucose meter /* WCH products */ product WCH CH341SER 0x5523 CH341/CH340 USB-Serial Bridge -product WCH2 DUMMY 0x0000 Dummy product product WCH2 CH341SER_2 0x5523 CH341/CH340 USB-Serial Bridge product WCH2 CH341SER_3 0x7522 CH341/CH340 USB-Serial Bridge product WCH2 CH341SER 0x7523 CH341/CH340 USB-Serial Bridge From nobody Sat May 11 19:36:50 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcGGW1ngfz5Kfs3; Sat, 11 May 2024 19:36: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 4VcGGW0cKWz4TGm; Sat, 11 May 2024 19:36:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715456211; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VE87Uz/gjC8pPStHT2fBzeYHMuNDVjX0uSQsrZ5iTK8=; b=BpxYchSWqYUzlzZo+hBC1PY9MpybQKT56XZ3x3vGfOqz1eHs0RsNvmR+HibVjCZ0v2eLdF +AH0jzL8rLw9yvf2XynwcXCqDNsPRG+Bc05O7ubS51R96e0BfwZavoDXC6NX+pngDK2NCq hyMMlKu7MsHDaqWRPFnqA+R9yQRDGVFGdZvZpO/qY8wBoPeV92nNLG4BdVYsQfOEs0o9as dTtxfMian8oTauUNcLOfbcfwUS3KVeWS/Sp754HbMKctS4pAz6Ib5bTtnZRGXn5XbJ5A+z VJeA4Cnh1omBECK8ZS6xUC4LbI687AYIg+k963aIbE9vTbu2+WFZUmshVrCYxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715456211; a=rsa-sha256; cv=none; b=O6UsWdXT8ulXskYmHASCFuopsoUTPlimYZgn8qjVxg6tQLDYzxQNAACHZ1r3KvZgzq7VwK Y0dPN2NSW4nTQaIA2UA+7eCgD7+tMh9ofrgfbQTYJSV40Z1TYI++eDFma/Qcwi8bG9QRzq znzLDw1tLhgn0f8zhkACq2b8AAjSJy9S0/xEIHZxyq8DY7qBppfLRZ1eRk6ZS8eLVv3w3m 9JR+6a/7+IGMv2DiOFNuFrONh4JZ5lLL8hPDoisS+5Eykwg0oI/LxJC3YnV5r5SokM5akV L17Zl8TGsLA5dYotLWh0RHeWsRBxuXFJT0r8BY0U+3D2AYR3X402Ea+JhanVyA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715456211; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VE87Uz/gjC8pPStHT2fBzeYHMuNDVjX0uSQsrZ5iTK8=; b=T1mu06REsNbjF6uVNkPf+4juDjGJ1VIiKcWph3oxg1SDzdzXQu0Jgu0kTryMmgLwR7hY2I rdEJ8u8sTR3dHHXp2CsF7dGaB3cTXtDl83IQgvVcWLf8f3atOLYDMInhRxRaMYZqmlyYB8 F5wKPLhMv4ffH1LMmifDSCfZpzxW42DSqWavuzS4rtvfsnQ9Omz8oDg17kcjOl5a76wHcF MFQOPfNkkQqOc9Q+6v/6fru8Ib6egSEK2gLsZwxgIxbahrdR1BkD8OKLsbXQ0+VFNsvp51 oejRsMRoOEHf6mAhLq2nYgb4iUji4ymRscJ7yczIgjqns+lA/trX0vtmiaaaGg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcGGW0CC0zYCQ; Sat, 11 May 2024 19:36: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 44BJaoUH045313; Sat, 11 May 2024 19:36:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BJaoU1045310; Sat, 11 May 2024 19:36:50 GMT (envelope-from git) Date: Sat, 11 May 2024 19:36:50 GMT Message-Id: <202405111936.44BJaoU1045310@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 881ae768f2fd - main - usb: Remove uneeded revision verbosity from quirks list List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 881ae768f2fdf669894cc41694b6d909f233af7f Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=881ae768f2fdf669894cc41694b6d909f233af7f commit 881ae768f2fdf669894cc41694b6d909f233af7f Author: Ahmad Khalifa AuthorDate: 2024-04-20 00:52:57 +0000 Commit: Warner Losh CommitDate: 2024-05-11 19:32:57 +0000 usb: Remove uneeded revision verbosity from quirks list Seperate usb quirks that target specific revisions from those that dont. Alot of the quirks dont use lo_rev and hi_rev, so we can abstract the 0x0000, 0xffff into a macro. [[ This commit is a bit more churn than we like. I carefully reviewed each one and they are all good. The end product is better -- imp ]] Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1153 --- sys/dev/usb/quirk/usb_quirk.c | 816 ++++++++++++++++++++---------------------- 1 file changed, 382 insertions(+), 434 deletions(-) diff --git a/sys/dev/usb/quirk/usb_quirk.c b/sys/dev/usb/quirk/usb_quirk.c index 2a88f901b674..11be1215062e 100644 --- a/sys/dev/usb/quirk/usb_quirk.c +++ b/sys/dev/usb/quirk/usb_quirk.c @@ -74,9 +74,9 @@ struct usb_quirk_entry { static struct mtx usb_quirk_mtx; -#define USB_QUIRK(v, p, l, h, ...) { \ - .vid = USB_VENDOR_##v, .pid = USB_PRODUCT_##v##_##p, .lo_rev = l, \ - .hi_rev = h, .quirks = { __VA_ARGS__ } \ +#define USB_QUIRK(v, p, ...) { \ + .vid = USB_VENDOR_##v, .pid = USB_PRODUCT_##v##_##p, .lo_rev = 0x0000, \ + .hi_rev = 0xffff, .quirks = { __VA_ARGS__ } \ } /* Vendor only */ @@ -85,542 +85,489 @@ static struct mtx usb_quirk_mtx; .quirks = { UQ_MATCH_VENDOR_ONLY, __VA_ARGS__ } \ } +/* Specific revision(s) */ +#define USB_QUIRK_REV(v, p, l, h, ...) { \ + .vid = USB_VENDOR_##v, .pid = USB_PRODUCT_##v##_##p, .lo_rev = (l), \ + .hi_rev = (h), .quirks = { __VA_ARGS__ } \ +} + static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { - USB_QUIRK(ASUS, LCM, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(INSIDEOUT, EDGEPORT4, 0x094, 0x094, UQ_SWAP_UNICODE), - USB_QUIRK(DALLAS, J6502, 0x0a2, 0x0a2, UQ_BAD_ADC), - USB_QUIRK(DALLAS, J6502, 0x0a2, 0x0a2, UQ_AU_NO_XU), - USB_QUIRK(ALTEC, ADA70, 0x103, 0x103, UQ_BAD_ADC), - USB_QUIRK(ALTEC, ASC495, 0x000, 0x000, UQ_BAD_AUDIO), - USB_QUIRK(QTRONIX, 980N, 0x110, 0x110, UQ_SPUR_BUT_UP), - USB_QUIRK(ALCOR2, KBD_HUB, 0x001, 0x001, UQ_SPUR_BUT_UP), - USB_QUIRK(MCT, HUB0100, 0x102, 0x102, UQ_BUS_POWERED), - USB_QUIRK(MCT, USB232, 0x102, 0x102, UQ_BUS_POWERED), - USB_QUIRK(TI, UTUSB41, 0x110, 0x110, UQ_POWER_CLAIM), - USB_QUIRK(TELEX, MIC1, 0x009, 0x009, UQ_AU_NO_FRAC), - USB_QUIRK(SILICONPORTALS, YAPPHONE, 0x100, 0x100, UQ_AU_INP_ASYNC), - USB_QUIRK(LOGITECH, UN53B, 0x0000, 0xffff, UQ_NO_STRINGS), - USB_QUIRK(LOGITECH, G510S, 0x0000, 0xFFFF, UQ_KBD_BOOTPROTO), - USB_QUIRK(REALTEK, RTL8196EU, 0x0000, 0xffff, UQ_CFG_INDEX_1), - USB_QUIRK(ELSA, MODEM1, 0x0000, 0xffff, UQ_CFG_INDEX_1), - USB_QUIRK(PLANEX2, MZKUE150N, 0x0000, 0xffff, UQ_CFG_INDEX_1), - USB_QUIRK(CISCOLINKSYS, USB3GIGV1, 0x0000, 0xffff, UQ_CFG_INDEX_1), - USB_QUIRK(REALTEK, RTL8156, 0x0000, 0xffff, UQ_CFG_INDEX_2), + USB_QUIRK(ASUS, LCM, UQ_HID_IGNORE), + USB_QUIRK_REV(INSIDEOUT, EDGEPORT4, 0x094, 0x094, UQ_SWAP_UNICODE), + USB_QUIRK_REV(DALLAS, J6502, 0x0a2, 0x0a2, UQ_BAD_ADC), + USB_QUIRK_REV(DALLAS, J6502, 0x0a2, 0x0a2, UQ_AU_NO_XU), + USB_QUIRK_REV(ALTEC, ADA70, 0x103, 0x103, UQ_BAD_ADC), + USB_QUIRK_REV(ALTEC, ASC495, 0x000, 0x000, UQ_BAD_AUDIO), + USB_QUIRK_REV(QTRONIX, 980N, 0x110, 0x110, UQ_SPUR_BUT_UP), + USB_QUIRK_REV(ALCOR2, KBD_HUB, 0x001, 0x001, UQ_SPUR_BUT_UP), + USB_QUIRK_REV(MCT, HUB0100, 0x102, 0x102, UQ_BUS_POWERED), + USB_QUIRK_REV(MCT, USB232, 0x102, 0x102, UQ_BUS_POWERED), + USB_QUIRK_REV(TI, UTUSB41, 0x110, 0x110, UQ_POWER_CLAIM), + USB_QUIRK_REV(TELEX, MIC1, 0x009, 0x009, UQ_AU_NO_FRAC), + USB_QUIRK_REV(SILICONPORTALS, YAPPHONE, 0x100, 0x100, UQ_AU_INP_ASYNC), + USB_QUIRK(LOGITECH, UN53B, UQ_NO_STRINGS), + USB_QUIRK(LOGITECH, G510S, UQ_KBD_BOOTPROTO), + USB_QUIRK(REALTEK, RTL8196EU, UQ_CFG_INDEX_1), + USB_QUIRK(ELSA, MODEM1, UQ_CFG_INDEX_1), + USB_QUIRK(PLANEX2, MZKUE150N, UQ_CFG_INDEX_1), + USB_QUIRK(CISCOLINKSYS, USB3GIGV1, UQ_CFG_INDEX_1), + USB_QUIRK(REALTEK, RTL8156, UQ_CFG_INDEX_2), /* Quirks for printer devices */ - USB_QUIRK(HP, 895C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), - USB_QUIRK(HP, 880C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), - USB_QUIRK(HP, 815C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), - USB_QUIRK(HP, 810C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), - USB_QUIRK(HP, 830C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), - USB_QUIRK(HP, 1220C, 0x0000, 0xffff, UQ_BROKEN_BIDIR), - USB_QUIRK(XEROX, WCM15, 0x0000, 0xffff, UQ_BROKEN_BIDIR), + USB_QUIRK(HP, 895C, UQ_BROKEN_BIDIR), + USB_QUIRK(HP, 880C, UQ_BROKEN_BIDIR), + USB_QUIRK(HP, 815C, UQ_BROKEN_BIDIR), + USB_QUIRK(HP, 810C, UQ_BROKEN_BIDIR), + USB_QUIRK(HP, 830C, UQ_BROKEN_BIDIR), + USB_QUIRK(HP, 1220C, UQ_BROKEN_BIDIR), + USB_QUIRK(XEROX, WCM15, UQ_BROKEN_BIDIR), /* Devices which should be ignored by uhid */ - USB_QUIRK(APC, UPS, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(APC, UPS1000, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6H375USB, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C550AVR, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C1250TWRK, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C1500TWRK, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C900UNV, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C100UNV, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C120UNV, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C800UNV, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(BELKIN, F6C1100UNV, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(CYBERPOWER, BC900D, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(CYBERPOWER, 1500CAVRLCD, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(CYBERPOWER, OR2200LCDRM2U, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(DELL2, VARIOUS_UPS, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(CYPRESS, SILVERSHIELD, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(DELORME, EARTHMATE, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(DREAMLINK, DL100B, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(MICROCHIP, PICOLCD20X2, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(MICROCHIP, PICOLCD4X20, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(LIEBERT, POWERSURE_PXT, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(LIEBERT2, PSI1000, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(LIEBERT2, POWERSURE_PSA, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(MGE, UPS1, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(MGE, UPS2, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(POWERCOM, IMPERIAL_SERIES, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(POWERCOM, SMART_KING_PRO, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(POWERCOM, WOW, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(POWERCOM, VANGUARD, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(POWERCOM, BLACK_KNIGHT_PRO, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, AVR550U, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, AVR750U, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, ECO550UPS, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, T750_INTL, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, RT_2200_INTL, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, OMNI1000LCD, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, OMNI900LCD, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, SMART_2200RMXL2U, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, UPS_3014, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, SU1500RTXL2UA, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, SU6000RT4U, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(TRIPPLITE2, SU1500RTXL2UA_2, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(APPLE, IPHONE, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(APPLE, IPHONE_3G, 0x0000, 0xffff, UQ_HID_IGNORE), - USB_QUIRK(MEGATEC, UPS, 0x0000, 0xffff, UQ_HID_IGNORE), + USB_QUIRK(APC, UPS, UQ_HID_IGNORE), + USB_QUIRK(APC, UPS1000, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6H375USB, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C550AVR, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C1250TWRK, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C1500TWRK, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C900UNV, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C100UNV, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C120UNV, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C800UNV, UQ_HID_IGNORE), + USB_QUIRK(BELKIN, F6C1100UNV, UQ_HID_IGNORE), + USB_QUIRK(CYBERPOWER, BC900D, UQ_HID_IGNORE), + USB_QUIRK(CYBERPOWER, 1500CAVRLCD, UQ_HID_IGNORE), + USB_QUIRK(CYBERPOWER, OR2200LCDRM2U, UQ_HID_IGNORE), + USB_QUIRK(DELL2, VARIOUS_UPS, UQ_HID_IGNORE), + USB_QUIRK(CYPRESS, SILVERSHIELD, UQ_HID_IGNORE), + USB_QUIRK(DELORME, EARTHMATE, UQ_HID_IGNORE), + USB_QUIRK(DREAMLINK, DL100B, UQ_HID_IGNORE), + USB_QUIRK(MICROCHIP, PICOLCD20X2, UQ_HID_IGNORE), + USB_QUIRK(MICROCHIP, PICOLCD4X20, UQ_HID_IGNORE), + USB_QUIRK(LIEBERT, POWERSURE_PXT, UQ_HID_IGNORE), + USB_QUIRK(LIEBERT2, PSI1000, UQ_HID_IGNORE), + USB_QUIRK(LIEBERT2, POWERSURE_PSA, UQ_HID_IGNORE), + USB_QUIRK(MGE, UPS1, UQ_HID_IGNORE), + USB_QUIRK(MGE, UPS2, UQ_HID_IGNORE), + USB_QUIRK(POWERCOM, IMPERIAL_SERIES, UQ_HID_IGNORE), + USB_QUIRK(POWERCOM, SMART_KING_PRO, UQ_HID_IGNORE), + USB_QUIRK(POWERCOM, WOW, UQ_HID_IGNORE), + USB_QUIRK(POWERCOM, VANGUARD, UQ_HID_IGNORE), + USB_QUIRK(POWERCOM, BLACK_KNIGHT_PRO, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, AVR550U, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, AVR750U, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, ECO550UPS, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, T750_INTL, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, RT_2200_INTL, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, OMNI1000LCD, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, OMNI900LCD, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, SMART_2200RMXL2U, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, UPS_3014, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, SU1500RTXL2UA, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, SU6000RT4U, UQ_HID_IGNORE), + USB_QUIRK(TRIPPLITE2, SU1500RTXL2UA_2, UQ_HID_IGNORE), + USB_QUIRK(APPLE, IPHONE, UQ_HID_IGNORE), + USB_QUIRK(APPLE, IPHONE_3G, UQ_HID_IGNORE), + USB_QUIRK(MEGATEC, UPS, UQ_HID_IGNORE), /* Devices which should be ignored by both ukbd and uhid */ - USB_QUIRK(CYPRESS, WISPY1A, 0x0000, 0xffff, UQ_KBD_IGNORE, UQ_HID_IGNORE), - USB_QUIRK(METAGEEK, WISPY1B, 0x0000, 0xffff, UQ_KBD_IGNORE, UQ_HID_IGNORE), - USB_QUIRK(METAGEEK, WISPY24X, 0x0000, 0xffff, UQ_KBD_IGNORE, UQ_HID_IGNORE), - USB_QUIRK(METAGEEK2, WISPYDBX, 0x0000, 0xffff, UQ_KBD_IGNORE, UQ_HID_IGNORE), - USB_QUIRK(TENX, UAUDIO0, 0x0101, 0x0101, UQ_AUDIO_SWAP_LR), + USB_QUIRK(CYPRESS, WISPY1A, UQ_KBD_IGNORE, UQ_HID_IGNORE), + USB_QUIRK(METAGEEK, WISPY1B, UQ_KBD_IGNORE, UQ_HID_IGNORE), + USB_QUIRK(METAGEEK, WISPY24X, UQ_KBD_IGNORE, UQ_HID_IGNORE), + USB_QUIRK(METAGEEK2, WISPYDBX, UQ_KBD_IGNORE, UQ_HID_IGNORE), + USB_QUIRK_REV(TENX, UAUDIO0, 0x0101, 0x0101, UQ_AUDIO_SWAP_LR), /* MS keyboards do weird things */ - USB_QUIRK(MICROSOFT, NATURAL4000, 0x0000, 0xFFFF, UQ_KBD_BOOTPROTO), - USB_QUIRK(MICROSOFT, WLINTELLIMOUSE, 0x0000, 0xffff, UQ_MS_LEADING_BYTE), + USB_QUIRK(MICROSOFT, NATURAL4000, UQ_KBD_BOOTPROTO), + USB_QUIRK(MICROSOFT, WLINTELLIMOUSE, UQ_MS_LEADING_BYTE), /* Quirk for Corsair Vengeance K60 keyboard */ - USB_QUIRK(CORSAIR, K60, 0x0000, 0xffff, UQ_KBD_BOOTPROTO), + USB_QUIRK(CORSAIR, K60, UQ_KBD_BOOTPROTO), /* Quirk for Corsair Gaming K68 keyboard */ - USB_QUIRK(CORSAIR, K68, 0x0000, 0xffff, UQ_KBD_BOOTPROTO), + USB_QUIRK(CORSAIR, K68, UQ_KBD_BOOTPROTO), /* Quirk for Corsair Vengeance K70 keyboard */ - USB_QUIRK(CORSAIR, K70, 0x0000, 0xffff, UQ_KBD_BOOTPROTO), + USB_QUIRK(CORSAIR, K70, UQ_KBD_BOOTPROTO), /* Quirk for Corsair K70 RGB keyboard */ - USB_QUIRK(CORSAIR, K70_RGB, 0x0000, 0xffff, UQ_KBD_BOOTPROTO), + USB_QUIRK(CORSAIR, K70_RGB, UQ_KBD_BOOTPROTO), /* Quirk for Corsair STRAFE Gaming keyboard */ - USB_QUIRK(CORSAIR, STRAFE, 0x0000, 0xffff, UQ_KBD_BOOTPROTO), - USB_QUIRK(CORSAIR, STRAFE2, 0x0000, 0xffff, UQ_KBD_BOOTPROTO), + USB_QUIRK(CORSAIR, STRAFE, UQ_KBD_BOOTPROTO), + USB_QUIRK(CORSAIR, STRAFE2, UQ_KBD_BOOTPROTO), /* Quirk for Kensington Slimblade Trackball */ - USB_QUIRK(KENSINGTON, SLIMBLADE, 0x0000, 0xffff, UQ_MS_VENDOR_BTN), + USB_QUIRK(KENSINGTON, SLIMBLADE, UQ_MS_VENDOR_BTN), /* umodem(4) device quirks */ - USB_QUIRK(METRICOM, RICOCHET_GS, 0x100, 0x100, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(SANYO, SCP4900, 0x000, 0x000, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(MOTOROLA2, T720C, 0x001, 0x001, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(EICON, DIVA852, 0x100, 0x100, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(SIEMENS2, ES75, 0x000, 0x000, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(QUALCOMM, CDMA_MSM, 0x0000, 0xffff, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(QUALCOMM2, CDMA_MSM, 0x0000, 0xffff, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(CURITEL, UM150, 0x0000, 0xffff, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(CURITEL, UM175, 0x0000, 0xffff, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(VERTEX, VW110L, 0x0000, 0xffff, UQ_ASSUME_CM_OVER_DATA), - USB_QUIRK(BALTECH, SMARTCARDREADER, 0x0000, 0xffff, UQ_IGNORE_CDC_CM), + USB_QUIRK_REV(METRICOM, RICOCHET_GS, 0x100, 0x100, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK_REV(SANYO, SCP4900, 0x000, 0x000, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK_REV(MOTOROLA2, T720C, 0x001, 0x001, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK_REV(EICON, DIVA852, 0x100, 0x100, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK_REV(SIEMENS2, ES75, 0x000, 0x000, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK(QUALCOMM, CDMA_MSM, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK(QUALCOMM2, CDMA_MSM, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK(CURITEL, UM150, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK(CURITEL, UM175, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK(VERTEX, VW110L, UQ_ASSUME_CM_OVER_DATA), + USB_QUIRK(BALTECH, SMARTCARDREADER, UQ_IGNORE_CDC_CM), /* USB Mass Storage Class Quirks */ USB_QUIRK_VO(ASAHIOPTICAL, UQ_MSC_NO_RS_CLEAR_UA), - USB_QUIRK(ADDON, ATTACHE, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ADDON, ATTACHE, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(ADDON, A256MB, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ADDON, A256MB, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(ADDON, DISKPRO512, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ADDON, DISKPRO512, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(ADDONICS2, CABLE_205, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ADDONICS2, CABLE_205, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(AIPTEK, POCKETCAM3M, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(AIPTEK, POCKETCAM3M, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(ALCOR, UMCR_9361, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ALCOR, UMCR_9361, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(ALCOR, TRANSCEND, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, - UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_TEST_UNIT_READY), - USB_QUIRK(APACER, HT202, 0x0000, 0xffff, UQ_MSC_NO_TEST_UNIT_READY, - UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(ASAHIOPTICAL, OPTIO230, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ALCOR, TRANSCEND, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_SYNC_CACHE, + UQ_MSC_NO_TEST_UNIT_READY), + USB_QUIRK(APACER, HT202, UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(ASAHIOPTICAL, OPTIO230, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(ASAHIOPTICAL, OPTIO330, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ASAHIOPTICAL, OPTIO330, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(ATP, EUSB, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(BELKIN, USB2SCSI, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(CASIO, QV_DIGICAM, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(ATP, EUSB, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(BELKIN, USB2SCSI, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(CASIO, QV_DIGICAM, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(CCYU, ED1064, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(CENTURY, EX35QUAT, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, - UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(CREATIVE, NOMAD, 0x0001, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(CCYU, ED1064, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(CENTURY, EX35QUAT, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), + USB_QUIRK_REV(CREATIVE, NOMAD, 0x0001, 0xffff, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_READ_CAP_OFFBY1), - USB_QUIRK(CYPRESS, XX6830XX, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, - UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(EMTEC, DANEELEC4GB, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(DESKNOTE, UCR_61S2B, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(CYPRESS, XX6830XX, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(EMTEC, DANEELEC4GB, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(DESKNOTE, UCR_61S2B, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(DMI, CFSM_RW, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI, - UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(EMTEC, RUF2PS, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(EPSON, STYLUS_875DC, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(DMI, CFSM_RW, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(EMTEC, RUF2PS, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(EPSON, STYLUS_875DC, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(EPSON, STYLUS_895, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(EPSON, STYLUS_895, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(FEIYA, 5IN1, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(FEIYA, ELANGO, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(FREECOM, DVD, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(FUJIPHOTO, MASS0100, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI_I, + USB_QUIRK(FEIYA, 5IN1, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(FEIYA, ELANGO, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(FREECOM, DVD, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(FUJIPHOTO, MASS0100, UQ_MSC_FORCE_WIRE_CBI_I, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_RS_CLEAR_UA, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(GARMIN, DAKOTA20, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(GARMIN, FORERUNNER230, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(GARMIN, GPSMAP62S, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(GARMIN, EDGETOURINGPLUS, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(GARMIN, INSTINCTSOLAR, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(GENESYS, GL641USB2IDE, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, - UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(GENESYS, GL641USB2IDE_2, 0x0000, 0xffff, - UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_ATAPI, - UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, - UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(GENESYS, GL641USB, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, + USB_QUIRK(GARMIN, DAKOTA20, UQ_MSC_NO_INQUIRY), + USB_QUIRK(GARMIN, FORERUNNER230, UQ_MSC_NO_INQUIRY), + USB_QUIRK(GARMIN, GPSMAP62S, UQ_MSC_NO_INQUIRY), + USB_QUIRK(GARMIN, EDGETOURINGPLUS, UQ_MSC_NO_INQUIRY), + USB_QUIRK(GARMIN, INSTINCTSOLAR, UQ_MSC_NO_INQUIRY), + USB_QUIRK(GENESYS, GL641USB2IDE, UQ_MSC_FORCE_WIRE_BBB, + UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, + UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(GENESYS, GL641USB2IDE_2, UQ_MSC_FORCE_WIRE_BBB, + UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(GENESYS, GL641USB_2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(GENESYS, GL641USB, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), + USB_QUIRK(GENESYS, GL641USB_2, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_WRONG_CSWSIG), - USB_QUIRK(GENESYS, GL3220, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY, - UQ_MSC_NO_RS_CLEAR_UA), - USB_QUIRK(HAGIWARA, FG, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(HAGIWARA, FGSM, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(HITACHI, DVDCAM_DZ_MV100A, 0x0000, 0xffff, - UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, - UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(HITACHI, DVDCAM_USB, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI_I, + USB_QUIRK(GENESYS, GL3220, UQ_MSC_NO_INQUIRY, UQ_MSC_NO_RS_CLEAR_UA), + USB_QUIRK(HAGIWARA, FG, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(HAGIWARA, FGSM, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(HITACHI, DVDCAM_DZ_MV100A, UQ_MSC_FORCE_WIRE_CBI, + UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(HITACHI, DVDCAM_USB, UQ_MSC_FORCE_WIRE_CBI_I, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(HP, CDW4E, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_ATAPI), - USB_QUIRK(HP, CDW8200, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI_I, - UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_TEST_UNIT_READY, - UQ_MSC_NO_START_STOP), - USB_QUIRK(HUAWEI, E3372_INIT, 0, 0xffff, UQ_MSC_NO_INQUIRY, - UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(IMAGINATION, DBX1, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(HP, CDW4E, UQ_MSC_FORCE_PROTO_ATAPI), + USB_QUIRK(HP, CDW8200, UQ_MSC_FORCE_WIRE_CBI_I, UQ_MSC_FORCE_PROTO_ATAPI, + UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_START_STOP), + USB_QUIRK(HUAWEI, E3372_INIT, UQ_MSC_NO_INQUIRY, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(IMAGINATION, DBX1, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_WRONG_CSWSIG), - USB_QUIRK(INSYSTEM, USBCABLE, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_TEST_UNIT_READY, - UQ_MSC_NO_START_STOP, UQ_MSC_ALT_IFACE_1), - USB_QUIRK(INSYSTEM, ATAPI, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(INSYSTEM, USBCABLE, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI, + UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_START_STOP, UQ_MSC_ALT_IFACE_1), + USB_QUIRK(INSYSTEM, ATAPI, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC), + USB_QUIRK(INSYSTEM, STORAGE_V2, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(INSYSTEM, STORAGE_V2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(VIALABS, VL701, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(IODATA, IU_CD2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(IODATA, DVR_UEH8, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(IOMEGA, ZIP100, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, + USB_QUIRK(VIALABS, VL701, UQ_MSC_NO_INQUIRY), + USB_QUIRK(IODATA, IU_CD2, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(IODATA, DVR_UEH8, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(IOMEGA, ZIP100, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_TEST_UNIT_READY), /* XXX ZIP drives can also use ATAPI */ - USB_QUIRK(JMICRON, JMS566, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(JMICRON, JMS567, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(JMICRON, JM20337, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, + USB_QUIRK(JMICRON, JMS566, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(JMICRON, JMS567, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(JMICRON, JM20337, UQ_MSC_FORCE_WIRE_BBB, + UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(KINGSTON, HYPERX3_0, UQ_MSC_NO_INQUIRY), + USB_QUIRK(KINGSTON, DATATRAVELER3_0, UQ_MSC_NO_PREVENT_ALLOW, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(KINGSTON, HYPERX3_0, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(KINGSTON, DATATRAVELER3_0, 0x0000, 0xffff, UQ_MSC_NO_PREVENT_ALLOW, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(KYOCERA, FINECAM_L3, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(KYOCERA, FINECAM_L3, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(KYOCERA, FINECAM_S3X, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(KYOCERA, FINECAM_S3X, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(KYOCERA, FINECAM_S4, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(KYOCERA, FINECAM_S4, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(KYOCERA, FINECAM_S5, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(KYOCERA, FINECAM_S5, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(LACIE, HD, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(LEXAR, CF_READER, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(LACIE, HD, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC), + USB_QUIRK(LEXAR, CF_READER, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(LEXAR, JUMPSHOT, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(LEXAR, JUMPDRIVE, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(LOGITEC, LDR_H443SU2, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(LOGITEC, LDR_H443U2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI,), - USB_QUIRK(MELCO, DUBPXXG, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, - UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(MICROTECH, DPCM, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_TEST_UNIT_READY, - UQ_MSC_NO_START_STOP), - USB_QUIRK(MICRON, REALSSD, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(MICROTECH, SCSIDB25, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(LEXAR, JUMPSHOT, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(LEXAR, JUMPDRIVE, UQ_MSC_NO_INQUIRY), + USB_QUIRK(LOGITEC, LDR_H443SU2, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(LOGITEC, LDR_H443U2, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(MICROTECH, SCSIHD50, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(MELCO, DUBPXXG, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), + USB_QUIRK(MICROTECH, DPCM, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_START_STOP), + USB_QUIRK(MICRON, REALSSD, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(MICROTECH, SCSIDB25, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(MINOLTA, E223, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(MINOLTA, F300, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(MICROTECH, SCSIHD50, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(MITSUMI, CDRRW, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI | - UQ_MSC_FORCE_PROTO_ATAPI), - USB_QUIRK(MOTOROLA2, E398, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, - UQ_MSC_NO_INQUIRY_EVPD, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(MINOLTA, E223, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(MINOLTA, F300, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(MITSUMI, CDRRW, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI), + USB_QUIRK(MOTOROLA2, E398, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_INQUIRY_EVPD, UQ_MSC_NO_GETMAXLUN), USB_QUIRK_VO(MPMAN, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(MSYSTEMS, DISKONKEY, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(MSYSTEMS, DISKONKEY, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_RS_CLEAR_UA), - USB_QUIRK(MSYSTEMS, DISKONKEY2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(MSYSTEMS, DISKONKEY2, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_ATAPI), - USB_QUIRK(MYSON, HEDEN, 0x0000, 0xffff, UQ_MSC_IGNORE_RESIDUE, - UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(NEODIO, ND3260, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(MYSON, HEDEN, UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(NEODIO, ND3260, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ), - USB_QUIRK(NETAC, CF_CARD, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(NETAC, CF_CARD, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(NETAC, ONLYDISK, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(NETAC, ONLYDISK, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(NETCHIP, CLIK_40, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_ATAPI, - UQ_MSC_NO_INQUIRY), - USB_QUIRK(NETCHIP, POCKETBOOK, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(NIKON, D300, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(NORELSYS, NS1081, 0x0000, 0xffff, UQ_MSC_NO_RS_CLEAR_UA, - UQ_MSC_NO_INQUIRY), - USB_QUIRK(OLYMPUS, C1, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_WRONG_CSWSIG), - USB_QUIRK(OLYMPUS, C700, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(NETCHIP, CLIK_40, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_INQUIRY), + USB_QUIRK(NETCHIP, POCKETBOOK, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(NIKON, D300, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(NORELSYS, NS1081, UQ_MSC_NO_RS_CLEAR_UA, UQ_MSC_NO_INQUIRY), + USB_QUIRK(OLYMPUS, C1, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_WRONG_CSWSIG), + USB_QUIRK(OLYMPUS, C700, UQ_MSC_NO_GETMAXLUN), /* Selected Olympus DSLR and EVIL models. See ../usbdevs for more * details. * * Not all quirks apply to all models. The commented-out entries are * correct for that model. */ - USB_QUIRK(OLYMPUS, E_1, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, - UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_PREVENT_ALLOW, - UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(OLYMPUS, E_1, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_TEST_UNIT_READY, + UQ_MSC_NO_PREVENT_ALLOW, UQ_MSC_NO_SYNC_CACHE), /* * Product code 0x118. - * USB_QUIRK(OLYMPUS, E_300, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, + * USB_QUIRK(OLYMPUS, E_300, UQ_MSC_NO_GETMAXLUN, * UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_PREVENT_ALLOW, * UQ_MSC_NO_SYNC_CACHE), - * USB_QUIRK(OLYMPUS, E_30, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, + * USB_QUIRK(OLYMPUS, E_30, UQ_MSC_NO_GETMAXLUN, * UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_PREVENT_ALLOW, * UQ_MSC_NO_SYNC_CACHE), */ - USB_QUIRK(OLYMPUS, E_330, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, - UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_PREVENT_ALLOW, - UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_START_STOP), - USB_QUIRK(OLYMPUS, E_PM1, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, - UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_PREVENT_ALLOW, - UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_START_STOP), + USB_QUIRK(OLYMPUS, E_330, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_TEST_UNIT_READY, + UQ_MSC_NO_PREVENT_ALLOW, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_START_STOP), + USB_QUIRK(OLYMPUS, E_PM1, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_TEST_UNIT_READY, + UQ_MSC_NO_PREVENT_ALLOW, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_START_STOP), /* Product code 0x12e. - * USB_QUIRK(OLYMPUS, E_PM2, 0x0000, 0xffff, 0), - * USB_QUIRK(OLYMPUS, E_M1MarkII, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, + * USB_QUIRK(OLYMPUS, E_PM2, 0), + * USB_QUIRK(OLYMPUS, E_M1MarkII, UQ_MSC_NO_GETMAXLUN, * UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_PREVENT_ALLOW, * UQ_MSC_NO_SYNC_CACHE), - * USB_QUIRK(OLYMPUS, E_M5MarkIII, 0x0000, 0xffff, 0), + * USB_QUIRK(OLYMPUS, E_M5MarkIII, 0), */ - USB_QUIRK(OLYMPUS, E_M1, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, - UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_PREVENT_ALLOW, - UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_START_STOP), - USB_QUIRK(ONSPEC, SDS_HOTFIND_D, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(OLYMPUS, E_M1, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_TEST_UNIT_READY, + UQ_MSC_NO_PREVENT_ALLOW, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_START_STOP), + USB_QUIRK(ONSPEC, SDS_HOTFIND_D, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(ONSPEC, CFMS_RW, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(ONSPEC, CFSM_COMBO, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(ONSPEC, CFSM_READER, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(ONSPEC, CFSM_READER2, 0x0000, 0xffff, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(ONSPEC, MDCFE_B_CF_READER, 0x0000, 0xffff, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(ONSPEC, MDSM_B_READER, 0x0000, 0xffff, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(ONSPEC, READER, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(ONSPEC, UCF100, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ONSPEC, CFMS_RW, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(ONSPEC, CFSM_COMBO, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(ONSPEC, CFSM_READER, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(ONSPEC, CFSM_READER2, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(ONSPEC, MDCFE_B_CF_READER, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(ONSPEC, MDSM_B_READER, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), + USB_QUIRK(ONSPEC, READER, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(ONSPEC, UCF100, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_INQUIRY, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(ONSPEC2, IMAGEMATE_SDDR55, 0x0000, 0xffff, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(PANASONIC, KXL840AN, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(ONSPEC2, IMAGEMATE_SDDR55, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(PANASONIC, KXL840AN, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(PANASONIC, KXLCB20AN, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(PANASONIC, KXLCB20AN, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(PANASONIC, KXLCB35AN, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(PANASONIC, KXLCB35AN, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(PANASONIC, LS120CAM, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_UFI), - USB_QUIRK(PLEXTOR, 40_12_40U, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(PANASONIC, LS120CAM, UQ_MSC_FORCE_PROTO_UFI), + USB_QUIRK(PLEXTOR, 40_12_40U, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_TEST_UNIT_READY), - USB_QUIRK(PNY, ATTACHE2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE, - UQ_MSC_NO_START_STOP), - USB_QUIRK(PROLIFIC, PL2506, 0x0000, 0xffff, - UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_PREVENT_ALLOW), - USB_QUIRK(SAMSUNG_TECHWIN, DIGIMAX_410, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(PNY, ATTACHE2, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_START_STOP), + USB_QUIRK(PROLIFIC, PL2506, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_PREVENT_ALLOW), + USB_QUIRK(SAMSUNG_TECHWIN, DIGIMAX_410, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(SANDISK, SDDR05A, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_READ_CAP_OFFBY1, - UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SANDISK, SDDR09, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI, + USB_QUIRK(SANDISK, SDDR05A, UQ_MSC_FORCE_WIRE_CBI, + UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_READ_CAP_OFFBY1, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(SANDISK, SDDR09, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_READ_CAP_OFFBY1, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SANDISK, SDDR12, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_READ_CAP_OFFBY1, - UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SANDISK, SDCZ2_128, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE, - UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(SANDISK, SDCZ2_256, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SANDISK, SDDR12, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_READ_CAP_OFFBY1, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(SANDISK, SDCZ2_128, UQ_MSC_FORCE_WIRE_BBB, + UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(SANDISK, SDCZ2_256, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(SANDISK, SDCZ4_128, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SANDISK, SDCZ4_128, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(SANDISK, SDCZ4_256, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SANDISK, SDCZ4_256, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(SANDISK, SDCZ48_32, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, + USB_QUIRK(SANDISK, SDCZ48_32, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_TEST_UNIT_READY), - USB_QUIRK(SANDISK, SDDR31, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SANDISK, SDDR31, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_READ_CAP_OFFBY1), - USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, 0x0000, 0xffff, - UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SCANLOGIC, SL11R, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, UQ_MSC_NO_SYNC_CACHE, + UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(SCANLOGIC, SL11R, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(SHUTTLE, EUSB, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI_I, - UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_TEST_UNIT_READY, - UQ_MSC_NO_START_STOP, UQ_MSC_SHUTTLE_INIT), - USB_QUIRK(SHUTTLE, CDRW, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_ATAPI), - USB_QUIRK(SHUTTLE, CF, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_ATAPI), - USB_QUIRK(SHUTTLE, EUSBATAPI, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(SHUTTLE, EUSB, UQ_MSC_FORCE_WIRE_CBI_I, UQ_MSC_FORCE_PROTO_ATAPI, + UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_START_STOP, UQ_MSC_SHUTTLE_INIT), + USB_QUIRK(SHUTTLE, CDRW, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI), + USB_QUIRK(SHUTTLE, CF, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI), + USB_QUIRK(SHUTTLE, EUSBATAPI, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI), - USB_QUIRK(SHUTTLE, EUSBCFSM, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(SHUTTLE, EUSCSI, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(SHUTTLE, HIFD, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SHUTTLE, SDDR09, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI, + USB_QUIRK(SHUTTLE, EUSBCFSM, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(SHUTTLE, EUSCSI, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(SHUTTLE, HIFD, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SHUTTLE, ZIOMMC, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(SHUTTLE, SDDR09, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(SHUTTLE, ZIOMMC, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SIGMATEL, I_BEAD100, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SIGMATEL, I_BEAD100, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_SHUTTLE_INIT), - USB_QUIRK(SIIG, WINTERREADER, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SIIG, WINTERREADER, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(SKANHEX, MD_7425, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SKANHEX, MD_7425, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(SKANHEX, SX_520Z, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SKANHEX, SX_520Z, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(SONY, HANDYCAM, 0x0500, 0x0500, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK_REV(SONY, HANDYCAM, 0x0500, 0x0500, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC, UQ_MSC_RBC_PAD_TO_12), - USB_QUIRK(SONY, CLIE_40_MS, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SONY, CLIE_40_MS, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(SONY, DSC, 0x0500, 0x0500, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK_REV(SONY, DSC, 0x0500, 0x0500, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC, UQ_MSC_RBC_PAD_TO_12), - USB_QUIRK(SONY, DSC, 0x0600, 0x0600, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK_REV(SONY, DSC, 0x0600, 0x0600, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC, UQ_MSC_RBC_PAD_TO_12), - USB_QUIRK(SONY, DSC, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(SONY, HANDYCAM, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(SONY, MSC, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(SONY, MS_MSC_U03, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK(SONY, DSC, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC), + USB_QUIRK(SONY, HANDYCAM, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC), + USB_QUIRK(SONY, MSC, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_RBC), + USB_QUIRK(SONY, MS_MSC_U03, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_UFI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SONY, MS_NW_MS7, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SONY, MS_NW_MS7, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SONY, MS_PEG_N760C, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SONY, MS_PEG_N760C, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(SONY, MSACUS1, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(SONY, PORTABLE_HDD_V2, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(SONY, MSACUS1, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(SONY, PORTABLE_HDD_V2, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(STMICRO, ST72682, 0x0000, 0xffff, UQ_MSC_NO_PREVENT_ALLOW), - USB_QUIRK(SUPERTOP, IDE, 0x0000, 0xffff, UQ_MSC_IGNORE_RESIDUE, - UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(SUPERTOP, FLASHDRIVE, 0x0000, 0xffff, UQ_MSC_NO_TEST_UNIT_READY, + USB_QUIRK(STMICRO, ST72682, UQ_MSC_NO_PREVENT_ALLOW), + USB_QUIRK(SUPERTOP, IDE, UQ_MSC_IGNORE_RESIDUE, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(SUPERTOP, FLASHDRIVE, UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(TAUGA, CAMERAMATE, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(TEAC, FD05PUB, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_UFI), - USB_QUIRK(TECLAST, TLC300, 0x0000, 0xffff, UQ_MSC_NO_TEST_UNIT_READY, - UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(TREK, MEMKEY, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(TREK, THUMBDRIVE_8MB, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(TAUGA, CAMERAMATE, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(TEAC, FD05PUB, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_UFI), + USB_QUIRK(TECLAST, TLC300, UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(TREK, MEMKEY, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_NO_INQUIRY), + USB_QUIRK(TREK, THUMBDRIVE_8MB, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(TRUMPION, C3310, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_UFI), - USB_QUIRK(TRUMPION, MP3, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_RBC), - USB_QUIRK(TRUMPION, T33520, 0x0000, 0xffff, UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(TWINMOS, MDIV, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI), - USB_QUIRK(VIA, USB2IDEBRIDGE, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, + USB_QUIRK(TRUMPION, C3310, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_UFI), + USB_QUIRK(TRUMPION, MP3, UQ_MSC_FORCE_PROTO_RBC), + USB_QUIRK(TRUMPION, T33520, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(TWINMOS, MDIV, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(VIA, USB2IDEBRIDGE, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(VIVITAR, 35XX, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(WESTERN, COMBO, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, - UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(WESTERN, EXTHDD, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, - UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(WESTERN, MYBOOK, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY_EVPD, - UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_00, 0x0000, 0xffff, UQ_MSC_FORCE_SHORT_INQ), - USB_QUIRK(WESTERN, MYPASSPORT_01, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_02, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_03, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_04, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_05, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_06, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_07, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_08, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_09, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_10, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORT_11, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_00, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_01, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_02, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_03, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_04, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_05, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_06, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_07, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_08, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTES_09, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(WESTERN, MYPASSPORTUL_00, 0x0000, 0xffff, UQ_MSC_NO_TEST_UNIT_READY), - USB_QUIRK(WINMAXGROUP, FLASH64MC, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY), - USB_QUIRK(YANO, FW800HD, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_FORCE_SHORT_INQ, - UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), - USB_QUIRK(YANO, U640MO, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI_I, + USB_QUIRK(VIVITAR, 35XX, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_NO_INQUIRY), + USB_QUIRK(WESTERN, COMBO, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), + USB_QUIRK(WESTERN, EXTHDD, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), + USB_QUIRK(WESTERN, MYBOOK, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_NO_INQUIRY_EVPD, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_00, UQ_MSC_FORCE_SHORT_INQ), + USB_QUIRK(WESTERN, MYPASSPORT_01, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_02, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_03, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_04, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_05, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_06, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_07, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_08, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_09, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_10, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORT_11, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_00, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_01, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_02, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_03, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_04, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_05, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_06, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_07, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_08, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTES_09, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(WESTERN, MYPASSPORTUL_00, UQ_MSC_NO_TEST_UNIT_READY), + USB_QUIRK(WINMAXGROUP, FLASH64MC, UQ_MSC_FORCE_WIRE_BBB, + UQ_MSC_NO_INQUIRY, UQ_MSC_FORCE_PROTO_SCSI), + USB_QUIRK(YANO, FW800HD, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_FORCE_SHORT_INQ, UQ_MSC_NO_START_STOP, UQ_MSC_IGNORE_RESIDUE), + USB_QUIRK(YANO, U640MO, UQ_MSC_FORCE_WIRE_CBI_I, UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_FORCE_SHORT_INQ), - USB_QUIRK(YEDATA, FLASHBUSTERU, 0x0000, 0x007F, UQ_MSC_FORCE_WIRE_CBI, + USB_QUIRK_REV(YEDATA, FLASHBUSTERU, 0x0000, 0x007F, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_UFI, UQ_MSC_NO_RS_CLEAR_UA, UQ_MSC_FLOPPY_SPEED, UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(YEDATA, FLASHBUSTERU, 0x0080, 0x0080, UQ_MSC_FORCE_WIRE_CBI_I, - UQ_MSC_FORCE_PROTO_UFI, UQ_MSC_NO_RS_CLEAR_UA, UQ_MSC_FLOPPY_SPEED, + USB_QUIRK_REV(YEDATA, FLASHBUSTERU, 0x0080, 0x0080, + UQ_MSC_FORCE_WIRE_CBI_I, UQ_MSC_FORCE_PROTO_UFI, + UQ_MSC_NO_RS_CLEAR_UA, UQ_MSC_FLOPPY_SPEED, UQ_MSC_NO_TEST_UNIT_READY, UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(YEDATA, FLASHBUSTERU, 0x0081, 0xFFFF, UQ_MSC_FORCE_WIRE_CBI_I, - UQ_MSC_FORCE_PROTO_UFI, UQ_MSC_NO_RS_CLEAR_UA, UQ_MSC_FLOPPY_SPEED, - UQ_MSC_NO_GETMAXLUN), - USB_QUIRK(ZORAN, EX20DSC, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_CBI, - UQ_MSC_FORCE_PROTO_ATAPI), - USB_QUIRK(MEIZU, M6_SL, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB, - UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(TOSHIBA, TRANSMEMORY, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE, + USB_QUIRK_REV(YEDATA, FLASHBUSTERU, 0x0081, 0xFFFF, + UQ_MSC_FORCE_WIRE_CBI_I, UQ_MSC_FORCE_PROTO_UFI, + UQ_MSC_NO_RS_CLEAR_UA, UQ_MSC_FLOPPY_SPEED, UQ_MSC_NO_GETMAXLUN), + USB_QUIRK(ZORAN, EX20DSC, UQ_MSC_FORCE_WIRE_CBI, UQ_MSC_FORCE_PROTO_ATAPI), + USB_QUIRK(MEIZU, M6_SL, UQ_MSC_FORCE_WIRE_BBB, UQ_MSC_FORCE_PROTO_SCSI, + UQ_MSC_NO_INQUIRY, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(TOSHIBA, TRANSMEMORY, UQ_MSC_NO_SYNC_CACHE, UQ_MSC_NO_PREVENT_ALLOW), - USB_QUIRK(VIALABS, USB30SATABRIDGE, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE), - USB_QUIRK(QUALCOMMINC, ZTE_MF730M, 0x0000, 0xffff, UQ_MSC_NO_GETMAXLUN, + USB_QUIRK(VIALABS, USB30SATABRIDGE, UQ_MSC_NO_SYNC_CACHE), + USB_QUIRK(QUALCOMMINC, ZTE_MF730M, UQ_MSC_NO_GETMAXLUN, UQ_MSC_NO_INQUIRY, UQ_CFG_INDEX_0), - USB_QUIRK(SMART2, G2MEMKEY, 0x0000, 0xffff, UQ_MSC_NO_INQUIRY), - USB_QUIRK(RALINK, RT_STOR, 0x0001, 0x0001, UQ_MSC_IGNORE), - USB_QUIRK(REALTEK, RTW8821CU_CD, 0x0001, 0x0001, UQ_MSC_IGNORE), + USB_QUIRK(SMART2, G2MEMKEY, UQ_MSC_NO_INQUIRY), + USB_QUIRK_REV(RALINK, RT_STOR, 0x0001, 0x0001, UQ_MSC_IGNORE), + USB_QUIRK_REV(REALTEK, RTW8821CU_CD, 0x0001, 0x0001, UQ_MSC_IGNORE), /* Non-standard USB MIDI devices */ - USB_QUIRK(ROLAND, UM1, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, SC8850, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, SD90, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, UM880N, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, UA100, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, UM4, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, U8, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, UM2, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, SC8820, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, PC300, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, SK500, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, SCD70, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, UM550, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, SD20, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, SD80, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, UA700, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(ROLAND, PCR300, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(EGO, M4U, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI), - USB_QUIRK(LOGILINK, U2M, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI), - USB_QUIRK(MEDELI, DD305, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI, UQ_MATCH_VENDOR_ONLY), - USB_QUIRK(REDOCTANE, GHMIDI, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI), - USB_QUIRK(TEXTECH, U2M_1, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI), - USB_QUIRK(TEXTECH, U2M_2, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI), - USB_QUIRK(WCH2, U2M, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI), + USB_QUIRK(ROLAND, UM1, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, SC8850, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, SD90, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, UM880N, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, UA100, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, UM4, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, U8, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, UM2, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, SC8820, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, PC300, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, SK500, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, SCD70, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, UM550, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, SD20, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, SD80, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, UA700, UQ_AU_VENDOR_CLASS), + USB_QUIRK(ROLAND, PCR300, UQ_AU_VENDOR_CLASS), + USB_QUIRK(EGO, M4U, UQ_SINGLE_CMD_MIDI), + USB_QUIRK(LOGILINK, U2M, UQ_SINGLE_CMD_MIDI), + USB_QUIRK(MEDELI, DD305, UQ_SINGLE_CMD_MIDI, UQ_MATCH_VENDOR_ONLY), + USB_QUIRK(REDOCTANE, GHMIDI, UQ_SINGLE_CMD_MIDI), + USB_QUIRK(TEXTECH, U2M_1, UQ_SINGLE_CMD_MIDI), + USB_QUIRK(TEXTECH, U2M_2, UQ_SINGLE_CMD_MIDI), + USB_QUIRK(WCH2, U2M, UQ_SINGLE_CMD_MIDI), /* Non-standard USB AUDIO devices */ - USB_QUIRK(MAUDIO, FASTTRACKULTRA, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(MAUDIO, FASTTRACKULTRA8R, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), - USB_QUIRK(CMEDIA, CM6206, 0x0000, 0xffff, UQ_AU_SET_SPDIF_CM6206), - USB_QUIRK(PLOYTEC, SPL_CRIMSON_1, 0x0000, 0xffff, UQ_CFG_INDEX_1), - USB_QUIRK(ROLAND, UA25EX_AD, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS), + USB_QUIRK(MAUDIO, FASTTRACKULTRA, UQ_AU_VENDOR_CLASS), + USB_QUIRK(MAUDIO, FASTTRACKULTRA8R, UQ_AU_VENDOR_CLASS), + USB_QUIRK(CMEDIA, CM6206, UQ_AU_SET_SPDIF_CM6206), + USB_QUIRK(PLOYTEC, SPL_CRIMSON_1, UQ_CFG_INDEX_1), + USB_QUIRK(ROLAND, UA25EX_AD, UQ_AU_VENDOR_CLASS), /* * Quirks for manufacturers which USB devices does not respond @@ -633,15 +580,16 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = { USB_QUIRK_VO(INITIO, UQ_MSC_NO_SYNC_CACHE), /* DYMO LabelManager Pnp */ - USB_QUIRK(DYMO, LABELMANAGERPNP, 0x0000, 0xffff, UQ_MSC_DYMO_EJECT), + USB_QUIRK(DYMO, LABELMANAGERPNP, UQ_MSC_DYMO_EJECT), /* Holtek USB gaming keyboard */ - USB_QUIRK(HOLTEK, F85, 0x0000, 0xffff, UQ_KBD_BOOTPROTO), + USB_QUIRK(HOLTEK, F85, UQ_KBD_BOOTPROTO), /* This works much better with if_cdce than if_ure */ - USB_QUIRK(LENOVO, TBT3LAN, 0x0000, 0xffff, UQ_CFG_INDEX_1), + USB_QUIRK(LENOVO, TBT3LAN, UQ_CFG_INDEX_1), }; #undef USB_QUIRK_VO +#undef USB_QUIRK_REV #undef USB_QUIRK static const char *usb_quirk_str[USB_QUIRK_MAX] = { From nobody Sat May 11 19:39:18 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcGKL5Q0yz5KfyC; Sat, 11 May 2024 19:39: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 4VcGKL3N0mz4Tf4; Sat, 11 May 2024 19:39:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715456358; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pQOjtCOdlBCKUcxcZmMcyUmiwlc7DwPuatskWT3KuMM=; b=IponVeotLgrktjJRChVeK73mntO41NSxdTeaOhH8ANdoWNwKhcZ1CEdYSSs+IWDVs5am4S CVtmqQ9zIou2hsWLbuWZ/vXREQRu3vhNFXOqU2gNkwFg9y3ScaWF3pAIC3v4KCYmDsHDwd Jdz7Mp9RoIrFQDij31fqDSHIeudH2cDPPws3PBq/7+tL5G1zDrLNjVfNl1RnRkWxo4fbXz 5Tv9Aqwuzz+wgmmXJ3rl2QfhHQsA+x7v9au4FVdT7G6FXw7U0GldTTNqT7YfSCHbkqGo62 owhNTHToKu86qFp4bbTM9zVUSx5eEqISgjlQoKCzj71wYNnYJCnDELQ7lxHOCQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715456358; a=rsa-sha256; cv=none; b=kYtsLl96TgowROgdPB4s03QHfPtygJ4/4fP/xrqrqfvdC8KFqXgJwkEw0apZ+1LBaSP8EF 6Ak8mnLXqyAPxsze5XG310kEGZwfsITzEXBi4LIj8nKJs3wBc+KCGHCUIotpEIdfR/lCdL rQiEyI2jMEd7RKb53jnm8DLoOsQHO1ZeyWgNOYqhGcopXcnkX0FQXQ92KynRcpByEywqGe iNhF6Ri0X2LpTG+HYg/9tN1nINjDgklNxJ94KYPqP2QomeqlCVyjTBXfNi0wqydDzqo+YC 91PCmh2Vn/EEAB+oxHSBja66X6V7j5AGiWPCBL83KxjmUkZhdx7yZkgGMXb6hw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715456358; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pQOjtCOdlBCKUcxcZmMcyUmiwlc7DwPuatskWT3KuMM=; b=ZV4iE9EcYcN4xlbxDsvfnD5rZ8UyQ0gQfBRBKczqhpIEIzw4uaipanc4ELQbOYEiI5KuUx F/t3eF7vElL0hmkYQEBP7f4xY6/eeU19d2t0FYCcPrtrToIGo8JxiIyXp2V7Ica/HZJm0i K3KRpmCyddNe69J3o2DQzhim9PKteZalcCbGHguEUqQ1Sz8oMyB8mZRGPchKjdFEcVtSx0 AakiDjOXcWQmSekXGBC704U7H4eAP7/etw/QEfHTA9ri5ZHnjx8RWrRId5q8BRNYZd6VH0 Oly+DL4P0i4dKn4iSHvuc8Er5TVF7nwT3xcS9YBqKymbl+6oZI+rsm/hA6VbvA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcGKL3034zZMN; Sat, 11 May 2024 19:39: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 44BJdIaR045796; Sat, 11 May 2024 19:39:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44BJdIE5045793; Sat, 11 May 2024 19:39:18 GMT (envelope-from git) Date: Sat, 11 May 2024 19:39:18 GMT Message-Id: <202405111939.44BJdIE5045793@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 099a81a4173b - main - linprocfs: Add support for proc/sysvipc/{msg,sem,shm} List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 099a81a4173bc5b121e50d4e27ea5fafdda8475b Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=099a81a4173bc5b121e50d4e27ea5fafdda8475b commit 099a81a4173bc5b121e50d4e27ea5fafdda8475b Author: Ricardo Branco AuthorDate: 2024-05-04 13:38:20 +0000 Commit: Warner Losh CommitDate: 2024-05-11 19:37:47 +0000 linprocfs: Add support for proc/sysvipc/{msg,sem,shm} Signed-off-by: Ricardo Branco Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1218 --- sys/compat/linprocfs/linprocfs.c | 182 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 182 insertions(+) diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c index 391d5f679ee5..a877d4065c18 100644 --- a/sys/compat/linprocfs/linprocfs.c +++ b/sys/compat/linprocfs/linprocfs.c @@ -126,6 +126,9 @@ #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* pages to kbytes */ #define TV2J(x) ((x)->tv_sec * 100UL + (x)->tv_usec / 10000) +/* Value defined in sys/kern/sysv_shm.c */ +#define SHMSEG_ALLOCATED 0x0800 + /** * @brief Mapping of ki_stat in struct kinfo_proc to the linux state * @@ -2092,6 +2095,176 @@ linprocfs_domax_map_cnt(PFS_FILL_ARGS) return (0); } +/* + * Filler function for proc/sysvipc/msg + */ +static int +linprocfs_dosysvipc_msg(PFS_FILL_ARGS) +{ + struct msqid_kernel *msqids; + u_long id, msgmni; + size_t sz; + int error; + + sbuf_printf(sb, + "%10s %10s %4s %10s %10s %5s %5s %5s %5s %5s %5s %10s %10s %10s\n", + "key", "msqid", "perms", "cbytes", "qnum", "lspid", "lrpid", + "uid", "gid", "cuid", "cgid", "stime", "rtime", "ctime"); + +again: + msgmni = msginfo.msgmni; + sz = sizeof(struct msqid_kernel) * msgmni; + msqids = malloc(sz, M_TEMP, M_NOWAIT); + if (msqids == NULL) + return (ENOMEM); + if (msgmni != msginfo.msgmni) { + free(msqids, M_TEMP); + goto again; + } + + error = kernel_sysctlbyname(curthread, "kern.ipc.msqids", msqids, &sz, + NULL, 0, 0, 0); + if (error != 0) { + free(msqids, M_TEMP); + return (error); + } + msgmni = sz / sizeof(struct msqid_kernel); + + for (id = 0; id < msgmni; id++) + if (msqids[id].u.msg_qbytes != 0) + sbuf_printf(sb, + "%10d %10lu %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10ld %10ld %10ld\n", + (int) msqids[id].u.msg_perm.key, + IXSEQ_TO_IPCID(id, msqids[id].u.msg_perm), + msqids[id].u.msg_perm.mode, + msqids[id].u.msg_cbytes, + msqids[id].u.msg_qnum, + msqids[id].u.msg_lspid, + msqids[id].u.msg_lrpid, + msqids[id].u.msg_perm.uid, + msqids[id].u.msg_perm.gid, + msqids[id].u.msg_perm.cuid, + msqids[id].u.msg_perm.cgid, + msqids[id].u.msg_stime, + msqids[id].u.msg_rtime, + msqids[id].u.msg_ctime); + + free(msqids, M_TEMP); + return (0); +} + +/* + * Filler function for proc/sysvipc/sem + */ +static int +linprocfs_dosysvipc_sem(PFS_FILL_ARGS) +{ + struct semid_kernel *semids; + u_long id, semmni; + size_t sz; + int error; + + sbuf_printf(sb, "%10s %10s %4s %10s %5s %5s %5s %5s %10s %10s\n", + "key", "semid", "perms", "nsems", "uid", "gid", "cuid", "cgid", + "otime", "ctime"); + +again: + semmni = seminfo.semmni; + sz = sizeof(struct semid_kernel) * semmni; + semids = malloc(sz, M_TEMP, M_NOWAIT); + if (semids == NULL) + return (ENOMEM); + if (semmni != seminfo.semmni) { + free(semids, M_TEMP); + goto again; + } + + error = kernel_sysctlbyname(curthread, "kern.ipc.sema", semids, &sz, + NULL, 0, 0, 0); + if (error != 0) { + free(semids, M_TEMP); + return (error); + } + semmni = sz / sizeof(struct semid_kernel); + + for (id = 0; id < semmni; id++) + if ((semids[id].u.sem_perm.mode & SEM_ALLOC) != 0) + sbuf_printf(sb, + "%10d %10lu %4o %10u %5u %5u %5u %5u %10ld %10ld\n", + (int) semids[id].u.sem_perm.key, + IXSEQ_TO_IPCID(id, semids[id].u.sem_perm), + semids[id].u.sem_perm.mode, + semids[id].u.sem_nsems, + semids[id].u.sem_perm.uid, + semids[id].u.sem_perm.gid, + semids[id].u.sem_perm.cuid, + semids[id].u.sem_perm.cgid, + semids[id].u.sem_otime, + semids[id].u.sem_ctime); + + free(semids, M_TEMP); + return (0); +} + +/* + * Filler function for proc/sysvipc/shm + */ +static int +linprocfs_dosysvipc_shm(PFS_FILL_ARGS) +{ + struct shmid_kernel *shmids; + u_long id, shmmni; + size_t sz; + int error; + + sbuf_printf(sb, + "%10s %10s %s %21s %5s %5s %5s %5s %5s %5s %5s %10s %10s %10s %21s %21s\n", + "key", "shmid", "perms", "size", "cpid", "lpid", "nattch", "uid", + "gid", "cuid", "cgid", "atime", "dtime", "ctime", "rss", "swap"); + +again: + shmmni = shminfo.shmmni; + sz = sizeof(struct shmid_kernel) * shmmni; + shmids = malloc(sz, M_TEMP, M_NOWAIT); + if (shmids == NULL) + return (ENOMEM); + if (shmmni != shminfo.shmmni) { + free(shmids, M_TEMP); + goto again; + } + + error = kernel_sysctlbyname(curthread, "kern.ipc.shmsegs", shmids, &sz, + NULL, 0, 0, 0); + if (error != 0) { + free(shmids, M_TEMP); + return (error); + } + shmmni = sz / sizeof(struct shmid_kernel); + + for (id = 0; id < shmmni; id++) + if ((shmids[id].u.shm_perm.mode & SHMSEG_ALLOCATED) != 0) + sbuf_printf(sb, + "%10d %10lu %4o %21lu %5u %5u %5u %5u %5u %5u %5u %10ld %10ld %10ld %21d %21d\n", + (int) shmids[id].u.shm_perm.key, + IXSEQ_TO_IPCID(id, shmids[id].u.shm_perm), + shmids[id].u.shm_perm.mode, + shmids[id].u.shm_segsz, + shmids[id].u.shm_cpid, + shmids[id].u.shm_lpid, + shmids[id].u.shm_nattch, + shmids[id].u.shm_perm.uid, + shmids[id].u.shm_perm.gid, + shmids[id].u.shm_perm.cuid, + shmids[id].u.shm_perm.cgid, + shmids[id].u.shm_atime, + shmids[id].u.shm_dtime, + shmids[id].u.shm_ctime, + 0, 0); /* XXX rss & swp are not supported */ + + free(shmids, M_TEMP); + return (0); +} + /* * Constructor */ @@ -2241,6 +2414,15 @@ linprocfs_init(PFS_INIT_ARGS) pfs_create_file(dir, "max_map_count", &linprocfs_domax_map_cnt, NULL, NULL, NULL, PFS_RD); + /* /proc/sysvipc/... */ + dir = pfs_create_dir(root, "sysvipc", NULL, NULL, NULL, 0); + pfs_create_file(dir, "msg", &linprocfs_dosysvipc_msg, + NULL, NULL, NULL, PFS_RD); + pfs_create_file(dir, "sem", &linprocfs_dosysvipc_sem, + NULL, NULL, NULL, PFS_RD); + pfs_create_file(dir, "shm", &linprocfs_dosysvipc_shm, + NULL, NULL, NULL, PFS_RD); + return (0); } From nobody Sun May 12 00:39:12 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcNzP0hPGz5JfGq; Sun, 12 May 2024 00:39: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 4VcNzN6rbyz42Ml; Sun, 12 May 2024 00: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=1715474353; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qLFWVyMZ0wSLZlj0oyS5zODAXAlo6Bp2+GNHhcxGlWk=; b=Vsw14BM0+5Xb6cL8uo/pHR15h4VTIdeL8mPWSaXglqeuPPs5qQXbRzcEGQr2GJjx5ePgZs F9uyVSo1kW4hsZHWFpRBsAS/GrcOHNPuUcDP7bOPbNRjbYciv3JeCvu/0ehgVX0tiqUBcC 08kVBc17uWaZuB6zRWRrhf5qhMqBulOqN2wetmk3T2miG2m8xZVRh8fy8qKt4yUBWTxXcI UX8zSR9JboN3CJBXSDZ7aqkjEzc/5Ma8aGgkQ7902qIZ/8TsBwNZAt33TwSVFKV5vUZJju /qZ+Ounaw6wT1PEoi4bFQRYcWRpn4emP7HBUeapKG9rUZ1+x0RJrZ0b9uIESlg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715474353; a=rsa-sha256; cv=none; b=xOQCbDvTO9j8/zTLVkAJxv/iQm8Q2p1gO7IdaHBDRbHvCJLphg4Dmcz5WjMT0SvPvdz5kM aHz1wbELuK3QEUEmvp63N9uw39gICYWq0YS0RgBlO8JahFvq9GQEIe6GSMZhFhzIPAk5k1 vcVqDJ/CyHRq+2Uk2zeCGm0DLm0jKjzXV69oaHMxONLpj6vBno9JwqRQ05r1ZVEIyiYNts utq2CHzwnpBk66qOFr1EPBjRZUA4f6w9Q6pnHzFNRsDM5ULxRxauJp8aCSckj7jT6giobY 1RlZKk7kmMYycLqryRoIzHm+I5PvWwuqHNcsDoafvbfQ8yB8oZbL4XO/9xsGuw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715474353; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qLFWVyMZ0wSLZlj0oyS5zODAXAlo6Bp2+GNHhcxGlWk=; b=c0Sw+cEhHO9iQTbk8exS+D+avPsS0yurVmzgA4C6dWD2FZ3l2g36vVVii0HcHpirJT0AV5 5YelUswanuH0IkFD7a0iGmSTdA/pb0v8y6TXGVZGqIrycxlA9x1Wzii9qSZLRZxLgPmbzz EE+ysKe9Aw5UGsko65YA/wMIkf9NyYPzc5QZflyaOtK5YaZ61KmzGWXrh1He5CWo4nBDU7 UjLsEHYs+4QV7d1WUFY0a4DRIrKiNtBnl94STKl5X1drywQGWOR+7C5ph8V6RIhS14DCup bMnMUgRrzgy1h3IrxbkohzI/9xqyh1XJ3pQmBTDXYUlZ5Kb8IXY7p0Qs25gekw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcNzN6KlFzjgm; Sun, 12 May 2024 00:39: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 44C0dCjx052620; Sun, 12 May 2024 00:39:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44C0dCaf052616; Sun, 12 May 2024 00:39:12 GMT (envelope-from git) Date: Sun, 12 May 2024 00:39:12 GMT Message-Id: <202405120039.44C0dCaf052616@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: c5f906d32d2b - main - linux: Make module standalone-buildable List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c5f906d32d2bc8e37f1e1911382e27af7e6240ff Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=c5f906d32d2bc8e37f1e1911382e27af7e6240ff commit c5f906d32d2bc8e37f1e1911382e27af7e6240ff Author: Warner Losh AuthorDate: 2024-05-11 22:35:54 +0000 Commit: Warner Losh CommitDate: 2024-05-11 22:35:54 +0000 linux: Make module standalone-buildable Add opt_inet.h and opt_usb.h to make linux module buildable standalone. Sponsored by: Netflix --- sys/modules/linux/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/modules/linux/Makefile b/sys/modules/linux/Makefile index 8c720f8f9e65..37ba17e09e9d 100644 --- a/sys/modules/linux/Makefile +++ b/sys/modules/linux/Makefile @@ -34,9 +34,11 @@ SRCS= linux${SFX}_dummy_machdep.c \ linux_uid16.c \ linux_vdso.c \ linux_xattr.c \ + opt_inet.h \ opt_inet6.h \ opt_ktrace.h \ opt_posix.h \ + opt_usb.h \ bus_if.h \ device_if.h \ vnode_if.h From nobody Sun May 12 00:39:13 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcNzQ1x9kz5JfWx; Sun, 12 May 2024 00:39: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 4VcNzP73xtz42Zr; Sun, 12 May 2024 00:39:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715474354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3+YSY44gpra8+2rMUjEPPKJfteHlKqTC+kwjipJS3T8=; b=KpcG1ExGktl+ar89ajw3sWP1ReNWllodlWXipCwbUPUr7YolKAvPABUXweojjdWLxBJSE0 dHRvVlXHvXeAvkxAT+sQqWvMtG+jhTZPNcC4enqQx3L1Ikv5KHgPpcpAhtTYeC+rhi8MsT aEdINQIZMu6Kf/XhWbf863xIXJFmb1cOkGhMj76IS6W6ICYSWZcWXULAeTdczOItcem8DK F54LzwTbOZOyMaBVPLt4kCo06ID4i/xijw7YgtSj6CwoQANmgvhYoZ1/Ac3esVPhF8jD8l GgAxQAXfy/HoVReqczSoh+Qx2X06nCnGNpRE+xSPEkH+swSyvzm8Ud+7xWo5rQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715474354; a=rsa-sha256; cv=none; b=IH/vR9mAqEhLTa9K5xVRfuxDmLVe/Ff/1eAMV5ZLwcr4dfPErVrTlZmFNSTYaAqyWt1dJP s8OUEhchkikp7/DIFZNWICaGxCer69oFqItXIqI4zZs3c4aklsIqsiJXY6jQJYvq/8Ervm 4mBik9ycNTUU9nm/y9dePNkayKiFEyqJEZe9O/V9ofkWJOMajX2SOqFao/th5vrGSl6qKv 3fTgF0xUX51ylKOqBsX6HqNdGdQscbgQoPsgthmx5GB7GEVeWGOIMxNDNTTk/wOVoJQ2FS Cf1+1GFBdiqw56WNkCtAKnxouVF/Std8jjnnHyiXfRiAcQm3F8hmvWzolSu/rw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715474354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3+YSY44gpra8+2rMUjEPPKJfteHlKqTC+kwjipJS3T8=; b=qNz+B4WkZQuLlgg8R4FyarwypzVfc2OZkoafEGY943i1H3SnDp5eIaPNwL5Cdf2ccrDABG yDZ0SX11cwO90egW9z2N5p5OkBpefLt/AwHo38ToQjIMOg9WBhL+onUQPn3sOpAEpMXDWT tAoDHZNYlvmtVVWn18NKWXNYpR2XQDzdqebRzbTnyzgOjHwXAHbp1SQV9TQeeXZSMmYJVb HRvR9Z4oBGk0fXKJLd/9QTjtKp9QKDirJmU2QAWEnCaXPzT2wpXcIG8XCuI/aMI0Pz4mcx GJU1M4zHRWjUfgoCji/B4j0nq/tvQ5zzee6/ygeDHO9iMX12OSDUo6JbSp7V+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 4VcNzP6gxPzjRS; Sun, 12 May 2024 00:39: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 44C0dD9H052666; Sun, 12 May 2024 00:39:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44C0dDhe052663; Sun, 12 May 2024 00:39:13 GMT (envelope-from git) Date: Sun, 12 May 2024 00:39:13 GMT Message-Id: <202405120039.44C0dDhe052663@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 02f481a30b82 - main - linprocfs: Fix i386 time type List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 02f481a30b8269c7cad24ec2920ca09751708a1e Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=02f481a30b8269c7cad24ec2920ca09751708a1e commit 02f481a30b8269c7cad24ec2920ca09751708a1e Author: Warner Losh AuthorDate: 2024-05-11 22:36:23 +0000 Commit: Warner Losh CommitDate: 2024-05-12 00:38:17 +0000 linprocfs: Fix i386 time type Cast the time type to (long). This is correct on all architectures. On i386, this promotes the int time_t to a long (which is also 32-bit). On 64-bit architectures, this promotes the 64-bit signed time_t to a 64-bit signed int type. Sponsored by: Netflix --- sys/compat/linprocfs/linprocfs.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c index a877d4065c18..aa5af0b3c1c1 100644 --- a/sys/compat/linprocfs/linprocfs.c +++ b/sys/compat/linprocfs/linprocfs.c @@ -2145,9 +2145,9 @@ again: msqids[id].u.msg_perm.gid, msqids[id].u.msg_perm.cuid, msqids[id].u.msg_perm.cgid, - msqids[id].u.msg_stime, - msqids[id].u.msg_rtime, - msqids[id].u.msg_ctime); + (long)msqids[id].u.msg_stime, + (long)msqids[id].u.msg_rtime, + (long)msqids[id].u.msg_ctime); free(msqids, M_TEMP); return (0); @@ -2199,8 +2199,8 @@ again: semids[id].u.sem_perm.gid, semids[id].u.sem_perm.cuid, semids[id].u.sem_perm.cgid, - semids[id].u.sem_otime, - semids[id].u.sem_ctime); + (long)semids[id].u.sem_otime, + (long)semids[id].u.sem_ctime); free(semids, M_TEMP); return (0); @@ -2256,9 +2256,9 @@ again: shmids[id].u.shm_perm.gid, shmids[id].u.shm_perm.cuid, shmids[id].u.shm_perm.cgid, - shmids[id].u.shm_atime, - shmids[id].u.shm_dtime, - shmids[id].u.shm_ctime, + (long)shmids[id].u.shm_atime, + (long)shmids[id].u.shm_dtime, + (long)shmids[id].u.shm_ctime, 0, 0); /* XXX rss & swp are not supported */ free(shmids, M_TEMP); From nobody Sun May 12 01:13:49 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcPlL1CyYz5JhyS; Sun, 12 May 2024 01:13: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 4VcPlK6dxdz45Sc; Sun, 12 May 2024 01:13:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715476429; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Rd+H0KzxfvHm6PonVHKypEUxkKXZOXImkhsgquayvY8=; b=sdEUTOGP3+X1diYXabncBRo6tBimWvLmJsIaUyu0+BAaXzcW18zJ9zkOMibteDtZfW9qpg QOaJU+82k5keDv2XrslPoNUvtgHQ26vIUH6w6MosgMlgv/BZKHsVHc7hqzQ7bPxiEVLSbT iRsC38bF+L7549dPyBmiJlFBErtIBIp72mzGi1eZQ2H2uUV2RNnTQbu/yHVkRnADkOst9v 7dLjEf9eMOVbbEeXkAQxgpoGpfJ22lKfqZp62Ty9bm5qIDk7Yhfc1rWpukVbDQIkoj75FZ kcR7Tl0YUcx+GfssEVQKDAkYKdgOmL9yR9L8h5jIPmUTPWJ0maAnxF7zcp0qzg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715476429; a=rsa-sha256; cv=none; b=QsxHl3ufieDUd4UFn5+yzggFqfrQnZFE4rnJL7iaiveoydqK/SMH2rSlCniJFZyxc2CJoF qOqBL4P5M8O4n+8smYA5dOV7KoyJMDxSxOTPxAYZVbGX6YRlGvP+tRpxVdbDGW5tLACMK0 46iH+Li6qrllO+1oSZo312YmmlXa2htuRdSxod4r5n/t+I3B1AFAQ1FVtZY48u8TRZWypp q1dvqeuLqRc3fJQFrV7kGzmh7Z2mKbgD0eI0R+gFMU+EWRjA2KaYVHz4ZjY6uS0gI7leW7 P7Q0OmYYwNKnaiiEbQTaZqYc5dWWpvjgjOHm0uNYC2he4fra2+ngUjA8rkrYvA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715476429; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Rd+H0KzxfvHm6PonVHKypEUxkKXZOXImkhsgquayvY8=; b=jvcakGgLr+zv20ioynvClDIhvknXBXz3SgefLQxamOzqiy70upxQRvrb8NGFLOTAZNelld osV9IbfZQ0A+mE7efeSNKCMOgELA8RYll8HsAwmPsQfqxLtugmlRWSrVXlclMZmP7fQl2U GSqdcEc9zVnIMmcaYRJi8KOi2ZcAo0h7fb85Hz45T8NvaBId7s8O3mNXhvATZeBkq4eUYI fAJ4HzCuO9DA2cYGVuiQMv64JODzIsJ60WjyohWLyuI2NzVp/3ri4aOA1lTy3pY0DdhFy2 k5QDSKbA/3n3FpMdewr9kxki/pO0BksgpHKX10kOtkwBb28Dcm4jRhvFQKupMw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcPlK6Fx5zk1j; Sun, 12 May 2024 01:13: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 44C1Dn7D019347; Sun, 12 May 2024 01:13:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44C1DnjQ019344; Sun, 12 May 2024 01:13:49 GMT (envelope-from git) Date: Sun, 12 May 2024 01:13:49 GMT Message-Id: <202405120113.44C1DnjQ019344@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: e93404065177 - main - cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e93404065177d6c909cd64bf7d74fe0d8df35edf Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e93404065177d6c909cd64bf7d74fe0d8df35edf commit e93404065177d6c909cd64bf7d74fe0d8df35edf Author: Konstantin Belousov AuthorDate: 2024-05-07 13:23:28 +0000 Commit: Konstantin Belousov CommitDate: 2024-05-12 01:13:00 +0000 cdev_pager_allocate(): ensure that the cdev_pager_ops ctr is called only once per allocated vm_object. Otherwise, since constructors are not idempotent, we e.g. leak device reference in case of non-managed pager. PR: 278826 Reported by: Austin Zhang Reviewed by: alc, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D45113 --- sys/vm/device_pager.c | 70 +++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 51 insertions(+), 19 deletions(-) diff --git a/sys/vm/device_pager.c b/sys/vm/device_pager.c index 0b1c5287b884..4f8651411851 100644 --- a/sys/vm/device_pager.c +++ b/sys/vm/device_pager.c @@ -115,8 +115,15 @@ cdev_pager_lookup(void *handle) { vm_object_t object; +again: mtx_lock(&dev_pager_mtx); object = vm_pager_object_lookup(&dev_pager_object_list, handle); + if (object != NULL && object->un_pager.devp.dev == NULL) { + msleep(&object->un_pager.devp.dev, &dev_pager_mtx, + PVM | PDROP, "cdplkp", 0); + vm_object_deallocate(object); + goto again; + } mtx_unlock(&dev_pager_mtx); return (object); } @@ -126,9 +133,8 @@ cdev_pager_allocate(void *handle, enum obj_type tp, const struct cdev_pager_ops *ops, vm_ooffset_t size, vm_prot_t prot, vm_ooffset_t foff, struct ucred *cred) { - vm_object_t object, object1; + vm_object_t object; vm_pindex_t pindex; - u_short color; if (tp != OBJT_DEVICE && tp != OBJT_MGTDEVICE) return (NULL); @@ -154,16 +160,16 @@ cdev_pager_allocate(void *handle, enum obj_type tp, pindex < OFF_TO_IDX(size)) return (NULL); - if (ops->cdev_pg_ctor(handle, size, prot, foff, cred, &color) != 0) - return (NULL); +again: mtx_lock(&dev_pager_mtx); /* * Look up pager, creating as necessary. */ - object1 = NULL; object = vm_pager_object_lookup(&dev_pager_object_list, handle); if (object == NULL) { + vm_object_t object1; + /* * Allocate object and associate it with the pager. Initialize * the object's pg_color based upon the physical address of the @@ -171,15 +177,19 @@ cdev_pager_allocate(void *handle, enum obj_type tp, */ mtx_unlock(&dev_pager_mtx); object1 = vm_object_allocate(tp, pindex); - object1->flags |= OBJ_COLORED; - object1->pg_color = color; - object1->handle = handle; - object1->un_pager.devp.ops = ops; - object1->un_pager.devp.dev = handle; - TAILQ_INIT(&object1->un_pager.devp.devp_pglist); mtx_lock(&dev_pager_mtx); object = vm_pager_object_lookup(&dev_pager_object_list, handle); if (object != NULL) { + object1->type = OBJT_DEAD; + vm_object_deallocate(object1); + object1 = NULL; + if (object->un_pager.devp.dev == NULL) { + msleep(&object->un_pager.devp.dev, + &dev_pager_mtx, PVM | PDROP, "cdplkp", 0); + vm_object_deallocate(object); + goto again; + } + /* * We raced with other thread while allocating object. */ @@ -191,29 +201,51 @@ cdev_pager_allocate(void *handle, enum obj_type tp, KASSERT(object->un_pager.devp.ops == ops, ("Inconsistent devops %p %p", object, ops)); } else { + u_short color; + object = object1; object1 = NULL; object->handle = handle; + object->un_pager.devp.ops = ops; + TAILQ_INIT(&object->un_pager.devp.devp_pglist); TAILQ_INSERT_TAIL(&dev_pager_object_list, object, pager_object_list); + mtx_unlock(&dev_pager_mtx); if (ops->cdev_pg_populate != NULL) vm_object_set_flag(object, OBJ_POPULATE); + if (ops->cdev_pg_ctor(handle, size, prot, foff, + cred, &color) != 0) { + mtx_lock(&dev_pager_mtx); + TAILQ_REMOVE(&dev_pager_object_list, object, + pager_object_list); + wakeup(&object->un_pager.devp.dev); + mtx_unlock(&dev_pager_mtx); + object->type = OBJT_DEAD; + vm_object_deallocate(object); + object = NULL; + mtx_lock(&dev_pager_mtx); + } else { + mtx_lock(&dev_pager_mtx); + object->flags |= OBJ_COLORED; + object->pg_color = color; + object->un_pager.devp.dev = handle; + wakeup(&object->un_pager.devp.dev); + } } + MPASS(object1 == NULL); } else { + if (object->un_pager.devp.dev == NULL) { + msleep(&object->un_pager.devp.dev, + &dev_pager_mtx, PVM | PDROP, "cdplkp", 0); + vm_object_deallocate(object); + goto again; + } if (pindex > object->size) object->size = pindex; KASSERT(object->type == tp, ("Inconsistent device pager type %p %d", object, tp)); } mtx_unlock(&dev_pager_mtx); - if (object1 != NULL) { - object1->handle = object1; - mtx_lock(&dev_pager_mtx); - TAILQ_INSERT_TAIL(&dev_pager_object_list, object1, - pager_object_list); - mtx_unlock(&dev_pager_mtx); - vm_object_deallocate(object1); - } return (object); } From nobody Sun May 12 01:21:21 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcPwK2Y5Jz5JyRF for ; Sun, 12 May 2024 01:21:37 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com [IPv6:2a00:1450:4864:20::634]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4VcPwJ70Gxz46hS for ; Sun, 12 May 2024 01:21:36 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x634.google.com with SMTP id a640c23a62f3a-a59a5f81af4so809693566b.3 for ; Sat, 11 May 2024 18:21:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1715476894; x=1716081694; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=ISlwutXQF9iDLsi8//UjiOQChcwqxpht45g1c7C+DnM=; b=F6D0UOlZvjxR3+9REd1PG74y7asbAl3YAmzfl4Ea2DblfJC6EDDo6ZiXCJUWBUy4xl cTshZiYrJn/BvGZjX3qDsGlKMwmlzJps+fyJijD0s4vZFjZuUAQLg/fOUclnaWdwqJ8Y P7lPnQPmzJvY2mVIfDoYyuzIgHVgjVA6j32O7kcT2fiEiQBVKrnuF3fLDyZ7K47Aipqa ffykK6vfvncRcvSVF4sAxjC3tQbMhG/wsk691pLg9mZt5bRwCXoPGm5ax+8WeV52+Z49 sdWUGP8RBzC3a4r01umGW85yZ4adJA3bJh/1aWYjVZpvroSSpVRcKmahEROqBf/f8V32 j54A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715476894; x=1716081694; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ISlwutXQF9iDLsi8//UjiOQChcwqxpht45g1c7C+DnM=; b=Q1JmagfDZgqBdPuuGyQe5QxHJu4v5c62KCwcbU1Uh0RrJcL3ZkAd080+pLAxawDfgF E5t7YdFNGFKMVigM326R7Un4wDmdlffGOE3CLlFN+gmihryyZBpdZ1ADgH9OWNSinCRv hlE/87h04gEdC/yo+i3l9CMwp5NcAdfcJmpHcvCRbS9Xa6PW58wznn/tOeo8zdeo6fNl M+NOpuMxTqmc9OaEXfQKN8k+dLTfILSV6vuaagdMM1sw0lLAQffYxxFSpd+dtPt7lcKO yhaHqlCoomOE0lG1D+5/9wwnZKhqmNpNjB7ISts6Rfgvh9rmTz4MikM0zLpUfCiCqAE2 g46w== X-Forwarded-Encrypted: i=1; AJvYcCUkRj9sCqO91Cqv4UPT7zl9I4shmTexYt8klhjixXC6APSwD2qLgEFnNs+7sEIjyFhwbro/TxxkNGtZYNkgEyRts2QlwMr1PwrdjHGy8SU9lg== X-Gm-Message-State: AOJu0YyOBNvQ4mLfuaA4x/NpUkqOBn+t/tbGJVv73vf6K03WSanGezKE tS879EEfOJ4RD9MICRHpnibbsmcfXcvL/nnrDnIAJPovQACXgUo9E9xxtdq30XIUrKPelEcW7qj FVzEwAjopsOeapwzUITTOgAKFQ6wogi7qfCnAWA== X-Google-Smtp-Source: AGHT+IHTLBekpNubQIiMDwLm0Nir91CbmCohkBWKSg8GTz/BA/s88vuwNVYOdGk4txK6pNyq4KuuHv/+daIaxmLQ5zk= X-Received: by 2002:a17:906:560a:b0:a59:df1d:f5ae with SMTP id a640c23a62f3a-a5a2d5c9dc7mr357603366b.31.1715476894317; Sat, 11 May 2024 18:21:34 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202405120039.44C0dDhe052663@gitrepo.freebsd.org> In-Reply-To: <202405120039.44C0dDhe052663@gitrepo.freebsd.org> From: Warner Losh Date: Sat, 11 May 2024 19:21:21 -0600 Message-ID: Subject: Re: git: 02f481a30b82 - main - linprocfs: Fix i386 time type To: Warner Losh Cc: src-committers , "" , "" Content-Type: multipart/alternative; boundary="000000000000e814320618379619" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4VcPwJ70Gxz46hS --000000000000e814320618379619 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, May 11, 2024, 6:39=E2=80=AFPM Warner Losh wrote: > The branch main has been updated by imp: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D02f481a30b8269c7cad24ec2920ca09= 751708a1e > > commit 02f481a30b8269c7cad24ec2920ca09751708a1e > Author: Warner Losh > AuthorDate: 2024-05-11 22:36:23 +0000 > Commit: Warner Losh > CommitDate: 2024-05-12 00:38:17 +0000 > > linprocfs: Fix i386 time type > > Cast the time type to (long). This is correct on all architectures. O= n > i386, this promotes the int time_t to a long (which is also 32-bit). = On > 64-bit architectures, this promotes the 64-bit signed time_t to a > 64-bit > signed int type. > While this compiles everywhere, it will trucate on armv7 and powerpc. I'll fix it after the play I'm about to see when I realized this. Sorry for the churn. Warner Sponsored by: Netflix > --- > sys/compat/linprocfs/linprocfs.c | 16 ++++++++-------- > 1 file changed, 8 insertions(+), 8 deletions(-) > > diff --git a/sys/compat/linprocfs/linprocfs.c > b/sys/compat/linprocfs/linprocfs.c > index a877d4065c18..aa5af0b3c1c1 100644 > --- a/sys/compat/linprocfs/linprocfs.c > +++ b/sys/compat/linprocfs/linprocfs.c > @@ -2145,9 +2145,9 @@ again: > msqids[id].u.msg_perm.gid, > msqids[id].u.msg_perm.cuid, > msqids[id].u.msg_perm.cgid, > - msqids[id].u.msg_stime, > - msqids[id].u.msg_rtime, > - msqids[id].u.msg_ctime); > + (long)msqids[id].u.msg_stime, > + (long)msqids[id].u.msg_rtime, > + (long)msqids[id].u.msg_ctime); > > free(msqids, M_TEMP); > return (0); > @@ -2199,8 +2199,8 @@ again: > semids[id].u.sem_perm.gid, > semids[id].u.sem_perm.cuid, > semids[id].u.sem_perm.cgid, > - semids[id].u.sem_otime, > - semids[id].u.sem_ctime); > + (long)semids[id].u.sem_otime, > + (long)semids[id].u.sem_ctime); > > free(semids, M_TEMP); > return (0); > @@ -2256,9 +2256,9 @@ again: > shmids[id].u.shm_perm.gid, > shmids[id].u.shm_perm.cuid, > shmids[id].u.shm_perm.cgid, > - shmids[id].u.shm_atime, > - shmids[id].u.shm_dtime, > - shmids[id].u.shm_ctime, > + (long)shmids[id].u.shm_atime, > + (long)shmids[id].u.shm_dtime, > + (long)shmids[id].u.shm_ctime, > 0, 0); /* XXX rss & swp are not supporte= d > */ > > free(shmids, M_TEMP); > --000000000000e814320618379619 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 PGRpdiBkaXI9ImF1dG8iPjxkaXY+PGJyPjxicj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+PGRp diBkaXI9Imx0ciIgY2xhc3M9ImdtYWlsX2F0dHIiPk9uIFNhdCwgTWF5IDExLCAyMDI0LCA2OjM5 4oCvUE0gV2FybmVyIExvc2ggJmx0OzxhIGhyZWY9Im1haWx0bzppbXBAZnJlZWJzZC5vcmciPmlt cEBmcmVlYnNkLm9yZzwvYT4mZ3Q7IHdyb3RlOjxicj48L2Rpdj48YmxvY2txdW90ZSBjbGFzcz0i Z21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXItbGVmdDoxcHggI2Nj YyBzb2xpZDtwYWRkaW5nLWxlZnQ6MWV4Ij5UaGUgYnJhbmNoIG1haW4gaGFzIGJlZW4gdXBkYXRl ZCBieSBpbXA6PGJyPg0KPGJyPg0KVVJMOiA8YSBocmVmPSJodHRwczovL2NnaXQuRnJlZUJTRC5v cmcvc3JjL2NvbW1pdC8/aWQ9MDJmNDgxYTMwYjgyNjljN2NhZDI0ZWMyOTIwY2EwOTc1MTcwOGEx ZSIgcmVsPSJub3JlZmVycmVyIG5vcmVmZXJyZXIiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL2Nn aXQuRnJlZUJTRC5vcmcvc3JjL2NvbW1pdC8/aWQ9MDJmNDgxYTMwYjgyNjljN2NhZDI0ZWMyOTIw Y2EwOTc1MTcwOGExZTwvYT48YnI+DQo8YnI+DQpjb21taXQgMDJmNDgxYTMwYjgyNjljN2NhZDI0 ZWMyOTIwY2EwOTc1MTcwOGExZTxicj4NCkF1dGhvcjrCoCDCoCDCoFdhcm5lciBMb3NoICZsdDtp bXBARnJlZUJTRC5vcmcmZ3Q7PGJyPg0KQXV0aG9yRGF0ZTogMjAyNC0wNS0xMSAyMjozNjoyMyAr MDAwMDxicj4NCkNvbW1pdDrCoCDCoCDCoFdhcm5lciBMb3NoICZsdDtpbXBARnJlZUJTRC5vcmcm Z3Q7PGJyPg0KQ29tbWl0RGF0ZTogMjAyNC0wNS0xMiAwMDozODoxNyArMDAwMDxicj4NCjxicj4N CsKgIMKgIGxpbnByb2NmczogRml4IGkzODYgdGltZSB0eXBlPGJyPg0KPGJyPg0KwqAgwqAgQ2Fz dCB0aGUgdGltZSB0eXBlIHRvIChsb25nKS4gVGhpcyBpcyBjb3JyZWN0IG9uIGFsbCBhcmNoaXRl Y3R1cmVzLiBPbjxicj4NCsKgIMKgIGkzODYsIHRoaXMgcHJvbW90ZXMgdGhlIGludCB0aW1lX3Qg dG8gYSBsb25nICh3aGljaCBpcyBhbHNvIDMyLWJpdCkuIE9uPGJyPg0KwqAgwqAgNjQtYml0IGFy Y2hpdGVjdHVyZXMsIHRoaXMgcHJvbW90ZXMgdGhlIDY0LWJpdCBzaWduZWQgdGltZV90IHRvIGEg NjQtYml0PGJyPg0KwqAgwqAgc2lnbmVkIGludCB0eXBlLjxicj48L2Jsb2NrcXVvdGU+PC9kaXY+ PC9kaXY+PGRpdiBkaXI9ImF1dG8iPjxicj48L2Rpdj48ZGl2IGRpcj0iYXV0byI+V2hpbGUgdGhp cyBjb21waWxlcyBldmVyeXdoZXJlLCBpdCB3aWxsIHRydWNhdGUgb24gYXJtdjcgYW5kIHBvd2Vy cGMuIEkmIzM5O2xsIGZpeCBpdCBhZnRlciB0aGUgcGxheSBJJiMzOTttIGFib3V0IHRvIHNlZSB3 aGVuIEkgcmVhbGl6ZWQgdGhpcy4gU29ycnkgZm9yIHRoZSBjaHVybi48L2Rpdj48ZGl2IGRpcj0i YXV0byI+PGJyPjwvZGl2PjxkaXYgZGlyPSJhdXRvIj5XYXJuZXI8L2Rpdj48ZGl2IGRpcj0iYXV0 byI+PGJyPjwvZGl2PjxkaXYgZGlyPSJhdXRvIj48ZGl2IGNsYXNzPSJnbWFpbF9xdW90ZSI+PGJs b2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9y ZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+DQrCoCDCoCBTcG9uc29y ZWQgYnk6wqAgwqAgwqAgwqAgwqAgwqBOZXRmbGl4PGJyPg0KLS0tPGJyPg0KwqBzeXMvY29tcGF0 L2xpbnByb2Nmcy9saW5wcm9jZnMuYyB8IDE2ICsrKysrKysrLS0tLS0tLS08YnI+DQrCoDEgZmls ZSBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pPGJyPg0KPGJyPg0KZGlm ZiAtLWdpdCBhL3N5cy9jb21wYXQvbGlucHJvY2ZzL2xpbnByb2Nmcy5jIGIvc3lzL2NvbXBhdC9s aW5wcm9jZnMvbGlucHJvY2ZzLmM8YnI+DQppbmRleCBhODc3ZDQwNjVjMTguLmFhNWFmMGIzYzFj MSAxMDA2NDQ8YnI+DQotLS0gYS9zeXMvY29tcGF0L2xpbnByb2Nmcy9saW5wcm9jZnMuYzxicj4N CisrKyBiL3N5cy9jb21wYXQvbGlucHJvY2ZzL2xpbnByb2Nmcy5jPGJyPg0KQEAgLTIxNDUsOSAr MjE0NSw5IEBAIGFnYWluOjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIG1zcWlkc1tpZF0udS5tc2dfcGVybS5naWQsPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgbXNxaWRzW2lkXS51Lm1zZ19wZXJtLmN1aWQsPGJyPg0K wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgbXNxaWRzW2lkXS51Lm1z Z19wZXJtLmNnaWQsPGJyPg0KLcKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgbXNxaWRzW2lkXS51Lm1zZ19zdGltZSw8YnI+DQotwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqBtc3FpZHNbaWRdLnUubXNnX3J0aW1lLDxicj4NCi3CoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoG1zcWlkc1tpZF0udS5tc2dfY3RpbWUpOzxi cj4NCivCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChsb25nKW1zcWlk c1tpZF0udS5tc2dfc3RpbWUsPGJyPg0KK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgKGxvbmcpbXNxaWRzW2lkXS51Lm1zZ19ydGltZSw8YnI+DQorwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAobG9uZyltc3FpZHNbaWRdLnUubXNnX2N0aW1l KTs8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCBmcmVlKG1zcWlkcywgTV9URU1QKTs8YnI+DQrCoCDC oCDCoCDCoCByZXR1cm4gKDApOzxicj4NCkBAIC0yMTk5LDggKzIxOTksOCBAQCBhZ2Fpbjo8YnI+ DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBzZW1pZHNbaWRdLnUu c2VtX3Blcm0uZ2lkLDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIHNlbWlkc1tpZF0udS5zZW1fcGVybS5jdWlkLDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIHNlbWlkc1tpZF0udS5zZW1fcGVybS5jZ2lkLDxicj4NCi3C oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoHNlbWlkc1tpZF0udS5zZW1f b3RpbWUsPGJyPg0KLcKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgc2Vt aWRzW2lkXS51LnNlbV9jdGltZSk7PGJyPg0KK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgKGxvbmcpc2VtaWRzW2lkXS51LnNlbV9vdGltZSw8YnI+DQorwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAobG9uZylzZW1pZHNbaWRdLnUuc2VtX2N0 aW1lKTs8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCBmcmVlKHNlbWlkcywgTV9URU1QKTs8YnI+DQrC oCDCoCDCoCDCoCByZXR1cm4gKDApOzxicj4NCkBAIC0yMjU2LDkgKzIyNTYsOSBAQCBhZ2Fpbjo8 YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCBzaG1pZHNbaWRd LnUuc2htX3Blcm0uZ2lkLDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIHNobWlkc1tpZF0udS5zaG1fcGVybS5jdWlkLDxicj4NCsKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHNobWlkc1tpZF0udS5zaG1fcGVybS5jZ2lkLDxicj4N Ci3CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoHNobWlkc1tpZF0udS5z aG1fYXRpbWUsPGJyPg0KLcKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg c2htaWRzW2lkXS51LnNobV9kdGltZSw8YnI+DQotwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqBzaG1pZHNbaWRdLnUuc2htX2N0aW1lLDxicj4NCivCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChsb25nKXNobWlkc1tpZF0udS5zaG1fYXRpbWUs PGJyPg0KK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKGxvbmcpc2ht aWRzW2lkXS51LnNobV9kdGltZSw8YnI+DQorwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAobG9uZylzaG1pZHNbaWRdLnUuc2htX2N0aW1lLDxicj4NCsKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIDAsIDApO8KgIMKgIMKgIC8qIFhYWCByc3Mg JmFtcDsgc3dwIGFyZSBub3Qgc3VwcG9ydGVkICovPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgZnJl ZShzaG1pZHMsIE1fVEVNUCk7PGJyPg0KPC9ibG9ja3F1b3RlPjwvZGl2PjwvZGl2PjwvZGl2Pg0K --000000000000e814320618379619-- From nobody Sun May 12 04:57:19 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcVjD16Gtz5KHWP; Sun, 12 May 2024 04: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 4VcVjD0G7dz4NGm; Sun, 12 May 2024 04:57:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715489840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tgYoz1+kkuxmzBKp8o8uCeCxC7rGhSYu7rk53mMOIQ0=; b=QgbKZn0McNj/LrLqacptgqwggKtkG3wXzLp0lN2yBpQZw9+Nsy1J2SanI6FhdZ2KBPta9A KTIQSdRbn2FLAKGw/d/pnoyXWCJ1EPgDXj6dnmEIApJ478BbuCRQ7gnE4wh3wFU17irNJG N4DlTlsVpjYp/6vmN0NpR1M6fNLxxxwt7Wl5Z/oeB7GMWwNcq4vbUnMSCLFCqa83b2xdX/ Xewb+2f+idnsmzufOeL53lBxt/Gg8qx3YkpPg54LICi+B0LS5WtCSFoXlJuiqVHWCdfR8O C8jmstu7vW+q/2f3KdaMX/WhiwmjGv7bC8knut8haOn/WyitreqnTmRUXqk97Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715489840; a=rsa-sha256; cv=none; b=TaavcnVGWv+P71vvT72OLRQLFW5wb/JEDfk0vviPgBk6pAhEHVpNMYrSqHxHq4KeTo32OD 9xH+0I+c4VjkhpQmX1PxhEDrTIOPC7cySu6p7g9PD8OPYHQyJjwQPJJRmoqMgbgU0+IUX8 3F8wyV2zToSyaMPvsKSrtqqSfQc3u5FqkCSG7lGxclvn0rLA2yekxfXjE/ES5aUklJGhUr CO6INRjEsGPtopjgEkj0VLp5+laITjM8aYgc97uHEp6rFjAMEi3LWvbra9c5dWfB1OeZRo MelyO4eIwAiKoF/eglRvHDVVcMj/MqG5KIYOjoTg8RYAca52pKLqciw9XM9w9A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715489840; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tgYoz1+kkuxmzBKp8o8uCeCxC7rGhSYu7rk53mMOIQ0=; b=jiiVKO7uvKOulCtBU2iAIx8zwBYRWEFkX5R6DDDQ2azEUfw9V66APQkq2Nh+uO0UOlCQdE ZoP0LmRi8y+m95kWh/yG4Be2c2cIMXeksKmToaIyHEtahfJBsmsmWa5xThWn8lKoiIEY24 L1q2gxTLQ8dEwTlq5BPngNrHPhr8WXfpDdluynzekmv+5pCYoswPIFaiReBAlPdKXcm3rm Wu7oycle/aOJlDZI64Esierk+2h5tPIqzdnnFGXI06U3klTygTmxSjUT4ZcUY5yfW6NDgD kT98leotWFiswY/YVsTlvPnWdZ+3HGZLuUExw12wmP4yIoKjsDzyFgL1cOSVfA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcVjC6yhqzqxB; Sun, 12 May 2024 04:57:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 44C4vJ6i090875; Sun, 12 May 2024 04:57:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44C4vJHL090872; Sun, 12 May 2024 04:57:19 GMT (envelope-from git) Date: Sun, 12 May 2024 04:57:19 GMT Message-Id: <202405120457.44C4vJHL090872@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: ee2e36686e84 - main - linprocfs: Really fix time_t type issue List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ee2e36686e846d412deac23344185f4b8a8c0285 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=ee2e36686e846d412deac23344185f4b8a8c0285 commit ee2e36686e846d412deac23344185f4b8a8c0285 Author: Warner Losh AuthorDate: 2024-05-12 04:53:15 +0000 Commit: Warner Losh CommitDate: 2024-05-12 04:53:15 +0000 linprocfs: Really fix time_t type issue The cast to (long) is wrong on all the other 32-bit platforms. (long long) is the correct type on all platforms. Also, use a z modifier for size_t which also fails on 32-bit platforms. Fixes: 02f481a30b82 Sponsored by: Netflix --- sys/compat/linprocfs/linprocfs.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c index aa5af0b3c1c1..dd04adc054db 100644 --- a/sys/compat/linprocfs/linprocfs.c +++ b/sys/compat/linprocfs/linprocfs.c @@ -2133,7 +2133,7 @@ again: for (id = 0; id < msgmni; id++) if (msqids[id].u.msg_qbytes != 0) sbuf_printf(sb, - "%10d %10lu %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10ld %10ld %10ld\n", + "%10d %10lu %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10lld %10lld %10lld\n", (int) msqids[id].u.msg_perm.key, IXSEQ_TO_IPCID(id, msqids[id].u.msg_perm), msqids[id].u.msg_perm.mode, @@ -2145,9 +2145,9 @@ again: msqids[id].u.msg_perm.gid, msqids[id].u.msg_perm.cuid, msqids[id].u.msg_perm.cgid, - (long)msqids[id].u.msg_stime, - (long)msqids[id].u.msg_rtime, - (long)msqids[id].u.msg_ctime); + (long long)msqids[id].u.msg_stime, + (long long)msqids[id].u.msg_rtime, + (long long)msqids[id].u.msg_ctime); free(msqids, M_TEMP); return (0); @@ -2190,7 +2190,7 @@ again: for (id = 0; id < semmni; id++) if ((semids[id].u.sem_perm.mode & SEM_ALLOC) != 0) sbuf_printf(sb, - "%10d %10lu %4o %10u %5u %5u %5u %5u %10ld %10ld\n", + "%10d %10lu %4o %10u %5u %5u %5u %5u %10lld %10lld\n", (int) semids[id].u.sem_perm.key, IXSEQ_TO_IPCID(id, semids[id].u.sem_perm), semids[id].u.sem_perm.mode, @@ -2199,8 +2199,8 @@ again: semids[id].u.sem_perm.gid, semids[id].u.sem_perm.cuid, semids[id].u.sem_perm.cgid, - (long)semids[id].u.sem_otime, - (long)semids[id].u.sem_ctime); + (long long)semids[id].u.sem_otime, + (long long)semids[id].u.sem_ctime); free(semids, M_TEMP); return (0); @@ -2244,7 +2244,7 @@ again: for (id = 0; id < shmmni; id++) if ((shmids[id].u.shm_perm.mode & SHMSEG_ALLOCATED) != 0) sbuf_printf(sb, - "%10d %10lu %4o %21lu %5u %5u %5u %5u %5u %5u %5u %10ld %10ld %10ld %21d %21d\n", + "%10d %10lu %4o %21zu %5u %5u %5u %5u %5u %5u %5u %10lld %10lld %10lld %21d %21d\n", (int) shmids[id].u.shm_perm.key, IXSEQ_TO_IPCID(id, shmids[id].u.shm_perm), shmids[id].u.shm_perm.mode, @@ -2256,9 +2256,9 @@ again: shmids[id].u.shm_perm.gid, shmids[id].u.shm_perm.cuid, shmids[id].u.shm_perm.cgid, - (long)shmids[id].u.shm_atime, - (long)shmids[id].u.shm_dtime, - (long)shmids[id].u.shm_ctime, + (long long)shmids[id].u.shm_atime, + (long long)shmids[id].u.shm_dtime, + (long long)shmids[id].u.shm_ctime, 0, 0); /* XXX rss & swp are not supported */ free(shmids, M_TEMP); From nobody Sun May 12 07:30:28 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcZ605Vnrz5KTnM; Sun, 12 May 2024 07:30:32 +0000 (UTC) (envelope-from SRS0=jN6w=MP=klop.ws=ronald-lists@realworks.nl) Received: from smtp-relay-int.realworks.nl (smtp-relay-int.realworks.nl [194.109.157.24]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4VcZ603B8mz4Zsb; Sun, 12 May 2024 07:30:32 +0000 (UTC) (envelope-from SRS0=jN6w=MP=klop.ws=ronald-lists@realworks.nl) Authentication-Results: mx1.freebsd.org; none Date: Sun, 12 May 2024 09:30:28 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=klop.ws; s=rw2; t=1715499029; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to; bh=QucQMg2Zyz67OLFgYCgHfO/x8bGM6QGEF57RciLuUMo=; b=bAVkZ8G3ktjkaZSV/xMFriek2NVPNxMCDTOM6mc5oNFdcr/GLlADqvO7EGuB5KM/vM312T ibGndchba01ItgrB0DUG8cMGluEmOZQnUE/rj7DrpxeJJ4MRJXQBBCdnB06uCIU+DjH7DG oIFx67xPqGR6/vNblmzfbw0QuBlidWwT9Zo/GNs87vWOR0kU3/yREnwRbOqur8sq0TQuRa XCeigNb2eR97EK00nNX7Jg0gUvZnuCQbwcSRWQYUxtxHTs53K+NbH7s/NlXcwIyNbT4eBN z7/ROC7Ln14aRNoVOow//HOP5CiNjUDQF6oGsOvloB1POlxCwF71zvx0p6FRMQ== From: Ronald Klop To: Warner Losh Cc: dev-commits-src-main@FreeBSD.org, src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org Message-ID: <1570892010.7412.1715499028011@localhost> In-Reply-To: <202405111916.44BJGJ2I010959@gitrepo.freebsd.org> Subject: Re: git: 9bcc1b18c119 - main - /bin/rmdir: Exit with status 2 for invalid arguments List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_7411_631143796.1715499028007" X-Mailer: Realworks (701.27) Importance: Normal X-Priority: 3 (Normal) X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:3265, ipnet:194.109.0.0/16, country:NL] X-Rspamd-Queue-Id: 4VcZ603B8mz4Zsb ------=_Part_7411_631143796.1715499028007 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Wouldn=E2=80=99t EX_USAGE fit really well? https://man.freebsd.org/cgi/man.cgi?query=3Dsysexits&manpath=3DFreeBSD+4.3-= RELEASE Regards, Ronald Van: Warner Losh Datum: 11 mei 2024 21:16 Aan: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commi= ts-src-main@FreeBSD.org Onderwerp: git: 9bcc1b18c119 - main - /bin/rmdir: Exit with status 2 for i= nvalid arguments >=20 >=20 > The branch main has been updated by imp: >=20 > URL: https://cgit.FreeBSD.org/src/commit/?id=3D9bcc1b18c119148e4455e548c9= 0b2bc9cef16d1b >=20 > commit 9bcc1b18c119148e4455e548c90b2bc9cef16d1b > Author: Henrich Hartzer=20 > AuthorDate: 2024-05-10 17:53:49 +0000 > Commit: Warner Losh=20 > CommitDate: 2024-05-11 19:13:28 +0000 >=20 > /bin/rmdir: Exit with status 2 for invalid arguments > =20 > PR: 277677 > =20 > Signed-off-by: Henrich Hartzer=20 > Reviewed by: imp > Pull Request: https://github.com/freebsd/freebsd-src/pull/1161 > --- > bin/rmdir/rmdir.1 | 15 ++++++++------- > bin/rmdir/rmdir.c | 2 +- > bin/rmdir/tests/rmdir_test.sh | 6 +++--- > 3 files changed, 12 insertions(+), 11 deletions(-) >=20 > diff --git a/bin/rmdir/rmdir.1 b/bin/rmdir/rmdir.1 > index 87ca1f1547f0..eb23c605050c 100644 > --- a/bin/rmdir/rmdir.1 > +++ b/bin/rmdir/rmdir.1 > @@ -74,14 +74,14 @@ The > .Nm > utility exits with one of the following values: > .Bl -tag -width indent > -.It Li 0 > -Each directory entry specified by a > +.It Er 0 > +Each > .Ar directory > -operand > -referred to an empty directory and was removed > -successfully. > -.It Li >0 > -An error occurred. > +referred to an empty directory and was removed successfully. > +.It Er 1 > +An error occurred while attempting to remove one or more directories. > +.It Er 2 > +Invalid arguments. > .El > .Sh EXAMPLES > Remove the directory > @@ -97,6 +97,7 @@ stopping at the first non-empty directory (if any): > .Dl $ rmdir -p cow/horse/monkey > .Sh SEE ALSO > .Xr rm 1 > +.Xr rmdir 2 > .Sh STANDARDS > The > .Nm > diff --git a/bin/rmdir/rmdir.c b/bin/rmdir/rmdir.c > index c5d3db831309..0a495018495c 100644 > --- a/bin/rmdir/rmdir.c > +++ b/bin/rmdir/rmdir.c > @@ -112,5 +112,5 @@ usage(void) > { > =20 > (void)fprintf(stderr, "usage: rmdir [-pv] directory ..."); > - exit(1); > + exit(2); > } > diff --git a/bin/rmdir/tests/rmdir_test.sh b/bin/rmdir/tests/rmdir_test.s= h > index d443849258b6..ba80ac6204be 100644 > --- a/bin/rmdir/tests/rmdir_test.sh > +++ b/bin/rmdir/tests/rmdir_test.sh > @@ -35,8 +35,8 @@ invalid_usage_head() > =20 > invalid_usage_body() > { > - atf_check -s not-exit:0 -e match:"$usage_output" rmdir -p > - atf_check -s not-exit:0 -e match:"$usage_output" rmdir -v > + atf_check -s exit:2 -e match:"$usage_output" rmdir -p > + atf_check -s exit:2 -e match:"$usage_output" rmdir -v > } > =20 > atf_test_case no_arguments > @@ -47,7 +47,7 @@ no_arguments_head() > =20 > no_arguments_body() > { > - atf_check -s not-exit:0 -e match:"$usage_output" rmdir > + atf_check -s exit:2 -e match:"$usage_output" rmdir > } > =20 > atf_init_test_cases() >=20 >=20 >=20 >=20 >=20 ------=_Part_7411_631143796.1715499028007 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable Wouldn=E2=80=99t EX_USAGE fit really well?

Regards,
Ronald

Van:= Warner Losh <imp@FreeBSD.org>
Datum: 11= mei 2024 21:16
Aan: src-committers@FreeBSD.org, dev-co= mmits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Onde= rwerp: git: 9bcc1b18c119 - main - /bin/rmdir: Exit with status 2 = for invalid arguments

The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=3D9bcc1b18= c119148e4455e548c90b2bc9cef16d1b

commit 9bcc1b18c119148e4455e548c90b2bc9cef16d1b
Author:     Henrich Hartzer AuthorDate: 2024-05-10 17:53:49 +0000
Commit:     Warner Losh
CommitDate: 2024-05-11 19:13:28 +0000

    /bin/rmdir: Exit with status 2 for invalid argument= s
    
    PR: 277677
    
    Signed-off-by: Henrich Hartzer
    Reviewed by: imp
    Pull Request: https://github.com/freebsd/freebsd-src/pull/1161
---
 bin/rmdir/rmdir.1         &nb= sp;   | 15 ++++++++-------
 bin/rmdir/rmdir.c         &nb= sp;   |  2 +-
 bin/rmdir/tests/rmdir_test.sh |  6 +++---
 3 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/bin/rmdir/rmdir.1 b/bin/rmdir/rmdir.1
index 87ca1f1547f0..eb23c605050c 100644
--- a/bin/rmdir/rmdir.1
+++ b/bin/rmdir/rmdir.1
@@ -74,14 +74,14 @@ The
 .Nm
 utility exits with one of the following values:
 .Bl -tag -width indent
-.It Li 0
-Each directory entry specified by a
+.It Er 0
+Each
 .Ar directory
-operand
-referred to an empty directory and was removed
-successfully.
-.It Li >0
-An error occurred.
+referred to an empty directory and was removed successfully.
+.It Er 1
+An error occurred while attempting to remove one or more directories.
+.It Er 2
+Invalid arguments.
 .El
 .Sh EXAMPLES
 Remove the directory
@@ -97,6 +97,7 @@ stopping at the first non-empty directory (if any):
 .Dl $ rmdir -p cow/horse/monkey
 .Sh SEE ALSO
 .Xr rm 1
+.Xr rmdir 2
 .Sh STANDARDS
 The
 .Nm
diff --git a/bin/rmdir/rmdir.c b/bin/rmdir/rmdir.c
index c5d3db831309..0a495018495c 100644
--- a/bin/rmdir/rmdir.c
+++ b/bin/rmdir/rmdir.c
@@ -112,5 +112,5 @@ usage(void)
 {
 
    (void)fprintf(stderr, "usage: rmdir [-pv] directory= ... ");
-   exit(1);
+   exit(2);
 }
diff --git a/bin/rmdir/tests/rmdir_test.sh b/bin/rmdir/tests/rmdir_test.sh<= br> index d443849258b6..ba80ac6204be 100644
--- a/bin/rmdir/tests/rmdir_test.sh
+++ b/bin/rmdir/tests/rmdir_test.sh
@@ -35,8 +35,8 @@ invalid_usage_head()
 
 invalid_usage_body()
 {
-   atf_check -s not-exit:0 -e match:"$usage_output" rmdir -p
-   atf_check -s not-exit:0 -e match:"$usage_output" rmdir -v
+   atf_check -s exit:2 -e match:"$usage_output" rmdir -p
+   atf_check -s exit:2 -e match:"$usage_output" rmdir -v
 }
 
 atf_test_case no_arguments
@@ -47,7 +47,7 @@ no_arguments_head()
 
 no_arguments_body()
 {
-   atf_check -s not-exit:0 -e match:"$usage_output" rmdir
+   atf_check -s exit:2 -e match:"$usage_output" rmdir
 }
 
 atf_init_test_cases()

<= !-- TextPlainViewer -->



------=_Part_7411_631143796.1715499028007-- From nobody Sun May 12 08:54:33 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vcbyx614Hz5KcMV; Sun, 12 May 2024 08:54: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 4Vcbyx5WlQz4jby; Sun, 12 May 2024 08:54:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715504073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zZ8Dw9HHpHAhqhadvgkLRrODVZQjvxCYNK0HBdThZ8Q=; b=qbOQe/fWg9QLCafB9J1/5hGLJfZSebUn/0GKM3mgbg4N851VMlG1qEkYu38Ie7liwAgx7t HYXEds3BGEe78MLKhegrTxnpzlbz5ZPzaE/2Rhmu6TKSNkY1iKQmnq7FJW3owBx4sE2bue 0eVJIb6ImcxjNBUjZ6U8FaghZtrVFUG7JlUPSde1yUE/S6FOd6owi8/CjyHcIX9rfSr5DP UV1J6hGyLHVSumyYK76ZWidfzmYTvdc9V/yOcpnriSKFbD8SfwOAjqJ/kGc560mvG5htiN 8pLAHjrorIs1YBOu3ibpcIYZBsNVQe+r0WkhupOdhKeWgGy7Hpc9lFLwZxXYcA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715504073; a=rsa-sha256; cv=none; b=rpcD/u+q8rdafPcRkNNjTTuphKo4fdIxAoDX7C4GagMZDO+rOwDNrQ6Dl1pY3FU8xuAWGB MlUnBqPQGHrxp630kUbCHXR82AlezX0nxLT5x45Z/hw104Zh+qaL0tn+ybD0T1vCXGyjCR M/GCWJF3PEMDltDWpFjbmoBvFrGRNlaIuLZad39WANH62iWgNET8m4WAR+yAPCmFhjnTVy v4PfncTfCACZENOyursYH+7q2TEpjBHKm9MQpw0Ze07RZPul5Ox6Zp+KOu8Qtm+IdfehC7 N55lMB5fXORMIYx734G7PlauiXIR7aDiFuUY6snxtdygcuzIrdeBPj+VKzJ+Pg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715504073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zZ8Dw9HHpHAhqhadvgkLRrODVZQjvxCYNK0HBdThZ8Q=; b=CbNHbCHHen7iz65xI1blKtBjrNMA1KhWHRmUltuPC9X7pOMvpomCJoNB+Yl/v9d0J3bYFM SpfA7eO5DxHRdpIrNFHCisTQMAbpczxx7OlI+Q1nfAmVRDfuVDV5iV6jsS/DYwT2XBrqIs Vm1iq1dBX6Khi1yu70xhxa2NzHyD1MMuMya093DltiZV3KRE5GyfJXUlmtlFHbaSPVVTil SctV3qL/9MvzCeyFkkUpw4KGKfSgtG1aRrOL08kHJysr1P4PgkwwDbsG4NxDq8IsQe5XAu BWueXbikESx3rUT0iUfY5JvQBQ2/cnqeV9YJMi2blXk5+wK6LPWxxFtLaONzbQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vcbyx574yzy7X; Sun, 12 May 2024 08:54: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 44C8sXoT096572; Sun, 12 May 2024 08:54:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44C8sX5M096569; Sun, 12 May 2024 08:54:33 GMT (envelope-from git) Date: Sun, 12 May 2024 08:54:33 GMT Message-Id: <202405120854.44C8sX5M096569@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gordon Bergling Subject: git: 78e4dbc34559 - main - ipfw: Fix a typo in a source code comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 78e4dbc34559f7b18ea85cafd6663db4e6d54af9 Auto-Submitted: auto-generated The branch main has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=78e4dbc34559f7b18ea85cafd6663db4e6d54af9 commit 78e4dbc34559f7b18ea85cafd6663db4e6d54af9 Author: Gordon Bergling AuthorDate: 2024-05-12 08:53:40 +0000 Commit: Gordon Bergling CommitDate: 2024-05-12 08:53:40 +0000 ipfw: Fix a typo in a source code comment - s/defaul/default/ MFC after: 3 days --- sys/netinet/ip_fw.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/ip_fw.h b/sys/netinet/ip_fw.h index 2b59e46b5bcc..937dc8fbbbc2 100644 --- a/sys/netinet/ip_fw.h +++ b/sys/netinet/ip_fw.h @@ -979,7 +979,7 @@ typedef struct _ipfw_range_tlv { #define IPFW_RCFLAG_USER (IPFW_RCFLAG_RANGE | IPFW_RCFLAG_ALL | \ IPFW_RCFLAG_SET | IPFW_RCFLAG_DYNAMIC) /* Internally used flags */ -#define IPFW_RCFLAG_DEFAULT 0x0100 /* Do not skip defaul rule */ +#define IPFW_RCFLAG_DEFAULT 0x0100 /* Do not skip default rule */ typedef struct _ipfw_ta_tinfo { uint32_t flags; /* Format flags */ From nobody Sun May 12 11:15:05 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vcg5N58dQz5JLYq for ; Sun, 12 May 2024 11:15:20 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com [IPv6:2a00:1450:4864:20::62b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Vcg5N0PZWz3xhr for ; Sun, 12 May 2024 11:15:20 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x62b.google.com with SMTP id a640c23a62f3a-a59ab4f60a6so724885566b.0 for ; Sun, 12 May 2024 04:15:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1715512518; x=1716117318; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=c9+1iTCwsCXAPpo4KC6qOGiRWKP5uw6B05NMpqKxAKw=; b=SJadgLHCbvne69ohiO6OQQnHmWGRA3aj8UY0OpFwNxaZy+WvEIAAf8JbKJ1K9KI4fY /kFe+w9n8LebBN8MpeSRndIzHvtx2k3NSVmiPKFHdQEuDMP6pQJAaXuYkVvCLT2Lx/Xo Qcg+ZKR5nJKm1mW9n1q+muqJtc/OCb/Ni74i3BiIPgHYZhZ9bc7JCcorKE1hl3PSFCGq ULEURi9B7eoqWCNFReZAOZCP/klP/Lbt3wjUXHd9KtYKR5abmG4eRJRxspDYFyOfX1hx 8ZA3zXHT+gxurqEvOjDDB5EHLvjX9YLi5eCH2BwZFOEjMSeXJy1445yEglgBc8vlZSLJ EGnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715512518; x=1716117318; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=c9+1iTCwsCXAPpo4KC6qOGiRWKP5uw6B05NMpqKxAKw=; b=hAycNbXG6pS1STnwLMqGClLzvL2knt8MyefYeaXzoK41CuJ+Fu1Dag/5wJ4hp+7tat UDLZiwuHex2JJ45J6EOMJwqEJIbTiXem81xQvgb5njH2xO3/UUDR30ePfgNuUc5CTTfW SW0Bc7/u5iBvLBS5hNvJ7izF3qD77DQvDzLoYG0JwFFfjF3zvUlJd1lne9RVX8ScxTPE kqewycOBwvOGJzELP8naBXxtkMsmjCcpdiG5NDehENepV8UwWxhpJKZxAMqoDjUg599O cHSS5MBchYmtcZjjzvtXfJJdMUOgZFr8KDWjYR16v+V1sjkJY0FF+7EbcWzTp2qMDRmX +4hg== X-Forwarded-Encrypted: i=1; AJvYcCUDK4CUO+8Vox1LFhsSJbeFZyYR9ViDoO3IZSbs3+WQX/b2O30QSHSemFaKALuL1G4VmWhCVu0ac9yX327k0qLT7/FGpRVx9MhDUsrAqfwp6g== X-Gm-Message-State: AOJu0YxwYn8jeaPvBDyZB+yfldljyMcsW2pKbgTzNsx+jAfwaaJgl2gd B9Pe6aVH9ECkVPDhheMDxlomYWtZIResS0+527GX8qQv/dh40qfl/Np4ukwiotmKQ/BHC02avJx rHqYIU+WEtKk9zSBK6TZL3NYnwrC7glZI2B/94WgxtWwzY1SB X-Google-Smtp-Source: AGHT+IEdeyWRtDeOMJBPlWVN1S8MeQDpunSRpFVrfFHg9I+yDpx3fd97bwKmy7eGR/JxOgjmOqE5whapGQawoZyOIwE= X-Received: by 2002:a17:906:f296:b0:a59:cb29:3fa8 with SMTP id a640c23a62f3a-a5a2d53adbbmr769899566b.14.1715512517566; Sun, 12 May 2024 04:15:17 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202405111916.44BJGJ2I010959@gitrepo.freebsd.org> <1570892010.7412.1715499028011@localhost> In-Reply-To: <1570892010.7412.1715499028011@localhost> From: Warner Losh Date: Sun, 12 May 2024 05:15:05 -0600 Message-ID: Subject: Re: git: 9bcc1b18c119 - main - /bin/rmdir: Exit with status 2 for invalid arguments To: Ronald Klop Cc: Warner Losh , "" , src-committers , "" Content-Type: multipart/alternative; boundary="00000000000037c1c206183fe2f1" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4Vcg5N0PZWz3xhr --00000000000037c1c206183fe2f1 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, May 12, 2024, 1:30=E2=80=AFAM Ronald Klop wr= ote: > Wouldn=E2=80=99t EX_USAGE fit really well? > > > https://man.freebsd.org/cgi/man.cgi?query=3Dsysexits&manpath=3DFreeBSD+4.= 3-RELEASE > Read the pull request. Warner > Regards, > Ronald > > *Van:* Warner Losh > *Datum:* 11 mei 2024 21:16 > *Aan:* src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, > dev-commits-src-main@FreeBSD.org > *Onderwerp:* git: 9bcc1b18c119 - main - /bin/rmdir: Exit with status 2 > for invalid arguments > > The branch main has been updated by imp: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D9bcc1b18c119148e4455e548c90b2bc= 9cef16d1b > > commit 9bcc1b18c119148e4455e548c90b2bc9cef16d1b > Author: Henrich Hartzer > AuthorDate: 2024-05-10 17:53:49 +0000 > Commit: Warner Losh > CommitDate: 2024-05-11 19:13:28 +0000 > > /bin/rmdir: Exit with status 2 for invalid arguments > > PR: 277677 > > Signed-off-by: Henrich Hartzer > Reviewed by: imp > Pull Request: https://github.com/freebsd/freebsd-src/pull/1161 > --- > bin/rmdir/rmdir.1 | 15 ++++++++------- > bin/rmdir/rmdir.c | 2 +- > bin/rmdir/tests/rmdir_test.sh | 6 +++--- > 3 files changed, 12 insertions(+), 11 deletions(-) > > diff --git a/bin/rmdir/rmdir.1 b/bin/rmdir/rmdir.1 > index 87ca1f1547f0..eb23c605050c 100644 > --- a/bin/rmdir/rmdir.1 > +++ b/bin/rmdir/rmdir.1 > @@ -74,14 +74,14 @@ The > .Nm > utility exits with one of the following values: > .Bl -tag -width indent > -.It Li 0 > -Each directory entry specified by a > +.It Er 0 > +Each > .Ar directory > -operand > -referred to an empty directory and was removed > -successfully. > -.It Li >0 > -An error occurred. > +referred to an empty directory and was removed successfully. > +.It Er 1 > +An error occurred while attempting to remove one or more directories. > +.It Er 2 > +Invalid arguments. > .El > .Sh EXAMPLES > Remove the directory > @@ -97,6 +97,7 @@ stopping at the first non-empty directory (if any): > .Dl $ rmdir -p cow/horse/monkey > .Sh SEE ALSO > .Xr rm 1 > +.Xr rmdir 2 > .Sh STANDARDS > The > .Nm > diff --git a/bin/rmdir/rmdir.c b/bin/rmdir/rmdir.c > index c5d3db831309..0a495018495c 100644 > --- a/bin/rmdir/rmdir.c > +++ b/bin/rmdir/rmdir.c > @@ -112,5 +112,5 @@ usage(void) > { > > (void)fprintf(stderr, "usage: rmdir [-pv] directory ... "); > - exit(1); > + exit(2); > } > diff --git a/bin/rmdir/tests/rmdir_test.sh b/bin/rmdir/tests/rmdir_test.s= h > index d443849258b6..ba80ac6204be 100644 > --- a/bin/rmdir/tests/rmdir_test.sh > +++ b/bin/rmdir/tests/rmdir_test.sh > @@ -35,8 +35,8 @@ invalid_usage_head() > > invalid_usage_body() > { > - atf_check -s not-exit:0 -e match:"$usage_output" rmdir -p > - atf_check -s not-exit:0 -e match:"$usage_output" rmdir -v > + atf_check -s exit:2 -e match:"$usage_output" rmdir -p > + atf_check -s exit:2 -e match:"$usage_output" rmdir -v > } > > atf_test_case no_arguments > @@ -47,7 +47,7 @@ no_arguments_head() > > no_arguments_body() > { > - atf_check -s not-exit:0 -e match:"$usage_output" rmdir > + atf_check -s exit:2 -e match:"$usage_output" rmdir > } > > atf_init_test_cases() > > ------------------------------ > > > > > --00000000000037c1c206183fe2f1 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Read the pull request.

Warner=C2=A0


Regards,
Ronald

Van: Warne= r Losh <imp@FreeBSD.org>
Datum: 11 mei 2024 21:16=
Aan: src-committers@FreeBSD.org, dev-commits-src-all@F= reeBSD.org, dev-commits-src-main@FreeBSD.org
Onderwerp:= git: 9bcc1b18c119 - main - /bin/rmdir: Exit with status 2 for invalid arg= uments

The branch main has been updated by i= mp:

URL: https://cgit.= FreeBSD.org/src/commit/?id=3D9bcc1b18c119148e4455e548c90b2bc9cef16d1b
commit 9bcc1b18c119148e4455e548c90b2bc9cef16d1b
Author: =C2=A0=C2=A0=C2=A0=C2=A0Henrich Hartzer
AuthorDate: 2024-05-10 17:53:49 +0000
Commit: =C2=A0=C2=A0=C2=A0=C2=A0Warner Losh
CommitDate: 2024-05-11 19:13:28 +0000

=C2=A0=C2=A0=C2=A0=C2=A0/bin/rmdir: Exit with status 2 for invalid argument= s
=C2=A0=C2=A0=C2=A0=C2=A0
=C2=A0=C2=A0=C2=A0=C2=A0PR: 277677
=C2=A0=C2=A0=C2=A0=C2=A0
=C2=A0=C2=A0=C2=A0=C2=A0Signed-off-by: Henrich Hartzer
=C2=A0=C2=A0=C2=A0=C2=A0Reviewed by: imp
=C2=A0=C2=A0=C2=A0=C2=A0Pull Request: https://github= .com/freebsd/freebsd-src/pull/1161
---
=C2=A0bin/rmdir/rmdir.1 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0| 15 ++++++++-------
=C2=A0bin/rmdir/rmdir.c =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0| =C2=A02 +-
=C2=A0bin/rmdir/tests/rmdir_test.sh | =C2=A06 +++---
=C2=A03 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/bin/rmdir/rmdir.1 b/bin/rmdir/rmdir.1
index 87ca1f1547f0..eb23c605050c 100644
--- a/bin/rmdir/rmdir.1
+++ b/bin/rmdir/rmdir.1
@@ -74,14 +74,14 @@ The
=C2=A0.Nm
=C2=A0utility exits with one of the following values:
=C2=A0.Bl -tag -width indent
-.It Li 0
-Each directory entry specified by a
+.It Er 0
+Each
=C2=A0.Ar directory
-operand
-referred to an empty directory and was removed
-successfully.
-.It Li >0
-An error occurred.
+referred to an empty directory and was removed successfully.
+.It Er 1
+An error occurred while attempting to remove one or more directories.
+.It Er 2
+Invalid arguments.
=C2=A0.El
=C2=A0.Sh EXAMPLES
=C2=A0Remove the directory
@@ -97,6 +97,7 @@ stopping at the first non-empty directory (if any):
=C2=A0.Dl $ rmdir -p cow/horse/monkey
=C2=A0.Sh SEE ALSO
=C2=A0.Xr rm 1
+.Xr rmdir 2
=C2=A0.Sh STANDARDS
=C2=A0The
=C2=A0.Nm
diff --git a/bin/rmdir/rmdir.c b/bin/rmdir/rmdir.c
index c5d3db831309..0a495018495c 100644
--- a/bin/rmdir/rmdir.c
+++ b/bin/rmdir/rmdir.c
@@ -112,5 +112,5 @@ usage(void)
=C2=A0{
=C2=A0
=C2=A0=C2=A0=C2=A0=C2=A0(void)fprintf(stderr, "usage: rmdir [-pv] dire= ctory ... ");
- =C2=A0=C2=A0exit(1);
+ =C2=A0=C2=A0exit(2);
=C2=A0}
diff --git a/bin/rmdir/tests/rmdir_test.sh b/bin/rmdir/tests/rmdir_test.sh<= br> index d443849258b6..ba80ac6204be 100644
--- a/bin/rmdir/tests/rmdir_test.sh
+++ b/bin/rmdir/tests/rmdir_test.sh
@@ -35,8 +35,8 @@ invalid_usage_head()
=C2=A0
=C2=A0invalid_usage_body()
=C2=A0{
- =C2=A0=C2=A0atf_check -s not-exit:0 -e match:"$usage_output" rm= dir -p
- =C2=A0=C2=A0atf_check -s not-exit:0 -e match:"$usage_output" rm= dir -v
+ =C2=A0=C2=A0atf_check -s exit:2 -e match:"$usage_output" rmdir = -p
+ =C2=A0=C2=A0atf_check -s exit:2 -e match:"$usage_output" rmdir = -v
=C2=A0}
=C2=A0
=C2=A0atf_test_case no_arguments
@@ -47,7 +47,7 @@ no_arguments_head()
=C2=A0
=C2=A0no_arguments_body()
=C2=A0{
- =C2=A0=C2=A0atf_check -s not-exit:0 -e match:"$usage_output" rm= dir
+ =C2=A0=C2=A0atf_check -s exit:2 -e match:"$usage_output" rmdir<= br> =C2=A0}
=C2=A0
=C2=A0atf_init_test_cases()





--00000000000037c1c206183fe2f1-- From nobody Sun May 12 11:35:48 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcgYJ0tTZz5JMvK; Sun, 12 May 2024 11:36:04 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4VcgYH3F7nz40rT; Sun, 12 May 2024 11:36:03 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 44CBZmcD067471; Sun, 12 May 2024 14:35:51 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 44CBZmcD067471 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 44CBZmN8067470; Sun, 12 May 2024 14:35:48 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 12 May 2024 14:35:48 +0300 From: Konstantin Belousov To: Warner Losh Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 099a81a4173b - main - linprocfs: Add support for proc/sysvipc/{msg,sem,shm} Message-ID: References: <202405111939.44BJdIE5045793@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202405111939.44BJdIE5045793@gitrepo.freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4VcgYH3F7nz40rT On Sat, May 11, 2024 at 07:39:18PM +0000, Warner Losh wrote: > The branch main has been updated by imp: > > URL: https://cgit.FreeBSD.org/src/commit/?id=099a81a4173bc5b121e50d4e27ea5fafdda8475b > > commit 099a81a4173bc5b121e50d4e27ea5fafdda8475b > Author: Ricardo Branco > AuthorDate: 2024-05-04 13:38:20 +0000 > Commit: Warner Losh > CommitDate: 2024-05-11 19:37:47 +0000 > > linprocfs: Add support for proc/sysvipc/{msg,sem,shm} > > Signed-off-by: Ricardo Branco > Reviewed by: imp > Pull Request: https://github.com/freebsd/freebsd-src/pull/1218 > --- > sys/compat/linprocfs/linprocfs.c | 182 +++++++++++++++++++++++++++++++++++++++ > 1 file changed, 182 insertions(+) > > diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c > index 391d5f679ee5..a877d4065c18 100644 > --- a/sys/compat/linprocfs/linprocfs.c > +++ b/sys/compat/linprocfs/linprocfs.c > @@ -126,6 +126,9 @@ > #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* pages to kbytes */ > #define TV2J(x) ((x)->tv_sec * 100UL + (x)->tv_usec / 10000) > > +/* Value defined in sys/kern/sysv_shm.c */ > +#define SHMSEG_ALLOCATED 0x0800 > + > /** > * @brief Mapping of ki_stat in struct kinfo_proc to the linux state > * > @@ -2092,6 +2095,176 @@ linprocfs_domax_map_cnt(PFS_FILL_ARGS) > return (0); > } > > +/* > + * Filler function for proc/sysvipc/msg > + */ > +static int > +linprocfs_dosysvipc_msg(PFS_FILL_ARGS) > +{ > + struct msqid_kernel *msqids; > + u_long id, msgmni; > + size_t sz; > + int error; > + > + sbuf_printf(sb, > + "%10s %10s %4s %10s %10s %5s %5s %5s %5s %5s %5s %10s %10s %10s\n", > + "key", "msqid", "perms", "cbytes", "qnum", "lspid", "lrpid", > + "uid", "gid", "cuid", "cgid", "stime", "rtime", "ctime"); > + > +again: > + msgmni = msginfo.msgmni; > + sz = sizeof(struct msqid_kernel) * msgmni; > + msqids = malloc(sz, M_TEMP, M_NOWAIT); Why M_NOWAIT? What does prevent us from waiting there? > + if (msqids == NULL) > + return (ENOMEM); > + if (msgmni != msginfo.msgmni) { What prevents msginfo.msgmni from changing again? Otherwise, why this check is needed? (Same questions for other two similar places trimmed below). From nobody Sun May 12 11:37:11 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcgZk36j3z5JN89; Sun, 12 May 2024 11:37:18 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4VcgZk156Tz412d; Sun, 12 May 2024 11:37:18 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 44CBbBLn067515; Sun, 12 May 2024 14:37:14 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 44CBbBLn067515 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 44CBbBYo067514; Sun, 12 May 2024 14:37:11 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 12 May 2024 14:37:11 +0300 From: Konstantin Belousov To: Warner Losh Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: ee2e36686e84 - main - linprocfs: Really fix time_t type issue Message-ID: References: <202405120457.44C4vJHL090872@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202405120457.44C4vJHL090872@gitrepo.freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4VcgZk156Tz412d On Sun, May 12, 2024 at 04:57:19AM +0000, Warner Losh wrote: > The branch main has been updated by imp: > > URL: https://cgit.FreeBSD.org/src/commit/?id=ee2e36686e846d412deac23344185f4b8a8c0285 > > commit ee2e36686e846d412deac23344185f4b8a8c0285 > Author: Warner Losh > AuthorDate: 2024-05-12 04:53:15 +0000 > Commit: Warner Losh > CommitDate: 2024-05-12 04:53:15 +0000 > > linprocfs: Really fix time_t type issue > > The cast to (long) is wrong on all the other 32-bit platforms. (long > long) is the correct type on all platforms. Also, use a z modifier for > size_t which also fails on 32-bit platforms. > > Fixes: 02f481a30b82 > Sponsored by: Netflix > --- > sys/compat/linprocfs/linprocfs.c | 22 +++++++++++----------- > 1 file changed, 11 insertions(+), 11 deletions(-) > > diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c > index aa5af0b3c1c1..dd04adc054db 100644 > --- a/sys/compat/linprocfs/linprocfs.c > +++ b/sys/compat/linprocfs/linprocfs.c > @@ -2133,7 +2133,7 @@ again: > for (id = 0; id < msgmni; id++) > if (msqids[id].u.msg_qbytes != 0) > sbuf_printf(sb, > - "%10d %10lu %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10ld %10ld %10ld\n", > + "%10d %10lu %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10lld %10lld %10lld\n", > (int) msqids[id].u.msg_perm.key, > IXSEQ_TO_IPCID(id, msqids[id].u.msg_perm), > msqids[id].u.msg_perm.mode, The canonical and bde' approved way to print integrals which size if MD is to use %jd format modifier and cast to intmax_t. From nobody Sun May 12 15:23:34 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vcmbp535Bz5KCN1; Sun, 12 May 2024 15:23: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 4Vcmbp4FRVz4KT3; Sun, 12 May 2024 15:23:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715527414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zKhQI2tWMoYaAEWEFt+PScGk5ZOPuUbq1jEDH/QPssM=; b=GYssMYZEpYpS0RhJDwkF1KK57LOVemWg2ijsz7mGaByjGzj3Zj4aBnfU0wYxbnZC2s/xsQ N0KlpuNtVYGK0oIUA4qIC+VDIrutB9COiFQTwF4PBPjeWxhaBb2PCaZLlWjj1HnPJ1Fiw5 S9DSSRet/DdhfR3wyfkN1WCjHhzSSBT32NRYG51GQ9XCQ5E4AcZxzyfl/DJLciU30Q5cEy 9sMmvzTVYh6xrn9usrc3uY3B6v/KicsdZwD+IqXdsLi7UEA4zje9Wg5EubI2LxTFeNrE8z B0humL1JB75IxjI3hXd9+cELUX6VwlypzqfdFsitzGCF0smMuimP2Sj3SxHLMw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715527414; a=rsa-sha256; cv=none; b=Qpgoftg/3hixBNn1UzKSEppEISlfTB7dsbozfazawW4ejx5uBHaZLgItbdBkycV+bthaMQ OitaVmfcHvAYjFUyBZYvgzsE1TxkMSk2SRJSaKj02XVk27U1/M8SpZhgtJPE+F7KQKP0pr LBoKPescedDoYZrnFrJbWCwUucG2TzS1zFbv7kHkT2naYuhOKRM386nYR5Xppafk++Bxhi A+V3gDuVBILiQzeSimU8aLgZIOmu+gE7Uv1yRlYiR6LMkL0l/lFnaq63elC0iyLPTS0H5Y TBYGJonr5xCna19pOT7s1n9K4EUl0OZnC1NyKgHMKxK4eLhKKUUqy5SuuPBmIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715527414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zKhQI2tWMoYaAEWEFt+PScGk5ZOPuUbq1jEDH/QPssM=; b=I0A09SrSWvFy1Xo8kzM3h+5F6ZsiGxrWBDt8jnOleuHsf0T5mxPHjhJEx5ZSyu5LZsdPYz QGYT7hjtTneRNIe/e70JnOhkHead+JQUL7Di+ehKRnHhdLmvi9cpuqFsKdWf4cUtcJPhav 8BvoH5XMy7pmejSVJ8gA70yQQNXp26F1R2TfHCZm9ZORN6E0gVjU83m6oFMoZNx/wRzMGJ sn/UXAsecayzWTa0o3gZFQAo9ozLbs1NkGsm5RflufflDTp0ODzFQr7viO/1/yWySOpIqb XHywGPQhlt6IoQFXVqRBbgfm/Alyc+P+yx/IOnp+nmXL2g5hNXjORL5+PTCgKg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Vcmbp3rfjz18d8; Sun, 12 May 2024 15:23: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 44CFNYWd056425; Sun, 12 May 2024 15:23:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44CFNYI5056422; Sun, 12 May 2024 15:23:34 GMT (envelope-from git) Date: Sun, 12 May 2024 15:23:34 GMT Message-Id: <202405121523.44CFNYI5056422@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 71ffda413069 - main - Revert linprocfs commits List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 71ffda413069ca39eabebbe83151df02d01c9103 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=71ffda413069ca39eabebbe83151df02d01c9103 commit 71ffda413069ca39eabebbe83151df02d01c9103 Author: Warner Losh AuthorDate: 2024-05-12 15:08:39 +0000 Commit: Warner Losh CommitDate: 2024-05-12 15:09:03 +0000 Revert linprocfs commits There's a race in these that I missed in my review that needs to be resolved. This reverts commit ee2e36686e846d412deac23344185f4b8a8c0285. This reverts commit 02f481a30b8269c7cad24ec2920ca09751708a1e. This reverts commit 099a81a4173bc5b121e50d4e27ea5fafdda8475b. --- sys/compat/linprocfs/linprocfs.c | 182 --------------------------------------- 1 file changed, 182 deletions(-) diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c index dd04adc054db..391d5f679ee5 100644 --- a/sys/compat/linprocfs/linprocfs.c +++ b/sys/compat/linprocfs/linprocfs.c @@ -126,9 +126,6 @@ #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* pages to kbytes */ #define TV2J(x) ((x)->tv_sec * 100UL + (x)->tv_usec / 10000) -/* Value defined in sys/kern/sysv_shm.c */ -#define SHMSEG_ALLOCATED 0x0800 - /** * @brief Mapping of ki_stat in struct kinfo_proc to the linux state * @@ -2095,176 +2092,6 @@ linprocfs_domax_map_cnt(PFS_FILL_ARGS) return (0); } -/* - * Filler function for proc/sysvipc/msg - */ -static int -linprocfs_dosysvipc_msg(PFS_FILL_ARGS) -{ - struct msqid_kernel *msqids; - u_long id, msgmni; - size_t sz; - int error; - - sbuf_printf(sb, - "%10s %10s %4s %10s %10s %5s %5s %5s %5s %5s %5s %10s %10s %10s\n", - "key", "msqid", "perms", "cbytes", "qnum", "lspid", "lrpid", - "uid", "gid", "cuid", "cgid", "stime", "rtime", "ctime"); - -again: - msgmni = msginfo.msgmni; - sz = sizeof(struct msqid_kernel) * msgmni; - msqids = malloc(sz, M_TEMP, M_NOWAIT); - if (msqids == NULL) - return (ENOMEM); - if (msgmni != msginfo.msgmni) { - free(msqids, M_TEMP); - goto again; - } - - error = kernel_sysctlbyname(curthread, "kern.ipc.msqids", msqids, &sz, - NULL, 0, 0, 0); - if (error != 0) { - free(msqids, M_TEMP); - return (error); - } - msgmni = sz / sizeof(struct msqid_kernel); - - for (id = 0; id < msgmni; id++) - if (msqids[id].u.msg_qbytes != 0) - sbuf_printf(sb, - "%10d %10lu %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10lld %10lld %10lld\n", - (int) msqids[id].u.msg_perm.key, - IXSEQ_TO_IPCID(id, msqids[id].u.msg_perm), - msqids[id].u.msg_perm.mode, - msqids[id].u.msg_cbytes, - msqids[id].u.msg_qnum, - msqids[id].u.msg_lspid, - msqids[id].u.msg_lrpid, - msqids[id].u.msg_perm.uid, - msqids[id].u.msg_perm.gid, - msqids[id].u.msg_perm.cuid, - msqids[id].u.msg_perm.cgid, - (long long)msqids[id].u.msg_stime, - (long long)msqids[id].u.msg_rtime, - (long long)msqids[id].u.msg_ctime); - - free(msqids, M_TEMP); - return (0); -} - -/* - * Filler function for proc/sysvipc/sem - */ -static int -linprocfs_dosysvipc_sem(PFS_FILL_ARGS) -{ - struct semid_kernel *semids; - u_long id, semmni; - size_t sz; - int error; - - sbuf_printf(sb, "%10s %10s %4s %10s %5s %5s %5s %5s %10s %10s\n", - "key", "semid", "perms", "nsems", "uid", "gid", "cuid", "cgid", - "otime", "ctime"); - -again: - semmni = seminfo.semmni; - sz = sizeof(struct semid_kernel) * semmni; - semids = malloc(sz, M_TEMP, M_NOWAIT); - if (semids == NULL) - return (ENOMEM); - if (semmni != seminfo.semmni) { - free(semids, M_TEMP); - goto again; - } - - error = kernel_sysctlbyname(curthread, "kern.ipc.sema", semids, &sz, - NULL, 0, 0, 0); - if (error != 0) { - free(semids, M_TEMP); - return (error); - } - semmni = sz / sizeof(struct semid_kernel); - - for (id = 0; id < semmni; id++) - if ((semids[id].u.sem_perm.mode & SEM_ALLOC) != 0) - sbuf_printf(sb, - "%10d %10lu %4o %10u %5u %5u %5u %5u %10lld %10lld\n", - (int) semids[id].u.sem_perm.key, - IXSEQ_TO_IPCID(id, semids[id].u.sem_perm), - semids[id].u.sem_perm.mode, - semids[id].u.sem_nsems, - semids[id].u.sem_perm.uid, - semids[id].u.sem_perm.gid, - semids[id].u.sem_perm.cuid, - semids[id].u.sem_perm.cgid, - (long long)semids[id].u.sem_otime, - (long long)semids[id].u.sem_ctime); - - free(semids, M_TEMP); - return (0); -} - -/* - * Filler function for proc/sysvipc/shm - */ -static int -linprocfs_dosysvipc_shm(PFS_FILL_ARGS) -{ - struct shmid_kernel *shmids; - u_long id, shmmni; - size_t sz; - int error; - - sbuf_printf(sb, - "%10s %10s %s %21s %5s %5s %5s %5s %5s %5s %5s %10s %10s %10s %21s %21s\n", - "key", "shmid", "perms", "size", "cpid", "lpid", "nattch", "uid", - "gid", "cuid", "cgid", "atime", "dtime", "ctime", "rss", "swap"); - -again: - shmmni = shminfo.shmmni; - sz = sizeof(struct shmid_kernel) * shmmni; - shmids = malloc(sz, M_TEMP, M_NOWAIT); - if (shmids == NULL) - return (ENOMEM); - if (shmmni != shminfo.shmmni) { - free(shmids, M_TEMP); - goto again; - } - - error = kernel_sysctlbyname(curthread, "kern.ipc.shmsegs", shmids, &sz, - NULL, 0, 0, 0); - if (error != 0) { - free(shmids, M_TEMP); - return (error); - } - shmmni = sz / sizeof(struct shmid_kernel); - - for (id = 0; id < shmmni; id++) - if ((shmids[id].u.shm_perm.mode & SHMSEG_ALLOCATED) != 0) - sbuf_printf(sb, - "%10d %10lu %4o %21zu %5u %5u %5u %5u %5u %5u %5u %10lld %10lld %10lld %21d %21d\n", - (int) shmids[id].u.shm_perm.key, - IXSEQ_TO_IPCID(id, shmids[id].u.shm_perm), - shmids[id].u.shm_perm.mode, - shmids[id].u.shm_segsz, - shmids[id].u.shm_cpid, - shmids[id].u.shm_lpid, - shmids[id].u.shm_nattch, - shmids[id].u.shm_perm.uid, - shmids[id].u.shm_perm.gid, - shmids[id].u.shm_perm.cuid, - shmids[id].u.shm_perm.cgid, - (long long)shmids[id].u.shm_atime, - (long long)shmids[id].u.shm_dtime, - (long long)shmids[id].u.shm_ctime, - 0, 0); /* XXX rss & swp are not supported */ - - free(shmids, M_TEMP); - return (0); -} - /* * Constructor */ @@ -2414,15 +2241,6 @@ linprocfs_init(PFS_INIT_ARGS) pfs_create_file(dir, "max_map_count", &linprocfs_domax_map_cnt, NULL, NULL, NULL, PFS_RD); - /* /proc/sysvipc/... */ - dir = pfs_create_dir(root, "sysvipc", NULL, NULL, NULL, 0); - pfs_create_file(dir, "msg", &linprocfs_dosysvipc_msg, - NULL, NULL, NULL, PFS_RD); - pfs_create_file(dir, "sem", &linprocfs_dosysvipc_sem, - NULL, NULL, NULL, PFS_RD); - pfs_create_file(dir, "shm", &linprocfs_dosysvipc_shm, - NULL, NULL, NULL, PFS_RD); - return (0); } From nobody Sun May 12 15:28:29 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vcmjl1bpLz5KCmG for ; Sun, 12 May 2024 15:28:43 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com [IPv6:2a00:1450:4864:20::12b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Vcmjk6sv6z4KZ4 for ; Sun, 12 May 2024 15:28:42 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-lf1-x12b.google.com with SMTP id 2adb3069b0e04-51f3761c96aso4095951e87.3 for ; Sun, 12 May 2024 08:28:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1715527721; x=1716132521; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=5Gk+rpmYFC5wAfbmMHFf7iZXwXAUf96HL5UNHOTFS1U=; b=xdeI+C7jV6coyZpmjjlw6pNW04Fwr/JQxWLo9biSKGxBMAdgRbZalPRdkwaNss2YZT +eUr4C5msh/NSjl7S9Qp/+eV+7y7Hty8Eb9mtZfjrEn3tzvnqzRtmXNBBB+X+i+58HVo 8WAGQa+lgKxZLCYr5k9W0j0X9vA5BkcnVpELb3U0VKUM+tSRmvxvzMfzzq5B2JwWDeyg 9Ct+ky52MvoGyxrq3EKOXoS8NnKj5G+RlyyFejW1trJW310NmrNLznfW/o/w2oOGhLC+ LbIn6bbaO+T6uJ5Gatr1OaBGjWsg5gVttF9A24XWfHs4QPBr+QwfCFhR7ALPW6GS0QE0 /nFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715527721; x=1716132521; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5Gk+rpmYFC5wAfbmMHFf7iZXwXAUf96HL5UNHOTFS1U=; b=feAFH58Md+xHybsW+VgqWSEribGqVv0Mwaio9EFryL0P6nMbVqcn6efPsaojzWcu+x AxQ12Zmr0Jc722+UAx6WfC1lSCAqn/BT4pK7l41VlrHD5KeeDeAMbqoufUqhLnCYHTkP +cUSkEUXgGBCdf2P9Nc7f0AjnL3S/OHViXSlsIwnDJsQyyWqOGPstGcwNB1VugUhVbMp Ogl4ExS3HFPHgjoJAgGjmCB5ZrSMF6bt5G0pfMOFSvmfgJkR6uQ4+jywT2QjNtZrZ+Rm UZad/s03MVtE5CyFzQVW+3lcXxbBQoDS6QqFVsyvs0xMWcyVrTrIaY94Gx1JeTq+GZWK jWWA== X-Forwarded-Encrypted: i=1; AJvYcCVfSJDZ6euwUEWZgYXnP/+bGMkeN2JZurqp5W6GsCcWGiobt416yECdH9ynjqaEqhgrlVaAoyZh18pgwS/H9t5kT8LSd2rayOCyMRqi116X3w== X-Gm-Message-State: AOJu0Yxg1L2g6iUPQfjD+133fPmjqFx/RqvRJfqEGiUjvv6FagdaFoKe y+iY1rx86xBmiJJyl/bqlLQ5UaLv9ZQBgfnfPYkeVVfb6+4QWkzyiUbA2rHJuRtAfcRxJXoo7aE 98WKCR7jUsr/kN85apLxpx5YzM1R6iWBZzXV1BQ== X-Google-Smtp-Source: AGHT+IFWsGaNX8Yx0ntVP8sZJRPz2KaVAuIW6Dn1GcjLKLPRA7pwEDkbDyhHBHJ0dtXs00Stuw+72I9GxVPKWoQ6n90= X-Received: by 2002:a05:6512:3987:b0:51a:f48d:7b31 with SMTP id 2adb3069b0e04-5220fc6e5e9mr7997300e87.13.1715527720556; Sun, 12 May 2024 08:28:40 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202405111939.44BJdIE5045793@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Sun, 12 May 2024 09:28:29 -0600 Message-ID: Subject: Re: git: 099a81a4173b - main - linprocfs: Add support for proc/sysvipc/{msg,sem,shm} To: Konstantin Belousov Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="00000000000062fc600618436ce4" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4Vcmjk6sv6z4KZ4 --00000000000062fc600618436ce4 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, May 12, 2024 at 5:36=E2=80=AFAM Konstantin Belousov wrote: > On Sat, May 11, 2024 at 07:39:18PM +0000, Warner Losh wrote: > > The branch main has been updated by imp: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D099a81a4173bc5b121e50d4e27ea5fa= fdda8475b > > > > commit 099a81a4173bc5b121e50d4e27ea5fafdda8475b > > Author: Ricardo Branco > > AuthorDate: 2024-05-04 13:38:20 +0000 > > Commit: Warner Losh > > CommitDate: 2024-05-11 19:37:47 +0000 > > > > linprocfs: Add support for proc/sysvipc/{msg,sem,shm} > > > > Signed-off-by: Ricardo Branco > > Reviewed by: imp > > Pull Request: https://github.com/freebsd/freebsd-src/pull/1218 > > --- > > sys/compat/linprocfs/linprocfs.c | 182 > +++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 182 insertions(+) > > > > diff --git a/sys/compat/linprocfs/linprocfs.c > b/sys/compat/linprocfs/linprocfs.c > > index 391d5f679ee5..a877d4065c18 100644 > > --- a/sys/compat/linprocfs/linprocfs.c > > +++ b/sys/compat/linprocfs/linprocfs.c > > @@ -126,6 +126,9 @@ > > #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* pages to kbyte= s > */ > > #define TV2J(x) ((x)->tv_sec * 100UL + (x)->tv_usec / 10000) > > > > +/* Value defined in sys/kern/sysv_shm.c */ > > +#define SHMSEG_ALLOCATED 0x0800 > > + > > /** > > * @brief Mapping of ki_stat in struct kinfo_proc to the linux state > > * > > @@ -2092,6 +2095,176 @@ linprocfs_domax_map_cnt(PFS_FILL_ARGS) > > return (0); > > } > > > > +/* > > + * Filler function for proc/sysvipc/msg > > + */ > > +static int > > +linprocfs_dosysvipc_msg(PFS_FILL_ARGS) > > +{ > > + struct msqid_kernel *msqids; > > + u_long id, msgmni; > > + size_t sz; > > + int error; > > + > > + sbuf_printf(sb, > > + "%10s %10s %4s %10s %10s %5s %5s %5s %5s %5s %5s %10s %10s > %10s\n", > > + "key", "msqid", "perms", "cbytes", "qnum", "lspid", "lrpid", > > + "uid", "gid", "cuid", "cgid", "stime", "rtime", "ctime"); > > + > > +again: > > + msgmni =3D msginfo.msgmni; > > + sz =3D sizeof(struct msqid_kernel) * msgmni; > > + msqids =3D malloc(sz, M_TEMP, M_NOWAIT); > Why M_NOWAIT? What does prevent us from waiting there? > Oh, I missed that in my review. It should just be wait. You are right. > > + if (msqids =3D=3D NULL) > > + return (ENOMEM); > > + if (msgmni !=3D msginfo.msgmni) { > What prevents msginfo.msgmni from changing again? Otherwise, why this > check > is needed? > > (Same questions for other two similar places trimmed below). > I found other races that I commented on, but missed these somehow. I'd also bucketed the PR as simple, not in need of closer review by others, which I'll bias towards wider review more in the future. I've backed this out, as well as my "fixes" to it. You are of course correct on the uintmax_t thing... I'd internalized that rule only for [u]intXX_t, but of course it applies across the board. I don't know what I was thinking. I'll work with the submitter to tighten these things up, providing additional interfaces if necessary. Should I add you to the reviews once the preliminaries and mechanical issues are dealt with? Warner --00000000000062fc600618436ce4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Sun, May 12, 2024 at 5:36=E2=80=AF= AM Konstantin Belousov <kostikbel= @gmail.com> wrote:
On Sat, May 11, 2024 at 07:39:18PM +0000, Warner Losh wrote:
> The branch main has been updated by imp:
>
> URL: https://= cgit.FreeBSD.org/src/commit/?id=3D099a81a4173bc5b121e50d4e27ea5fafdda8475b<= /a>
>
> commit 099a81a4173bc5b121e50d4e27ea5fafdda8475b
> Author:=C2=A0 =C2=A0 =C2=A0Ricardo Branco <
rbranco@suse.de>
> AuthorDate: 2024-05-04 13:38:20 +0000
> Commit:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org>
> CommitDate: 2024-05-11 19:37:47 +0000
>
>=C2=A0 =C2=A0 =C2=A0linprocfs: Add support for proc/sysvipc/{msg,sem,sh= m}
>=C2=A0 =C2=A0 =C2=A0
>=C2=A0 =C2=A0 =C2=A0Signed-off-by: Ricardo Branco <rbranco@suse.de>
>=C2=A0 =C2=A0 =C2=A0Reviewed by: imp
>=C2=A0 =C2=A0 =C2=A0Pull Request: https://github= .com/freebsd/freebsd-src/pull/1218
> ---
>=C2=A0 sys/compat/linprocfs/linprocfs.c | 182 +++++++++++++++++++++++++= ++++++++++++++
>=C2=A0 1 file changed, 182 insertions(+)
>
> diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/l= inprocfs.c
> index 391d5f679ee5..a877d4065c18 100644
> --- a/sys/compat/linprocfs/linprocfs.c
> +++ b/sys/compat/linprocfs/linprocfs.c
> @@ -126,6 +126,9 @@
>=C2=A0 #define P2K(x) ((x) << (PAGE_SHIFT - 10))=C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 /* pages to kbytes */
>=C2=A0 #define TV2J(x)=C2=A0 =C2=A0 =C2=A0 ((x)->tv_sec * 100UL + (x= )->tv_usec / 10000)
>=C2=A0
> +/* Value defined in sys/kern/sysv_shm.c */
> +#define SHMSEG_ALLOCATED=C2=A0 =C2=A0 =C2=A00x0800
> +
>=C2=A0 /**
>=C2=A0 =C2=A0* @brief Mapping of ki_stat in struct kinfo_proc to the li= nux state
>=C2=A0 =C2=A0*
> @@ -2092,6 +2095,176 @@ linprocfs_domax_map_cnt(PFS_FILL_ARGS)
>=C2=A0 =C2=A0 =C2=A0 =C2=A0return (0);
>=C2=A0 }
>=C2=A0
> +/*
> + * Filler function for proc/sysvipc/msg
> + */
> +static int
> +linprocfs_dosysvipc_msg(PFS_FILL_ARGS)
> +{
> +=C2=A0 =C2=A0 =C2=A0struct msqid_kernel *msqids;
> +=C2=A0 =C2=A0 =C2=A0u_long id, msgmni;
> +=C2=A0 =C2=A0 =C2=A0size_t sz;
> +=C2=A0 =C2=A0 =C2=A0int error;
> +
> +=C2=A0 =C2=A0 =C2=A0sbuf_printf(sb,
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"%10s %10s %4s=C2=A0 %10s %10s= %5s %5s %5s %5s %5s %5s %10s %10s %10s\n",
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"key", "msqid",= "perms", "cbytes", "qnum", "lspid"= , "lrpid",
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"uid", "gid", &= quot;cuid", "cgid", "stime", "rtime", &q= uot;ctime");
> +
> +again:
> +=C2=A0 =C2=A0 =C2=A0msgmni =3D msginfo.msgmni;
> +=C2=A0 =C2=A0 =C2=A0sz =3D sizeof(struct msqid_kernel) * msgmni;
> +=C2=A0 =C2=A0 =C2=A0msqids =3D malloc(sz, M_TEMP, M_NOWAIT);
Why M_NOWAIT?=C2=A0 What does prevent us from waiting there?

Oh, I missed that in my review. It should just be wai= t. You are right.
=C2=A0
> +=C2=A0 =C2=A0 =C2=A0if (msqids =3D=3D NULL)
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0return (ENOMEM);
> +=C2=A0 =C2=A0 =C2=A0if (msgmni !=3D msginfo.msgmni) {
What prevents msginfo.msgmni from changing again?=C2=A0 Otherwise, why this= check
is needed?

(Same questions for other two similar places trimmed below).

I found other races that I commented on, but missed t= hese somehow. I'd also bucketed the PR as simple, not in need of closer= review by others, which I'll bias towards wider review more in the fut= ure.

I've backed this out, as well as my "= ;fixes" to it. You are of course correct on the uintmax_t thing... I&#= 39;d internalized that rule only for [u]intXX_t, but of course it applies a= cross the board. I don't know what I was thinking. I'll work with t= he submitter to tighten these things up, providing additional interfaces if= necessary. Should I add you to the reviews once the preliminaries and mech= anical issues are dealt with?

Warner
--00000000000062fc600618436ce4-- From nobody Sun May 12 15:45:05 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vcn4p2Mycz5KFRk; Sun, 12 May 2024 15:45:14 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Vcn4n3NBNz4MtY; Sun, 12 May 2024 15:45:13 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 44CFj5Zn029527; Sun, 12 May 2024 18:45:08 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 44CFj5Zn029527 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 44CFj56m029523; Sun, 12 May 2024 18:45:05 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 12 May 2024 18:45:05 +0300 From: Konstantin Belousov To: Warner Losh Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 099a81a4173b - main - linprocfs: Add support for proc/sysvipc/{msg,sem,shm} Message-ID: References: <202405111939.44BJdIE5045793@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Queue-Id: 4Vcn4n3NBNz4MtY On Sun, May 12, 2024 at 09:28:29AM -0600, Warner Losh wrote: > On Sun, May 12, 2024 at 5:36 AM Konstantin Belousov > wrote: > > > On Sat, May 11, 2024 at 07:39:18PM +0000, Warner Losh wrote: > > > The branch main has been updated by imp: > > > > > > URL: > > https://cgit.FreeBSD.org/src/commit/?id=099a81a4173bc5b121e50d4e27ea5fafdda8475b > > > > > > commit 099a81a4173bc5b121e50d4e27ea5fafdda8475b > > > Author: Ricardo Branco > > > AuthorDate: 2024-05-04 13:38:20 +0000 > > > Commit: Warner Losh > > > CommitDate: 2024-05-11 19:37:47 +0000 > > > > > > linprocfs: Add support for proc/sysvipc/{msg,sem,shm} > > > > > > Signed-off-by: Ricardo Branco > > > Reviewed by: imp > > > Pull Request: https://github.com/freebsd/freebsd-src/pull/1218 > > > --- > > > sys/compat/linprocfs/linprocfs.c | 182 > > +++++++++++++++++++++++++++++++++++++++ > > > 1 file changed, 182 insertions(+) > > > > > > diff --git a/sys/compat/linprocfs/linprocfs.c > > b/sys/compat/linprocfs/linprocfs.c > > > index 391d5f679ee5..a877d4065c18 100644 > > > --- a/sys/compat/linprocfs/linprocfs.c > > > +++ b/sys/compat/linprocfs/linprocfs.c > > > @@ -126,6 +126,9 @@ > > > #define P2K(x) ((x) << (PAGE_SHIFT - 10)) /* pages to kbytes > > */ > > > #define TV2J(x) ((x)->tv_sec * 100UL + (x)->tv_usec / 10000) > > > > > > +/* Value defined in sys/kern/sysv_shm.c */ > > > +#define SHMSEG_ALLOCATED 0x0800 > > > + > > > /** > > > * @brief Mapping of ki_stat in struct kinfo_proc to the linux state > > > * > > > @@ -2092,6 +2095,176 @@ linprocfs_domax_map_cnt(PFS_FILL_ARGS) > > > return (0); > > > } > > > > > > +/* > > > + * Filler function for proc/sysvipc/msg > > > + */ > > > +static int > > > +linprocfs_dosysvipc_msg(PFS_FILL_ARGS) > > > +{ > > > + struct msqid_kernel *msqids; > > > + u_long id, msgmni; > > > + size_t sz; > > > + int error; > > > + > > > + sbuf_printf(sb, > > > + "%10s %10s %4s %10s %10s %5s %5s %5s %5s %5s %5s %10s %10s > > %10s\n", > > > + "key", "msqid", "perms", "cbytes", "qnum", "lspid", "lrpid", > > > + "uid", "gid", "cuid", "cgid", "stime", "rtime", "ctime"); > > > + > > > +again: > > > + msgmni = msginfo.msgmni; > > > + sz = sizeof(struct msqid_kernel) * msgmni; > > > + msqids = malloc(sz, M_TEMP, M_NOWAIT); > > Why M_NOWAIT? What does prevent us from waiting there? > > > > Oh, I missed that in my review. It should just be wait. You are right. > > > > > + if (msqids == NULL) > > > + return (ENOMEM); > > > + if (msgmni != msginfo.msgmni) { > > What prevents msginfo.msgmni from changing again? Otherwise, why this > > check > > is needed? > > > > (Same questions for other two similar places trimmed below). > > > > I found other races that I commented on, but missed these somehow. I'd also > bucketed the PR as simple, not in need of closer review by others, which > I'll bias towards wider review more in the future. > > I've backed this out, as well as my "fixes" to it. You are of course > correct on the uintmax_t thing... I'd internalized that rule only for > [u]intXX_t, but of course it applies across the board. I don't know what I > was thinking. I'll work with the submitter to tighten these things up, > providing additional interfaces if necessary. Should I add you to the > reviews once the preliminaries and mechanical issues are dealt with? FWIW, I am not sure that the issues are worth the revert. The time_t format is definitely a mechanical/small problem. Same for the M_NOWAIT/WAITOK. The recheck is more problematic, I do agree. Also, I realized one more issue there: the data structures like msginfo are from sysvmsg.ko modules. Then, the change make linprocfs depending on the sysv*.ko, but this is not directly recorded with MODULE_DEPENDS(). It worked because GENERIC compiles SysV support statically. From nobody Sun May 12 17:25:46 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4VcqJq0P84z5KPH5; Sun, 12 May 2024 17:25: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 4VcqJp6zpdz4ZTm; Sun, 12 May 2024 17:25:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715534747; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=od6GAMoXmXJZyBvHdNPXlIDwoSnrIxLuHi819Xv1hV0=; b=VKhJH6IF3Xqwv25Mn0rDqCa1OP5Hgm30HG/xxxWF/2jwQ+N1YQzyo85tQPBFFevCgNGtCe 1GX1sFV9RqOQD4IJmq0elta4XJeLw3Vwan+jtxOrW6mvOwr/5v5hOm0JP785x2kPmjARLx 6pWzh7J28qTE1uL+rXXgZaHwBjBtvMYMBfyKcBFdrM1+8Sccx5xAOyWyMpI/9DkFTizzT6 kGeCL6GKc1rp/KY+EefSzKbDXLV1BVGggFjExfJxErTJVJ+G8J8bmxozMMtmM4LXxd6LJ2 +1UJI60oQSVXoFV81/3NXzAIfCGCZ6BIa0ZQgkiGUoqVk1v24DFuKIbN2OeKbA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715534747; a=rsa-sha256; cv=none; b=ecnGtGHwk/m9i/6VsO1mQQZ23VG+Dt8DNNbCSjJAdt6g3wwX/RejwhHNiPeh5v2F0C7awB KqdBIqQGHpFfodFSfTTbzH/iZJc2Fo264WQCWeC/SV+YVwqD5Li4Sn4rcJl78j+cjrbaOY lmeGd9PzNxhbRtEDytMMTQ6GjdBV8QOoI4ZeUUVuejTVHj3ahMrk30gPIG9sYEnb7uE4uA fK5yoU7cYJlMJ7hguxIQiq3AW9inmvaruxrt6MEkuXSUfAG9IuBaFA4KJ3ecyWcsa/BmEw 4bZm2y4abMxT0FcZMh1oztxnMJlAV5YSVikX+dK30KYZ41xYP/TxEEPlXywYBA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715534747; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=od6GAMoXmXJZyBvHdNPXlIDwoSnrIxLuHi819Xv1hV0=; b=wYz+dhWu3OXgfgL0i1MXZxH8/4Tto7GrWxOGxakpJZ//PD4cNLkil6nYBOlcuVhy+fHFDN rPPyLAQ/n6eIXmc1kWUkZeCEKNjAHA8cDXU8gzQEDSgcHVT9wFLcfQSdUVnpb/ByuxphZ7 /ifgpUC/U/yqBi9gjgjQ35NG7rCps+Qs7f8/r/FF+o6qEpAN/OpVX81LgNPOmtLp+cpzTU M6SUXNl4g/e0JTZoxn4CyqiJflYSbpsLdQwHMfzvidlzpsBzZIP1XbFKmGYivVXHTWkO0i 4KSohy3FnRLp3jhS9pRGUYzjuG3LerP8TIVMOw5Gi7Ekna4a+cNMAiu68DXloQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4VcqJp6bK3z1ClG; Sun, 12 May 2024 17:25: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 44CHPkFY060399; Sun, 12 May 2024 17:25:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44CHPkbw060396; Sun, 12 May 2024 17:25:46 GMT (envelope-from git) Date: Sun, 12 May 2024 17:25:46 GMT Message-Id: <202405121725.44CHPkbw060396@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Fernando =?utf-8?Q?Apestegu=C3=ADa?= Subject: git: 47535ba3d35e - main - bsdinstall: Remove unused variables in fetchmissingdists List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fernape X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 47535ba3d35eda44d1eb961551173a9dadef17fa Auto-Submitted: auto-generated The branch main has been updated by fernape: URL: https://cgit.FreeBSD.org/src/commit/?id=47535ba3d35eda44d1eb961551173a9dadef17fa commit 47535ba3d35eda44d1eb961551173a9dadef17fa Author: Fernando Apesteguía AuthorDate: 2023-10-26 12:16:54 +0000 Commit: Fernando Apesteguía CommitDate: 2024-05-12 17:25:06 +0000 bsdinstall: Remove unused variables in fetchmissingdists ALL_DISTRIBUTIONS and VERIFY_MANIFEST_SIG They are neither used in the script nor exported. Not referenced anywhere in bsdinstall/* Approved by: imp@ Differential Revision: https://reviews.freebsd.org/D42369 --- usr.sbin/bsdinstall/scripts/fetchmissingdists | 3 --- 1 file changed, 3 deletions(-) diff --git a/usr.sbin/bsdinstall/scripts/fetchmissingdists b/usr.sbin/bsdinstall/scripts/fetchmissingdists index d37acc96b92c..f5da3ee45c39 100644 --- a/usr.sbin/bsdinstall/scripts/fetchmissingdists +++ b/usr.sbin/bsdinstall/scripts/fetchmissingdists @@ -53,7 +53,6 @@ if [ -z "$FETCH_DISTRIBUTIONS" ]; then exit 0 fi -ALL_DISTRIBUTIONS="$DISTRIBUTIONS" WANT_DEBUG= # Download to a directory in the new system as scratch space @@ -75,10 +74,8 @@ export FTP_PASSIVE_MODE=YES if [ -f "$BSDINSTALL_DISTDIR_ORIG/MANIFEST" ]; then cp "$BSDINSTALL_DISTDIR_ORIG/MANIFEST" "$BSDINSTALL_DISTDIR/MANIFEST" - VERIFY_MANIFEST_SIG=0 else FETCH_DISTRIBUTIONS="MANIFEST $FETCH_DISTRIBUTIONS" - VERIFY_MANIFEST_SIG=1 # XXX actually verify signature on manifest bsddialog --backtitle "$OSNAME Installer" --title "Warning" --msgbox "Manifest not found on local disk and will be fetched from an unverified source. This is a potential security risk. If you do not wish to proceed, press control-C now." 0 0 From nobody Sun May 12 23:48:50 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vczpp4yGSz5Jl0t; Sun, 12 May 2024 23:48: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 4Vczpp443nz58jD; Sun, 12 May 2024 23:48:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715557730; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XbuKBydj1/XZ5KI3B6h6D2tQggpzCC5xJn2sOEEI3/Q=; b=f2fwamKhkft+y4e0UHzyzFYTT4LnW4HyYWlZ6qDKrgar2XDhBGJOYXwywY8LPawGWZNkNr px3pbk+Fr/5WK4Z/gjurcX2C9XukO6rXryoxYu0ayY/si0OQ4RI5Plx4AQ5DeBAOicg86b FQbWeOEVgr6GZUBTnCeUCMLv6BR51aeOzrcnYLdisWF9/ytljqYJZ2BC9yGcwpr4lFMkbc nPlCtaNV0BZ7xBJ/S3/Zi/ANw3hrfnERaNBnkTwBGQN7Rm3N6shQK3w/OWUINgPaUNJGhi atfuyy9VC1xDNoG9BA8DvHr1bv9Rn9lZ2E0Gkz+78PM6mrQAMy0oOVwsLExIJA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1715557730; a=rsa-sha256; cv=none; b=YFHk4/5mKtqXxVsk5wizXBzUiMRbeA8KkkThnNu2XnMt8bkxFJUuFbh1CrrZmZbWD9tivY 2wfhp0rwiuGcEaE7tTIcC2xtZrc1MaSj7KLWIP+zeAJUJ9BrP3T2WKfQrIFm+kY5de+9/N nC0heT6R1VT8Ya/RF1kV4LP1JFh9nnpGvL5KRf3Hl+xW7TLWoRzJsSLgNLqsOuOobmQ98J 3W9nV0IgKy+cun6Bx9o9R9nMvSFucJQSlNuHJlXBzmi8j493u9FZxhUQDLQKedecQI3F/z vbXtfDi7TLDVgSunk57EcYe5hLT3kx7wjpg/2EvfBp30KQnqy34sRc5Gwv2Wzw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1715557730; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XbuKBydj1/XZ5KI3B6h6D2tQggpzCC5xJn2sOEEI3/Q=; b=bVlvpkOc9xtdjizdgUCOPKs7yVwVIwwfcSS+3g1I+Rdf3iZtGP1nR49c5MwjyrRK69Xeiw jw1mmAHu9kxZz07WDXC4f3iQt3kBsSEorQKEpRuxUFlsIB03rRWtdFzSAqnxx4kd6syp2h QlbTPHFViEYHqSkFosZEirG1YUGNPgUMnPE/eafThrhLeBcZqUfykUREsifb4Dz3prNIIt JBzdB46iiuCqS0hpF/XPxCXVUlys+bcNlNb57xRFQy7R0G18cBcZEIpYxZEfrnP6vt4AQ7 QO4rHgbjcZhp8CUSqYDi9HBFTAWu3DePNH6cxmC8IeuOHrSwQ597L8RFdDCN/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 4Vczpp39tXzQ2N; Sun, 12 May 2024 23:48: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 44CNmovZ005796; Sun, 12 May 2024 23:48:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 44CNmo48005793; Sun, 12 May 2024 23:48:50 GMT (envelope-from git) Date: Sun, 12 May 2024 23:48:50 GMT Message-Id: <202405122348.44CNmo48005793@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alan Cox Subject: git: 94b09d388b81 - main - arm64: map kernel using large pages when page size is 16K List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: alc X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 94b09d388b81eb724769e506cdf0f51bba9b73fb Auto-Submitted: auto-generated The branch main has been updated by alc: URL: https://cgit.FreeBSD.org/src/commit/?id=94b09d388b81eb724769e506cdf0f51bba9b73fb commit 94b09d388b81eb724769e506cdf0f51bba9b73fb Author: Alan Cox AuthorDate: 2024-05-11 06:09:39 +0000 Commit: Alan Cox CommitDate: 2024-05-12 23:22:38 +0000 arm64: map kernel using large pages when page size is 16K When the page size is 16K, use ATTR_CONTIGUOUS to map the kernel code and data sections using 2M pages. Previously, they were mapped using 16K pages. Reviewed by: markj Tested by: markj Differential Revision: https://reviews.freebsd.org/D45162 --- sys/arm64/arm64/locore.S | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/sys/arm64/arm64/locore.S b/sys/arm64/arm64/locore.S index f53cd365de55..fffebe8f2b02 100644 --- a/sys/arm64/arm64/locore.S +++ b/sys/arm64/arm64/locore.S @@ -516,11 +516,10 @@ booti_no_fdt: common: #if PAGE_SIZE != PAGE_SIZE_4K /* - * Create L3 pages. The kernel will be loaded at a 2M aligned - * address, however L2 blocks are too large when the page size is - * not 4k to map the kernel with such an aligned address. However, - * when the page size is larger than 4k, L2 blocks are too large to - * map the kernel with such an alignment. + * Create L3 and L3C pages. The kernel will be loaded at a 2M aligned + * address, enabling the creation of L3C pages. However, when the page + * size is larger than 4k, L2 blocks are too large to map the kernel + * with 2M alignment. */ #define PTE_SHIFT L3_SHIFT #define BUILD_PTE_FUNC build_l3_page_pagetable @@ -784,13 +783,17 @@ LENTRY(link_l2_pagetable) LEND(link_l2_pagetable) /* - * Builds count level 3 page table entries + * Builds count level 3 page table entries. Uses ATTR_CONTIGUOUS to create + * large page (L3C) mappings when the current VA and remaining count allow + * it. * x6 = L3 table * x7 = Block attributes * x8 = VA start * x9 = PA start (trashed) * x10 = Entry count (trashed) * x11, x12 and x13 are trashed + * + * VA start (x8) modulo L3C_SIZE must equal PA start (x9) modulo L3C_SIZE. */ LENTRY(build_l3_page_pagetable) /* @@ -811,8 +814,17 @@ LENTRY(build_l3_page_pagetable) /* Only use the output address bits */ lsr x9, x9, #L3_SHIFT + /* Check if an ATTR_CONTIGUOUS mapping is possible */ +1: tst x11, #(L3C_ENTRIES - 1) + b.ne 2f + cmp x10, #L3C_ENTRIES + b.lo 3f + orr x12, x12, #(ATTR_CONTIGUOUS) + b 2f +3: and x12, x12, #(~ATTR_CONTIGUOUS) + /* Set the physical address for this virtual address */ -1: orr x13, x12, x9, lsl #L3_SHIFT +2: orr x13, x12, x9, lsl #L3_SHIFT /* Store the entry */ str x13, [x6, x11, lsl #3]