summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGil Fine <gil.fine@linux.intel.com>2024-04-26 02:24:17 +0300
committerMika Westerberg <mika.westerberg@linux.intel.com>2024-04-27 08:02:01 +0300
commit61684c0ff94ca356ef82220173860223908f1e04 (patch)
tree1a836abeddf91464b37246b21c809ee79f72c006
parenta3ad3a90e0a722d9a50c01cfb40e6cfbb975e529 (diff)
thunderbolt: Fix uninitialized variable in tb_tunnel_alloc_usb3()
Currently in case of no bandwidth available for USB3 tunnel, we are left with uninitialized variable that can lead to huge negative allocated bandwidth. Fix this by initializing the variable to zero. While there, fix the kernel-doc to describe more accurately the purpose of the function tb_tunnel_alloc_usb3(). Reported-by: Dan Carpenter <dan.carpenter@linaro.org> Closes: https://lore.kernel.org/linux-usb/6289898b-cd63-4fb8-906a-1b6977321af9@moroto.mountain/ Fixes: 25d905d2b819 ("thunderbolt: Allow USB3 bandwidth to be lower than maximum supported") Signed-off-by: Gil Fine <gil.fine@linux.intel.com> Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
-rw-r--r--drivers/thunderbolt/tunnel.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/thunderbolt/tunnel.c b/drivers/thunderbolt/tunnel.c
index fdc5e8e12ca8..1a3b197001da 100644
--- a/drivers/thunderbolt/tunnel.c
+++ b/drivers/thunderbolt/tunnel.c
@@ -2048,10 +2048,10 @@ err_free:
* @tb: Pointer to the domain structure
* @up: USB3 upstream adapter port
* @down: USB3 downstream adapter port
- * @max_up: Maximum available upstream bandwidth for the USB3 tunnel (%0
- * if not limited).
- * @max_down: Maximum available downstream bandwidth for the USB3 tunnel
- * (%0 if not limited).
+ * @max_up: Maximum available upstream bandwidth for the USB3 tunnel.
+ * %0 if no available bandwidth.
+ * @max_down: Maximum available downstream bandwidth for the USB3 tunnel.
+ * %0 if no available bandwidth.
*
* Allocate an USB3 tunnel. The ports must be of type @TB_TYPE_USB3_UP and
* @TB_TYPE_USB3_DOWN.
@@ -2064,7 +2064,7 @@ struct tb_tunnel *tb_tunnel_alloc_usb3(struct tb *tb, struct tb_port *up,
{
struct tb_tunnel *tunnel;
struct tb_path *path;
- int max_rate;
+ int max_rate = 0;
if (!tb_route(down->sw) && (max_up > 0 || max_down > 0)) {
/*