Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp2083482ybl; Sat, 25 Jan 2020 16:12:29 -0800 (PST) X-Google-Smtp-Source: APXvYqyQtbtODm607yQQftF/ajYJnu/mL8ZPEbqDQvAeGhkx3y8hbwnWXKaDPe0M1fFfy0W8HnR8 X-Received: by 2002:a05:6830:1257:: with SMTP id s23mr7785965otp.241.1579997549589; Sat, 25 Jan 2020 16:12:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1579997549; cv=none; d=google.com; s=arc-20160816; b=he130o+vZbbLejYcZGgBeZfYJhanzN9hwl2tdSRTyL3g2MxdyL/Lq0XKUaBC8D2Fl6 Wpac8LHoMQQydj7kuYjbjAZI/81qdeiBnmyZ7gbm+GVLWlWE/GhPiFpSlrlSgZLp4tEj H6VHNe/RsGYpvWsgrQLLeR/4dhLwvGN7LHBCvDn8ww8974BzRKtDGLLtfV+MseBjQ9W6 quqYSbxA+cA7qzwtLiUj4WAtRzDTlHRUW4758VEocTSGsXPflbtNvxApY6CxhuKQcQ+1 jc6UoGepHKvHg8XyHzt/Q8US0oUf4ABo0pm26kPrbfxgHeP7zceOJbvQiBBSu/Eq7YZD vUyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=v9XRogtDFNa2HRB1ZF3nJLhz3YCNr9Gnt1WR8z5gbro=; b=OFEOR1qSirX25lscHYksrwhTUr/bOudR8MFV96YnmkCPS9ZTj/jZSl55X4BzKCUjtd FWPa7Id6mzof2OLLbFftsHZ+lh9H2uq78tD/sfTStqY7MNMg6V+dWxupq3aTtq9FEA4L Kzdwp6q1uFF09IEQ7zY0rzSBbLuT83QeVTQTAf0V+JkGuVsY8MqzAYnkn9vY/h/3Fnt/ Y9O4zbzernbi9AKgqKYYw9nXeUGInllwV5z4EhfRQxiPg0dcUl1onLie/JazW4MdiQyM SKO3bYQv039b9Gt02W+AqJoVMYQvaoW5ycbXbSSGT1Hz48P1xFe/fPQ5MU0sy6dOvZCS uAYQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 64si3869634otx.50.2020.01.25.16.12.15; Sat, 25 Jan 2020 16:12:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728864AbgAZAKC (ORCPT + 99 others); Sat, 25 Jan 2020 19:10:02 -0500 Received: from youngberry.canonical.com ([91.189.89.112]:45648 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727307AbgAZAKB (ORCPT ); Sat, 25 Jan 2020 19:10:01 -0500 Received: from 1.general.cking.uk.vpn ([10.172.193.212] helo=localhost) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1ivVUx-0006OK-4l; Sun, 26 Jan 2020 00:09:55 +0000 From: Colin King To: Stanislaw Gruszka , Kalle Valo , "David S . Miller" , Meenakshi Venkataraman , Wey-Yi Guy , Johannes Berg , linux-wireless@vger.kernel.org, netdev@vger.kernel.org Cc: kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH][next] iwlegacy: ensure loop counter addr does not wrap and cause an infinite loop Date: Sun, 26 Jan 2020 00:09:54 +0000 Message-Id: <20200126000954.22807-1-colin.king@canonical.com> X-Mailer: git-send-email 2.24.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Colin Ian King The loop counter addr is a u16 where as the upper limit of the loop is a an int. In the unlikely event that the il->cfg->eeprom_size is greater than 64K then we end up with an infinite loop since addr will wrap around an never reach upper loop limit. Fix this by making addr an int. Addresses-Coverity: ("Infinite loop") Fixes: be663ab67077 ("iwlwifi: split the drivers for agn and legacy devices 3945/4965") Signed-off-by: Colin Ian King --- drivers/net/wireless/intel/iwlegacy/common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/wireless/intel/iwlegacy/common.c b/drivers/net/wireless/intel/iwlegacy/common.c index d966b29b45ee..348c17ce72f5 100644 --- a/drivers/net/wireless/intel/iwlegacy/common.c +++ b/drivers/net/wireless/intel/iwlegacy/common.c @@ -699,7 +699,7 @@ il_eeprom_init(struct il_priv *il) u32 gp = _il_rd(il, CSR_EEPROM_GP); int sz; int ret; - u16 addr; + int addr; /* allocate eeprom */ sz = il->cfg->eeprom_size; -- 2.24.0