Received: by 2002:a05:6358:45e:b0:b5:b6eb:e1f9 with SMTP id 30csp941153rwe; Wed, 24 Aug 2022 11:41:27 -0700 (PDT) X-Google-Smtp-Source: AA6agR4GHTSADCf15D/f7wap+raLXVNQIlcFYOkLj2M9ttotGU4S3vU7L/Aba78SXdUTFOgBwUXH X-Received: by 2002:a17:906:7944:b0:73c:838:ac3d with SMTP id l4-20020a170906794400b0073c0838ac3dmr192850ejo.242.1661366487510; Wed, 24 Aug 2022 11:41:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661366487; cv=none; d=google.com; s=arc-20160816; b=TcNu04QSQ3Cm8DFCtf3nm5hO2/L9GuAjRz+VsBkeZg6Zu5kb5IkDRziVtjufWYFwLp S3cMBDxlar6b/APRYcRS5Ih1iAuYpYNNeu5t0jiP1fqDel/M4XNoAlQ59HICGwPaUymA 66VawzRdotCe79A+y3IecL5n3apJ29iTEM49Dj89dBnJj7aQfsnwa+xzj2tiA1CDhiUr g0TlEQvwPWL2puV/YpfMmDLZPLQFFyy5gLveJa5dwUvbobaHzomA99LI7u2mqzlpi2ph WvnE/D+ATQX8Un/27gawYcA8YdNtst5+s88RorR9IOtBJYutRptF+xQ8kvo098DkB08S D+Fw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=n6VLsvWXIz4UjtHlsmuUC9VbAunQhpMZsf7gkqqQZ2Y=; b=kWrjwLbwR0GTaC76ESg6z/BpGnysnTvjktGuz9E4O42iFMdG6Rbn+R3Fzjt7I7gDKt XfXDKZB75a8rzB3JKfXakChIAXRXLAfrZpKV6/Zq83ERsd7fi3W2mXDiR/bN0j+8lfyL jPijG+MppxN/IiX0dzs/rIM1/medNfMKcTN4YZqtj9RpK9hkmUgpylOH2DLkq9t6BcQE 13AvoB//+oNf66X8Xw6EWWtsWEYeaTbmo0XGELGLmZvtMvvYZrupHX6fAIraPCDeA9w6 NyB+aRi8QNiZCzfrG3uAIYR9tftRSgwud+G8o+Cy7x2gd1H5aDFFEdhQU9RchPsrO23z ZgRg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b="faDH/Hoc"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id sg34-20020a170907a42200b0073d94d17b5fsi2637514ejc.625.2022.08.24.11.41.01; Wed, 24 Aug 2022 11:41:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b="faDH/Hoc"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240412AbiHXSHf (ORCPT + 99 others); Wed, 24 Aug 2022 14:07:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34658 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240373AbiHXSHd (ORCPT ); Wed, 24 Aug 2022 14:07:33 -0400 Received: from mail-il1-x12d.google.com (mail-il1-x12d.google.com [IPv6:2607:f8b0:4864:20::12d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 09B386BCC1; Wed, 24 Aug 2022 11:07:33 -0700 (PDT) Received: by mail-il1-x12d.google.com with SMTP id o13so5084111ilt.3; Wed, 24 Aug 2022 11:07:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc; bh=n6VLsvWXIz4UjtHlsmuUC9VbAunQhpMZsf7gkqqQZ2Y=; b=faDH/HocgmiiUZY09EKlXYCW1XuMalpCM2E3GILA4rvtRzE8DS5T7K0CD6GHLX9ayy ayLhx6PEn1Bho8YSpGR6NiXGoYu0DzMS8gHaXWAEvfB7rMzBCpxtT6bLUKW9T806sFRp eln1H6Xt6A2Am9jEIPcTdR8/E0TkDvPZIWdUT8Uvb3fDFQvokCnQNplgIegXgRFkF1f5 wc1af73fVLrdAfoxo7GWRz8+/3XmHiXw/1diHj8FGQp1lJI+cU1CCtzbCrzP80m4DfFk yxwVJTmChD8B8Phyv47IFU//4RHqu7UZubLSZ3jjk2O38eT67cqV28GjB7Qecgzzifaz r2dw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc; bh=n6VLsvWXIz4UjtHlsmuUC9VbAunQhpMZsf7gkqqQZ2Y=; b=COxHnxoS7aPqnZn7SvoyvK1QcJPQe68UoKGK8Tq50slUqB/aTrKDomOaKLgw1le55d PHgcitOPFB7NZ3ZZ0TY5BqX14/jL3VcgAhntCB4EhUdKV9LMBkkXBBlaNXVQJqLDdjZa UWaTUjFhyGhWs6zcOjWmVmcu8Va50akvontkrmPmtSQ+LS4EzT66QouuKa+MteeL511G gOrxm67yTkqnQzL9o75OVj3ZC4Ze2whsaoarJzLvEonmhU6uXZAlfiAXiRzE7LhzoEUf BX9zQFmh5EVOB7OsMGwaWIb9ISHyJ80eJefdGNRUWDFGBE1jP6xwGEI7/HV/GdNcyROE YvNA== X-Gm-Message-State: ACgBeo08X6c8S/7ubMoIboBENgG6P21AToPJyaFZO0+7jgFjDgma0RjF gMDXwwNj7C/io0LEPATEu+3KTrnVvC86r4qEDNqblA5USLE= X-Received: by 2002:a05:6e02:20c1:b0:2e9:f747:ad54 with SMTP id 1-20020a056e0220c100b002e9f747ad54mr141644ilq.144.1661364452449; Wed, 24 Aug 2022 11:07:32 -0700 (PDT) MIME-Version: 1.0 References: <20220823182758.13401-1-khalid.masum.92@gmail.com> <20220823182758.13401-2-khalid.masum.92@gmail.com> In-Reply-To: From: Khalid Masum Date: Thu, 25 Aug 2022 00:07:21 +0600 Message-ID: Subject: Re: [PATCH 1/2] usb: ehci: Prevent possible modulo by zero To: Alan Stern Cc: Greg Kroah-Hartman , linux-usb@vger.kernel.org, Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > The usb_maxpacket() routine does a two-step computation. First, it > looks up the endpoint number in the pipe to get a usb_host_endpoint > pointer, and then it uses the pointer to get the maxpacket value. > Coverity complained that the lookup in the first step can fail, and that > is in fact true: If there is an interface or configuration change before > usb_maxpacket() is called, the endpoint number table can change and the > lookup may fail. > > But it turns out the first step isn't needed here at all, since the > endpoint pointer is already stored in the URB (by the code in That makes sense. Thanks for explaining. > usb_submit_urb() that I pointed out earlier). So an appropriate way to > fix the problem is to carry out just the second step: > > - maxpacket = usb_maxpacket(urb->dev, urb->pipe); > + maxpacket = usb_endpoint_maxp(&urb->ep->desc); > > This holds for both of your patches. Got you. > > Alan Stern -- Khalid Masum