From nobody Thu May 15 18:17:53 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Zyz363dDyz5wjGn; Thu, 15 May 2025 18:17: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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zyz361551z3Fjc; Thu, 15 May 2025 18:17:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7kn6vU4PyIjQGtNBXOmzFblQ0+y5hA8o2Wl6vm+rmqU=; b=hiDFHEoWnc9Aa/1CIFYnKwM+mLs2ed/nCHESRUsx72wqqDsn7zsBW85VxhPPHSicNGKccY 9pzvbls3sQJwvGfFIJUvV45kYz0Ul1h5F+os71kRvVuSqY0rrgQHJMWmpQYD2dSx1k/E5v /NrkEhr0QduHy+X2J3aAH2QFjxTBoqDc/qNWSuMFuiVxiK3hvhMbNhWTwutLvKv3Xuh4fW EHWe9nELotmwMyuRmLjHEs6beENLVbBfk9leUVnaTc1oChbb8PO0Wqukz+iSGxbuw7o77p FGbW3xKAasl9OvZeFCTei8SXAZpoNO32YwY2w3NFU+RkR4180VS179ss3RPxiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1747333074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7kn6vU4PyIjQGtNBXOmzFblQ0+y5hA8o2Wl6vm+rmqU=; b=TGxYPN/CE9BD7W1wCT6drFtuqQQV9B7Ak0nxi+EoS49T6bp55M1ZkWc/L5GwnZXFOM6nmv GGKdDTC81vbstsjDoo0IWq8Jj1P3vdzeD8zqplX+mNp1ETfRn8ii/bT8RIKSkXcaeJAR0x vU2yZJUy1B9npZFCACnzLmRe/7uDq4suCltMDUjWudwIQKCbJfWsQXQQF9U6sGPsClO9RG pvTvdYxRIUHtp0pNSAoKP18Fx5crEcttObez5gjNSVI9otW6QFagBsHRd70RW0L9DKrPIP 2cFalEwoRJfs+eTXX7ZLhOCjHL3OJN78n0YRo0ukic+QMqhxJyrbDVURkfpowA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1747333074; a=rsa-sha256; cv=none; b=nev8AnJOvUbayTnnC6m3DOGp5HfX/9nqSYp2SurSdv7DortPbifxjK99NVbMXOkIEhqW6x MkP9OxkuGx3FTPsInrSk+e4W6dqv3cQj9QSVDX93HsgI8kO0NAc6Tzj3uuGl6Tz7Qbbvry zdbOOlmYalBp9L4f8pZ0Omp5yUahc5OaAlhqx8npkDn9T4EOqQfTqgZzI4agu01LUReUBT UZ2Zp3NVhEnX4gxdkAZfx3mBdSo+QaHfYdiiG/97eUQoDl0z0LAwuLC4gYrDK8T/KHhhNE T64T9sYUMLJ58CSuLlx0p5Q7fA3gerpo2YQvmhj54Nf+I6lonxkmfT/pRDv0Ww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Zyz360dHDzD7H; Thu, 15 May 2025 18:17:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 54FIHruC090346; Thu, 15 May 2025 18:17:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54FIHrad090343; Thu, 15 May 2025 18:17:53 GMT (envelope-from git) Date: Thu, 15 May 2025 18:17:53 GMT Message-Id: <202505151817.54FIHrad090343@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vladimir Kondratyev Subject: git: d7837cac6f64 - stable/14 - rtlbtfw(8): Fix incorrect chunk index overwrap in rtlbt_load_fwfile() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d7837cac6f64a7ed3682050f6401a2a7032fc6d9 Auto-Submitted: auto-generated The branch stable/14 has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=d7837cac6f64a7ed3682050f6401a2a7032fc6d9 commit d7837cac6f64a7ed3682050f6401a2a7032fc6d9 Author: Vladimir Kondratyev AuthorDate: 2025-04-29 20:28:53 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-05-15 18:14:18 +0000 rtlbtfw(8): Fix incorrect chunk index overwrap in rtlbt_load_fwfile() It prevented large (>256 chunks) firmwares from loading. Fixes: 5036d9652a57 ("rtlbtfw: Firmware loader for Realtek 87XX/88XX") Sponsored by: Future Crew, LLC MFC after: 1 week (cherry picked from commit a4fcbac5d891e3909474ffe7ed7064972a1a7577) --- usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c index 493358294c07..21f2c3e2804f 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbt_hw.c @@ -189,19 +189,18 @@ rtlbt_load_fwfile(struct libusb_device_handle *hdl, uint8_t *data = fw->buf; int frag_num = fw->len / RTLBT_MAX_CMD_DATA_LEN + 1; int frag_len = RTLBT_MAX_CMD_DATA_LEN; - int i; + int i, j; int ret, transferred; - for (i = 0; i < frag_num; i++) { + for (i = 0, j = 0; i < frag_num; i++, j++) { rtlbt_debug("download fw (%d/%d)", i + 1, frag_num); memset(cmd_buf, 0, sizeof(cmd_buf)); cmd->opcode = htole16(0xfc20); - if (i > 0x7f) - dl_cmd->index = (i & 0x7f) + 1; - else - dl_cmd->index = i; + if (j > 0x7f) + j = 1; + dl_cmd->index = j; if (i == (frag_num - 1)) { dl_cmd->index |= 0x80; /* data end */