From patchwork Sat May 23 10:33:20 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tonghao Zhang X-Patchwork-Id: 1296675 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20161025 header.b=UMkYvPYY; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49Tfpx5nX7z9sPK for ; Sat, 23 May 2020 20:34:01 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id A2184883D4; Sat, 23 May 2020 10:33:59 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id RHT+ObZQJYLg; Sat, 23 May 2020 10:33:54 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by whitealder.osuosl.org (Postfix) with ESMTP id E7A7D88472; Sat, 23 May 2020 10:33:52 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id D41A5C0176; Sat, 23 May 2020 10:33:52 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists.linuxfoundation.org (Postfix) with ESMTP id B689EC0892 for ; Sat, 23 May 2020 10:33:49 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 91DF2886DF for ; Sat, 23 May 2020 10:33:49 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DE6Ini6YILR1 for ; Sat, 23 May 2020 10:33:46 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-pl1-f193.google.com (mail-pl1-f193.google.com [209.85.214.193]) by hemlock.osuosl.org (Postfix) with ESMTPS id D6CCE88776 for ; Sat, 23 May 2020 10:33:45 +0000 (UTC) Received: by mail-pl1-f193.google.com with SMTP id k22so5424446pls.10 for ; Sat, 23 May 2020 03:33:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=fy6OJsoIsoSMcx0B4LQhdHzQphHIaDJ/nInYnbdHYZI=; b=UMkYvPYYnUqj+UBiT2Gvm0UFc8wcL6VPtFKixjIzXURROx4NW19TzzvIzmydP4g9xc O9qk06Ek28SAyFIMNnSISFZaBnMQkxdMngda6GG1mncP2juKfHLJ7RpFAGnwvR3PQKXv Y/6eRgXuO7GVDm1sEINSsflyxhNn9qkwrFsXlgEQu2PZjYxBMwaZA7A8YZ8DS1IBQreK T6VpV4E339pMdrMPNA6pBlPt2jBdyUd3BsxK15NlAunkX31ULBcYEkcE/YEw8f1FI9v+ 2FfXhtB3NoS/phafLbFZeZG+QZsyGYinGJ2RxpLGVrXA0EjDUjXTF4BsgTaV2DEBwq9K S/PQ== 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=fy6OJsoIsoSMcx0B4LQhdHzQphHIaDJ/nInYnbdHYZI=; b=RZGeU6k5ypGzQsC4MfThT1DtqBt9f0GibJcJ9EgpSYEewRG8mgkNCCi01m+vkOrRfa ZlPN0rv42gTjXLp9Lm6vukcKwtPRrYqJBUL45kbSbZYI1UwKpStoFnjV65H7m8cgrXfs SRcgfo1Cfqpe695dcKgIInOBPyRse9Y6WaTlZmv3eLcMSfoLpa2vxXtRox7x61isKdmV EYBKjhpP2mpSFRRX/RuWKceVP7yDUWBhg4I4pMfsayQ0GeyG/PS/s4DEXEcR3lNnMcvw lQjU7TDUulqnazoFUmWRA2g7nsyADB5H2jBciRdehNKt5h2l/p/shY1LkPgSCQhsw1/e F2nA== X-Gm-Message-State: AOAM533foj53ySSBFLR+jBSPMcFa+cGN//z3AifIQX/J1wPNRHIDSbdn mA97jNI3hy4WsoAquaX7Xw4= X-Google-Smtp-Source: ABdhPJxLrXmdvpO08TGDj4BTmjDg629Ro+ufkVi4dNVFDdsiZ1B2P2qQ+J+lCgE1RaQUpYaV3jxvXQ== X-Received: by 2002:a17:902:5a04:: with SMTP id q4mr18939897pli.284.1590230025434; Sat, 23 May 2020 03:33:45 -0700 (PDT) Received: from localhost.localdomain ([203.100.54.194]) by smtp.gmail.com with ESMTPSA id mt3sm1405205pjb.23.2020.05.23.03.33.42 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 23 May 2020 03:33:44 -0700 (PDT) From: xiangxia.m.yue@gmail.com To: i.maximets@ovn.org, u9012063@gmail.com, jarno@ovn.org, blp@ovn.org, azhou@ovn.org, pshelar@ovn.org Date: Sat, 23 May 2020 18:33:20 +0800 Message-Id: <20200523103320.47497-5-xiangxia.m.yue@gmail.com> X-Mailer: git-send-email 2.15.0 In-Reply-To: <20200523103320.47497-1-xiangxia.m.yue@gmail.com> References: <20200523103320.47497-1-xiangxia.m.yue@gmail.com> Cc: dev@openvswitch.org Subject: [ovs-dev] [PATCH ovs-dev v3 4/4] Revert "dpif-netdev: includes microsecond delta in meter bucket calculation". X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" From: Tonghao Zhang This reverts commit 5c41c31ebd64fda821fb733a5784a7a440a794f8. Use the pktgen-dpdk to test the commit 5c41c31ebd64 ("dpif-netdev: includes microsecond delta in meter bucket calculation"), it does't work as expected. And it broken the meter function (e.g. set rate 200Mbps, the rate watched was 400Mbps). To reproduce it: $ ovs-vsctl add-br br-int -- set bridge br-int datapath_type=netdev $ ovs-ofctl -O OpenFlow13 add-meter br-int \ "meter=100 kbps burst stats bands=type=drop rate=200000 burst_size=200000" $ ovs-ofctl -O OpenFlow13 add-flow br-int \ "in_port=dpdk0 action=meter:100,output:dpdk1" $ pktgen -l 1,3,5,7,9,11,13,15,17,19 -n 8 --socket-mem 4096 --file-prefix pg1 \ -w 0000:82:00.0 -w 0000:82:00.1 -- -T -P -m "[3/5/7/9/11/13/15].[0-1]" -f meter-test.pkt meter-test.pkt: | set 0 count 0 | set 0 size 1500 | set 0 rate 100 | set 0 burst 64 | set 0 sport 1234 | set 0 dport 5678 | set 0 prime 1 | set 0 type ipv4 | set 0 proto udp | set 0 dst ip 1.1.1.2 | set 0 src ip 1.1.1.1/24 | set 0 dst mac ec:0d:9a:ab:54:0a | set 0 src mac ec:0d:9a:bf:df:bb | set 0 vlanid 0 | start 0 Note that 42697ca7757b ("dpif-netdev: fix meter at high packet rate.") has fixed it as 5c41c31ebd64. Cc: Ilya Maximets Cc: William Tu Cc: Jarno Rajahalme Cc: Ben Pfaff Cc: Andy Zhou Cc: Jiang Lidong Cc: Pravin Shelar Signed-off-by: Tonghao Zhang --- lib/dpif-netdev.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index 776a16dab6e8..46eb1e3d97c9 100644 --- a/lib/dpif-netdev.c +++ b/lib/dpif-netdev.c @@ -5904,7 +5904,6 @@ dp_netdev_run_meter(struct dp_netdev *dp, struct dp_packet_batch *packets_, struct dp_packet *packet; long long int long_delta_t; /* msec */ uint32_t delta_t; /* msec */ - uint32_t delta_in_us; /* usec */ const size_t cnt = dp_packet_batch_size(packets_); uint32_t bytes, volume; int exceeded_band[NETDEV_MAX_BURST]; @@ -5935,9 +5934,6 @@ dp_netdev_run_meter(struct dp_netdev *dp, struct dp_packet_batch *packets_, Assuming that all racing threads received packets at the same time to avoid overflow. */ long_delta_t = 0; - delta_in_us = 0; - } else { - delta_in_us = (now - meter->used) % 1000; } /* Make sure delta_t will not be too large, so that bucket will not @@ -5973,7 +5969,6 @@ dp_netdev_run_meter(struct dp_netdev *dp, struct dp_packet_batch *packets_, /* Update band's bucket. */ band->bucket += (uint64_t)delta_t * band->up.rate; - band->bucket += delta_in_us * band->up.rate / 1000; if (band->bucket > band->up.burst_size) { band->bucket = band->up.burst_size; }