From patchwork Thu Sep 28 04:50:07 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bin Meng X-Patchwork-Id: 819412 X-Patchwork-Delegate: marek.vasut@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="PXfV1EGD"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3y2hw31fqBz9t3x for ; Thu, 28 Sep 2017 14:45:53 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 8F9C5C21DA4; Thu, 28 Sep 2017 04:45:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 23157C21C4A; Thu, 28 Sep 2017 04:45:45 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 4D1FFC21C4A; Thu, 28 Sep 2017 04:45:44 +0000 (UTC) Received: from mail-pg0-f65.google.com (mail-pg0-f65.google.com [74.125.83.65]) by lists.denx.de (Postfix) with ESMTPS id 8D0C8C21C39 for ; Thu, 28 Sep 2017 04:45:43 +0000 (UTC) Received: by mail-pg0-f65.google.com with SMTP id u136so577137pgc.0 for ; Wed, 27 Sep 2017 21:45:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id; bh=GbgU5FSWYxR+PQ+auj80C+WKGJ3OUllrOOa83bhxAGU=; b=PXfV1EGDJ3i9DHlP7ILfY4cpyqHnbsnF7CbOABkhnvTVvUw3c2bDd1d8frGr5bkFfC jZ+QI4HCUiquLgB4+swJ/Iuh3ec7fzgkHoMaqC9BOCiIKy+qSlQrk6txNRQLqAKmUHL1 VArikiBuPQ1Ci20ULa416oBbroe6Z6SEFK77NmAbroAnuP4XUooD7thccWHQGIO/ulvt 3lM3RAkSbvXBc9UiTUW6H4t1FeCARbeiqlQrgus1F40k7HRe4vpzqNXQyVPdBD61sqh+ 5A+lon6hfssM8Q565mSpHxzYFAHuXAi5OB95SZFQ8nG5EWwklHYCPqt5kp4tm8+4sXYo iCvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id; bh=GbgU5FSWYxR+PQ+auj80C+WKGJ3OUllrOOa83bhxAGU=; b=ecaVYeDtetgdTe4GMuY7THrRyI1n8GGGuq8CwPlaKdVCedQ0mV9tMAyv57SCnOhvET sKfers+oyfQjVREitnNPhVIL3NuS5P+NPmv9VPCH6LK5TaUQTB/cXeVHguXruOJzpHPV u4nEOZa5a/WdLkarOrxaadtvc2BTou7kWygGgkXlf4OVZOxFT7/9qLH0rO1UoXXtNaOW 4Ni+/II3ArlMYKsyvQP56l/SyihIeUxG4wUaHvI163v9B9YhvP00c7jJXQwafz0GjWpl y7MBWi2X2KmYvlOaFBHmzHTP37WF+rSniee7IpJGpFYjjvfDWn8wprcHX5NiZutdAUD+ wQxA== X-Gm-Message-State: AHPjjUjheMpqf2QSKOgNnTnVc7wMX/MpD/HhLNM6HMXwawC3o2zBuCBF qfaeUV2Tow53Le7Q1qOT/BDwdQ== X-Google-Smtp-Source: AOwi7QDNBRbx/uvsg/F31KGq3lKaUV31Q4YAXQgIM99ZbsxZgndZpm+Zr78lh1ag8fAXf8DIWFoV4w== X-Received: by 10.84.133.131 with SMTP id f3mr3083839plf.446.1506573942006; Wed, 27 Sep 2017 21:45:42 -0700 (PDT) Received: from ala-d2121-lx1.wrs.com (unknown-156-139.windriver.com. [147.11.156.139]) by smtp.gmail.com with ESMTPSA id 78sm823058pfk.70.2017.09.27.21.45.40 (version=TLS1_1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 27 Sep 2017 21:45:41 -0700 (PDT) From: Bin Meng To: Marek Vasut , U-Boot Mailing List Date: Wed, 27 Sep 2017 21:50:07 -0700 Message-Id: <1506574207-28971-1-git-send-email-bmeng.cn@gmail.com> X-Mailer: git-send-email 1.7.9.5 Subject: [U-Boot] [PATCH] usb: storage: Fix overwritten in usb_stor_set_max_xfer_blk() X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" The stored 'blk' value is overwritten to 'size / 512' before it can be used in usb_stor_set_max_xfer_blk(). This is not what we want. In fact, when 'size' exceeds the upper limit (USHRT_MAX * 512), we should simply assign 'size' to the upper limit. Reported-by: Coverity (CID: 167250) Signed-off-by: Bin Meng --- common/usb_storage.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/usb_storage.c b/common/usb_storage.c index a57570b..a91b1c0 100644 --- a/common/usb_storage.c +++ b/common/usb_storage.c @@ -964,7 +964,7 @@ static void usb_stor_set_max_xfer_blk(struct usb_device *udev, blk = 20; } else { if (size > USHRT_MAX * 512) - blk = USHRT_MAX; + size = USHRT_MAX * 512; blk = size / 512; } #endif