From patchwork Fri Jan 12 05:07:29 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Fastabend X-Patchwork-Id: 859506 X-Patchwork-Delegate: bpf@iogearbox.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=gmail.com header.i=@gmail.com header.b="WYkzoqFi"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3zHrNH0qCnz9t2l for ; Fri, 12 Jan 2018 16:07:43 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754244AbeALFHl (ORCPT ); Fri, 12 Jan 2018 00:07:41 -0500 Received: from mail-pf0-f194.google.com ([209.85.192.194]:38326 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750714AbeALFHk (ORCPT ); Fri, 12 Jan 2018 00:07:40 -0500 Received: by mail-pf0-f194.google.com with SMTP id k19so3615795pfj.5 for ; Thu, 11 Jan 2018 21:07:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:from:to:cc:date:message-id:in-reply-to:references :user-agent:mime-version:content-transfer-encoding; bh=wgHDUF1+OeWGHbYTpadndSiqIVmnD+BDwUvFM45fFjc=; b=WYkzoqFiq3Y1kZ+DEgxJg4HOWFWFDWDu7dxNZpgz1vz3BqgBLjp8YH5fYuNCrD5KIY k5hYadKWMNcXmng4yerGyTn644L1YIwXk5QxxhuNrKZwrbAiCOM1IUQzHgyRlIRpEmi3 NUeFoVJOnXS8yJfz4Zg4dgEbMMqVOjs0i6ERgURLIxQhuR3cCy+8eg+pOpYALlutk0PI 94ljq0SIsJ99HxgHqX1ksm20WxR7AGg/LLshr2tuSw7YXwiIa5hfporgiRNCEtyO7+/J XwIxHJit+qEdBgnALENNJt2LZK0FBs/YbnI8XyJTfNCOGDhJTuAkwolJYcDmMugRVUxv OSDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:date:message-id:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=wgHDUF1+OeWGHbYTpadndSiqIVmnD+BDwUvFM45fFjc=; b=JdDUvjvvHjGkLZSJv+0Htxfvsp7KRyM0GVLaMtnTN0CwMX9jW5J82nRytYXnlWPJ12 zLxSdo4tnUqUhelhuRy+B6YkNTycdVzBBT3aUEf/00itqhbmTZ9DJOpfAKf0r21L10Qm Xt2RoovOGJPU9v5uo8RXfBpV3QEgNBbAqK/6V448HlK4chwlBmmG6IXd4CnpikW0uI17 zJgB95lkuINwRUtjCRgr9HfSvzC2//SVCXf+MSORRA6kRvNoHMjYifFeEVAJ8p0g3EQ3 bc+IryU3tX1pDRzb2KU2eHkFAw0atzqcYsBAQL64WcLZlexs/RvKrB6lrWbbtjP2Z0YG 4xzw== X-Gm-Message-State: AKwxytfx46TKFmxNL2IYNUMa3b0A0R4BJjOQzj7u7ViarjT4AWRlubP6 X9uypeDfYoU56pYZvYqhYYLFrQ== X-Google-Smtp-Source: ACJfBovNbMD2JBdmvsbMxm4uurDZsrQhHi+rBEqNXVn/UonZAT29Dl6lxmRnG82HXWXI6mgbaBd5TA== X-Received: by 10.159.247.135 with SMTP id e7mr4586173pls.156.1515733659579; Thu, 11 Jan 2018 21:07:39 -0800 (PST) Received: from [127.0.1.1] ([75.106.27.153]) by smtp.gmail.com with ESMTPSA id t69sm5549634pfa.180.2018.01.11.21.07.34 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 11 Jan 2018 21:07:38 -0800 (PST) Subject: [bpf-next PATCH v3 5/7] bpf: sockmap sample add base test without any BPF for comparison From: John Fastabend To: borkmann@iogearbox.net, john.fastabend@gmail.com, ast@kernel.org, kafai@fb.com Cc: netdev@vger.kernel.org Date: Thu, 11 Jan 2018 21:07:29 -0800 Message-ID: <20180112050728.5823.19190.stgit@john-Precision-Tower-5810> In-Reply-To: <20180112050243.5823.85987.stgit@john-Precision-Tower-5810> References: <20180112050243.5823.85987.stgit@john-Precision-Tower-5810> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Add a base test that does not use BPF hooks to test baseline case. Signed-off-by: John Fastabend Acked-by: Martin KaFai Lau --- samples/sockmap/sockmap_user.c | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/samples/sockmap/sockmap_user.c b/samples/sockmap/sockmap_user.c index 442fc00..c3295a7 100644 --- a/samples/sockmap/sockmap_user.c +++ b/samples/sockmap/sockmap_user.c @@ -287,18 +287,24 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt, static float giga = 1000000000; -static int sendmsg_test(int iov_count, int iov_buf, int cnt, int verbose) +static int sendmsg_test(int iov_count, int iov_buf, int cnt, + int verbose, bool base) { - int txpid, rxpid, err = 0; + float sent_Bps = 0, recvd_Bps = 0; + int rx_fd, txpid, rxpid, err = 0; struct msg_stats s = {0}; int status; - float sent_Bps = 0, recvd_Bps = 0; errno = 0; + if (base) + rx_fd = p1; + else + rx_fd = p2; + rxpid = fork(); if (rxpid == 0) { - err = msg_loop(p2, iov_count, iov_buf, cnt, &s, false); + err = msg_loop(rx_fd, iov_count, iov_buf, cnt, &s, false); if (err) fprintf(stderr, "msg_loop_rx: iov_count %i iov_buf %i cnt %i err %i\n", @@ -427,6 +433,7 @@ static int forever_ping_pong(int rate, int verbose) enum { PING_PONG, SENDMSG, + BASE, }; int main(int argc, char **argv) @@ -466,6 +473,8 @@ int main(int argc, char **argv) test = PING_PONG; } else if (memcmp(optarg, "sendmsg", 7) == 0) { test = SENDMSG; + } else if (memcmp(optarg, "base", 4) == 0) { + test = BASE; } else { usage(argv); return -1; @@ -491,6 +500,10 @@ int main(int argc, char **argv) /* catch SIGINT */ signal(SIGINT, running_handler); + /* If base test skip BPF setup */ + if (test == BASE) + goto run; + if (load_bpf_file(filename)) { fprintf(stderr, "load_bpf_file: (%s) %s\n", filename, strerror(errno)); @@ -522,6 +535,7 @@ int main(int argc, char **argv) return err; } +run: err = sockmap_init_sockets(); if (err) { fprintf(stderr, "ERROR: test socket failed: %d\n", err); @@ -531,7 +545,9 @@ int main(int argc, char **argv) if (test == PING_PONG) err = forever_ping_pong(rate, verbose); else if (test == SENDMSG) - err = sendmsg_test(iov_count, length, rate, verbose); + err = sendmsg_test(iov_count, length, rate, verbose, false); + else if (test == BASE) + err = sendmsg_test(iov_count, length, rate, verbose, true); else fprintf(stderr, "unknown test\n"); out: