From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lf1-x142.google.com (mail-lf1-x142.google.com [IPv6:2a00:1450:4864:20::142]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 9C5FF3B29E for ; Thu, 2 Jan 2020 16:58:06 -0500 (EST) Received: by mail-lf1-x142.google.com with SMTP id b15so30770734lfc.4 for ; Thu, 02 Jan 2020 13:58:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=35q6Jfi2CC23jXWt4F+Y2RbWyKxhwN9lDjJC7r78ZIs=; b=vMMuuA9l9972ihHdc7hjdkhsUVFWoxUnVs30y5dRjb3CjWQx9INuW//pxcQsuPE3lK Qs5GuIuqd652A0/gkHUbVATgkvp+BBRr99JZEmO00EZzL5OhL8yhYWuRwYnAJ7B1JKsa L+JcjINjfBEmT57PMS2GroCkEB98e8ZJW5a3Sj8ySANKrEra0SoIwIlBU1jMMG1/ASQ5 FulOqXC4EGJf8f7vUmi1EA3uyutDHPMdRRLljmIKD13XEzZmnicUFeo6fsqXIOZUr2pq JtQ+EGKef/UYlcc5aSKTtSUtwKgqjtnOR7mNL7uh6TEakjx0EkK5/P9FBdo+353rQVUc MOaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=35q6Jfi2CC23jXWt4F+Y2RbWyKxhwN9lDjJC7r78ZIs=; b=cvrX6CRM4JXfMxEhmxkrW4rtF4k8ds2aQKmDEImhGY3/Y5diRp15Zc4dXxDUrhq/mh iUMV8mnA7c9Kbuz5PIdTzBA7YeOf5A1mxi+Er5NtxJ/Bmo1XJSLCs7z++dyr6fidR5z8 rYPA1BdtweflKEiXUxnPofHoPxx4ePxIQgJSSujMEMSD8J2BYiuPIuNwFJIt73RZ2nd+ s4Q3Og1GiYks8ROovPJ81lGDr1pKv9L7a2mQkOQb0KWVQBiOpeZpEt62rGoKpna8O+2B 1VcExSpgSdWyP86QIK7Fu9B7yuY0zPMZRyiHFJzQr4tG8sR3iTVDacMHn1nUB2f3agb2 xDnQ== X-Gm-Message-State: APjAAAVZHXPDWjopTpEKBahj/LEc4W9cMEDvLcCBADqR22RJUcfOyz+7 KztgHIIgrrQxtg28C6ijbGQ= X-Google-Smtp-Source: APXvYqwNwYpvQH3/oHzSQ5p43kTZlE979UrLxObLsg8UQhaOw2EWVmcuqb7E91wSH4HsXr7hSAKeBQ== X-Received: by 2002:a19:6a06:: with SMTP id u6mr48503903lfu.187.1578002285376; Thu, 02 Jan 2020 13:58:05 -0800 (PST) Received: from jonathartonsmbp.lan (83-245-229-102-nat-p.elisa-mobile.fi. [83.245.229.102]) by smtp.gmail.com with ESMTPSA id p12sm23687003lfc.43.2020.01.02.13.58.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 02 Jan 2020 13:58:04 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) From: Jonathan Morton In-Reply-To: <20200102092143.8971-1-wenyang@linux.alibaba.com> Date: Thu, 2 Jan 2020 23:58:02 +0200 Cc: =?utf-8?Q?Toke_H=C3=B8iland-J=C3=B8rgensen?= , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, cake@lists.bufferbloat.net, Kevin Darbyshire-Bryant , Cong Wang , "David S . Miller" Content-Transfer-Encoding: quoted-printable Message-Id: <0750BA89-01A1-4126-9BEF-2C6AC607A5BD@gmail.com> References: <20200102092143.8971-1-wenyang@linux.alibaba.com> To: Wen Yang X-Mailer: Apple Mail (2.3445.9.1) Subject: Re: [Cake] [PATCH] sch_cake: avoid possible divide by zero in cake_enqueue() X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Jan 2020 21:58:06 -0000 > On 2 Jan, 2020, at 11:21 am, Wen Yang = wrote: >=20 > The variables 'window_interval' is u64 and do_div() > truncates it to 32 bits, which means it can test > non-zero and be truncated to zero for division. > The unit of window_interval is nanoseconds, > so its lower 32-bit is relatively easy to exceed. > Fix this issue by using div64_u64() instead. That might actually explain a few things. I approve. Honestly the *correct* fix is for the compiler to implement division in = a way that doesn't require substituting it with function calls. As this = shows, it's error-prone to do this manually. - Jonathan Morton=