From patchwork Tue Nov 14 19:27:02 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 838002 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=networkplumber-org.20150623.gappssmtp.com header.i=@networkplumber-org.20150623.gappssmtp.com header.b="1MtO+40k"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3ybyFQ2Pvkz9rxj for ; Wed, 15 Nov 2017 06:27:22 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756083AbdKNT1U (ORCPT ); Tue, 14 Nov 2017 14:27:20 -0500 Received: from mail-pg0-f67.google.com ([74.125.83.67]:57115 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752510AbdKNT1M (ORCPT ); Tue, 14 Nov 2017 14:27:12 -0500 Received: by mail-pg0-f67.google.com with SMTP id z184so10710761pgd.13 for ; Tue, 14 Nov 2017 11:27:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=KwzdlN9u+riXD2LIucJ1moD+N8o8hVIpst7zAyhGa2U=; b=1MtO+40kPY29Kink3mltt7cp0acqCX2Bk8bbuwd/fdztHZdVPg1Db8jpJSQWJaPgep ubLDyH8nTZdrATZAWQU8wmwvv7+i7WitUlPU5umMVrQ2pHkus0bX7I5QawU5IFphhcGE TTsdEZlXLZdJaqzJMBN20MgSEI68BP6iJu28yuFzfeg3YOu1bo0HeJWXWONCGVLezU/d mODhK3klekfZ6pYYfwEIJCqgDnUackk/XFGw4491c806z/v2SDz2/ziA62ttF+PAOT0L iMKuwc0OGX1xQ3Z5vC78cz2dcGisJiNx+6q9KWzey/ya+xtMKBbfz9vTW2duulhGqIbV /IRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=KwzdlN9u+riXD2LIucJ1moD+N8o8hVIpst7zAyhGa2U=; b=XV//URde129Nzj9nCS7ysx0qfosPRviRDK8vKKqg6HoQY6AOjoQ5roHOaO2tH+/C2N HxGRRrfuo13tTbJvZJ+wzUWTrKB1QluN/Jy1o9EoCYKllOsLB1LhF/Uusjh9rL/e+L90 +FSodsMYP2CnB/0Ecq/pyOEeYG5ZhEngX+UZGA7B7j3SU0G0gkOImBoJZqoAeO1bai4+ kH3OGY6npb39BERZQDWngryN7Imr8jQOmJM2lalnmhJP1VJ/Bqze+6AdxY1pjJgBesqh 66gk8hfxAtNYVukj7dfbd+DZXgMatFJPEN3noDoty2YTiIAFpbON0MbI6BpiWuqhlNas BiJA== X-Gm-Message-State: AJaThX4XmXnSi/B5JnImWVuqfJOyLoLlfU+DI3cQ6tvyg0kjAFdh30Xn K111O3hJ5GDekJthAxg8jQ7qVg== X-Google-Smtp-Source: AGs4zMYJnSKeqkmgT3xgQusN0s9F4bJXnyx4U5jyqIXzbcdHDXXoXKybOl98VJLxPTZ184PztkqYUg== X-Received: by 10.101.86.196 with SMTP id w4mr13380786pgs.335.1510687631639; Tue, 14 Nov 2017 11:27:11 -0800 (PST) Received: from xeon-e3.lan (76-14-207-240.or.wavecable.com. [76.14.207.240]) by smtp.gmail.com with ESMTPSA id p12sm29997179pgn.60.2017.11.14.11.27.10 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 14 Nov 2017 11:27:10 -0800 (PST) From: Stephen Hemminger X-Google-Original-From: Stephen Hemminger To: stephen@networkplumber.org, jhs@mojatatu.com, xiyou.wangcong@gmail.com, jiri@resnulli.us, davem@davemloft.net Cc: netdev@vger.kernel.org, Stephen Hemminger Subject: [PATCH net-next v2 2/2] netem: remove unnecessary 64 bit modulus Date: Tue, 14 Nov 2017 11:27:02 -0800 Message-Id: <20171114192702.31193-3-sthemmin@microsoft.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20171114192702.31193-1-sthemmin@microsoft.com> References: <20171114192702.31193-1-sthemmin@microsoft.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Fix compilation on 32 bit platforms (where doing modulus operation with 64 bit requires extra glibc functions) by truncation. The jitter for table distribution is limited to a 32 bit value because random numbers are scaled as 32 bit value. Also fix some whitespace. Fixes: 99803171ef04 ("netem: add uapi to express delay and jitter in nanoseconds") Reported-by: Randy Dunlap Signed-off-by: Stephen Hemminger --- net/sched/sch_netem.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/sched/sch_netem.c b/net/sched/sch_netem.c index 644323d6081c..dd70924cbcdf 100644 --- a/net/sched/sch_netem.c +++ b/net/sched/sch_netem.c @@ -312,9 +312,9 @@ static bool loss_event(struct netem_sched_data *q) * std deviation sigma. Uses table lookup to approximate the desired * distribution, and a uniformly-distributed pseudo-random source. */ -static s64 tabledist(s64 mu, s64 sigma, +static s64 tabledist(s64 mu, s32 sigma, struct crndstate *state, - const struct disttable *dist) + const struct disttable *dist) { s64 x; long t; @@ -327,7 +327,7 @@ static s64 tabledist(s64 mu, s64 sigma, /* default uniform distribution */ if (dist == NULL) - return (rnd % (2*sigma)) - sigma + mu; + return (rnd % (2 * sigma)) - sigma + mu; t = dist->table[rnd % dist->size]; x = (sigma % NETEM_DIST_SCALE) * t;