From nobody Sat Sep 12 18:19:08 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4hj06h43h9z6sX45 for ; Sat, 12 Sep 2026 18:19: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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hj06h3btPz4qZ0 for ; Sat, 12 Sep 2026 18:19:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1789237148; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9FJQRIoD7srgIEEq5D3Rz+2YsBSc2P7WkhpiFL9vd5Q=; b=Ch03pwt5K9IR4NdflSKAVKWAdZDtnqEJu5OZjrjbWJDa9U+YVGi4NNtCPI6v5N9OFGVNgY s4bM1SyID5t8647kjiw8Sp9xx7cupyK41icjWFmVeCJw52G4Uh3V+tzVWfTA/aJKIrfspq H7vr32aZsgtw6WfCyoYEr4fE5FS0DIe+Jt9oVevOwmtuHEfPBwysybRUUiNwtvM1fOSTKs V6gqF8AvyRvEe4qae3K6WljSnk3u1rVaA3fGAyUKXz9ga/PgbJlXK0BmHBLmUCFE2Lxz8C q/3lotR4i2i5zuEgxIuZnJnMMgDNOl4w9p8NlmnKjaqd4tSSgk6wSek/JCnDxA== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1789237148; b=JGCWET05+D1rI6N7iVkB4Coe4O05FYo8YvQ07FWVfYT00Ja658AKVmoR0BkoJ82o2fP8+K SX0Hkfos2dxvNyBE5FsnkC/fdfFduKnUmB2Y6bj2tJlJZ+YouQOuefIk3hwkQIF/E+eZEc XPdTJpNoQXxDMaV7UpM8eanHgaeVxNHZvX26gV+YIEPWItkr4Vain8GQdkh3RCxCEFfwwO UFR25ePQvZ4vWZGXmxHYqnQxh/o1PLYoow4zMjY0Xr6W+ydT2NNYeWPZ8VkxvMU1Jgm4yA htOVxS72RZCQYQfGp6IaOzQ+vYVXeBRFO7Y3DKUF0//FZnttY6khG5rgxndoww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1789237148; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9FJQRIoD7srgIEEq5D3Rz+2YsBSc2P7WkhpiFL9vd5Q=; b=PH6VSKtYV5WEL84fM7gIW1pwiXOBkMU6XeIeY2kf4yO32TXCNyLEbY72VzT2YYYN14mLBU BdKYS/4RtXKF09Bxo9GcJIm6cHqmfrCylz2sV2SK8JgjaZrrOKhtOT7Lf2i/ibCtNrChju WABnY0eBnx8f+b1GEFrxQ+w1MOlDUajDklWpmOErGa+e2BsC19ojihbTa4YI4ywvUBN05j nl1J7H5WLaKbHb+sQJbDF9p2QjsiZ4ZTlBnzUiIi5P6bT0VEqtGWuSpTNoB2EtOAM+t2zs dWsw1p00c5oWsBHywIDdtYgpbkJHtHDveim+yNlemwPRmsOXPHVPq1BCx37vdg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hj06h2fq1z17j6 for ; Sat, 12 Sep 2026 18:19:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 457a9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 12 Sep 2026 18:19:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 79e2a46a6afd - main - nvmecontrol: Fix APST transition encoding List-Id: Commit messages for the main 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 List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list 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: 79e2a46a6afda1b762c75cb308a474c9ed0cda4c Auto-Submitted: auto-generated Date: Sat, 12 Sep 2026 18:19:08 +0000 Message-Id: <6aa5979c.457a9.6d5f00a3@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=79e2a46a6afda1b762c75cb308a474c9ed0cda4c commit 79e2a46a6afda1b762c75cb308a474c9ed0cda4c Author: Warner Losh AuthorDate: 2026-09-11 06:14:00 +0000 Commit: Warner Losh CommitDate: 2026-09-12 16:59:16 +0000 nvmecontrol: Fix APST transition encoding Use uin64_t casts to encode data sent to avoid overflows. Fixes: 35793364d722 Sponsored by: Netflix --- sbin/nvmecontrol/power.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sbin/nvmecontrol/power.c b/sbin/nvmecontrol/power.c index fca152c3924a..1ba28deb6c16 100644 --- a/sbin/nvmecontrol/power.c +++ b/sbin/nvmecontrol/power.c @@ -174,7 +174,8 @@ power_apst_data_generate(struct nvme_controller_data *cdata, /* Wait 50x the latency before each transition. */ itpt = MIN(latency * 50, (1 << 24) - 1); - data[i - 1] = htole64(itpt << 8 | i << 3); + data[i - 1] = htole64((uint64_t)itpt << 8 | + (uint64_t)i << 3); } } @@ -191,14 +192,15 @@ power_apst_data_parse(struct nvme_controller_data *cdata, if (sscanf(token, "%i:%i", &itps, &itpt) != 2) errx(EX_USAGE, "cannot parse provided configuration"); - if (itps < 0 || itps >= cdata->npss) + if (itps < 0 || itps > cdata->npss) errx(EX_USAGE, "invalid ITPS=%d (must be 0..%d)", itps, cdata->npss); if (itpt < 0 || itpt >= 1 << 24) errx(EX_USAGE, "invalid ITPT=%d (must be 0..%d)", - itpt, 1 << 24); + itpt, (1 << 24) - 1); - data[i] = htole64(itpt << 8 | itps << 3); + data[i] = htole64((uint64_t)itpt << 8 | + (uint64_t)itps << 3); } }