From patchwork Tue Nov 3 15:38:14 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Hannemann X-Patchwork-Id: 37515 X-Patchwork-Delegate: shemminger@vyatta.com Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by ozlabs.org (Postfix) with ESMTP id 9E945B7BC7 for ; Wed, 4 Nov 2009 03:10:14 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754124AbZKCQIp (ORCPT ); Tue, 3 Nov 2009 11:08:45 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754264AbZKCQIo (ORCPT ); Tue, 3 Nov 2009 11:08:44 -0500 Received: from mta-1.ms.rz.RWTH-Aachen.DE ([134.130.7.72]:61243 "EHLO mta-1.ms.rz.rwth-aachen.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751013AbZKCQIo (ORCPT ); Tue, 3 Nov 2009 11:08:44 -0500 X-Greylist: delayed 1800 seconds by postgrey-1.27 at vger.kernel.org; Tue, 03 Nov 2009 11:08:44 EST Content-transfer-encoding: 7BIT Received: from ironport-out-1.rz.rwth-aachen.de ([134.130.5.40]) by mta-1.ms.rz.RWTH-Aachen.de (Sun Java(tm) System Messaging Server 6.3-7.04 (built Sep 26 2008)) with ESMTP id <0KSJ00EWGI4NNV60@mta-1.ms.rz.RWTH-Aachen.de> for netdev@vger.kernel.org; Tue, 03 Nov 2009 16:38:47 +0100 (CET) X-IronPort-AV: E=Sophos; i="4.44,674,1249250400"; d="scan'208"; a="32316420" Received: from smarthost-2.ms.rz.rwth-aachen.de (HELO smarthost.rwth-aachen.de) ([134.130.7.90]) by ironport-in-1.rz.rwth-aachen.de with ESMTP; Tue, 03 Nov 2009 16:38:47 +0100 Received: from localhost.localdomain (informatik-4-137-226-12-85.nn.RWTH-Aachen.DE [137.226.12.85] (may be forged)) by smarthost.rwth-aachen.de (8.13.8+Sun/8.13.8/1) with ESMTP id nA3Fclw6019894; Tue, 03 Nov 2009 16:38:47 +0100 (CET) From: hannemann@nets.rwth-aachen.de To: shemminger@osdl.org Cc: netdev@vger.kernel.org, Arnd Hannemann Subject: [PATCH] iproute2: Avoid rounding errors for 100%. Date: Tue, 03 Nov 2009 16:38:14 +0100 Message-id: <1257262694-16985-1-git-send-email-hannemann@nets.rwth-aachen.de> X-Mailer: git-send-email 1.6.3.3 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Arnd Hannemann We noticed that a netem reorder percentage of 100% will still get packets reordered. This patch fixes that. Signed-off-by: Arnd Hannemann --- tc/tc_util.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/tc/tc_util.c b/tc/tc_util.c index fe2c7eb..2641f2e 100644 --- a/tc/tc_util.c +++ b/tc/tc_util.c @@ -363,8 +363,10 @@ int get_percent(__u32 *percent, const char *str) return -1; if (*p && strcmp(p, "%")) return -1; - - *percent = (unsigned) rint(per * max_percent_value); + if (per == 1.) + *percent = max_percent_value; + else + *percent = (unsigned) rint(per * max_percent_value); return 0; }