From patchwork Wed Dec 5 18:52:36 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiong Wang X-Patchwork-Id: 1008387 X-Patchwork-Delegate: bpf@iogearbox.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@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; dmarc=none (p=none dis=none) header.from=netronome.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=netronome-com.20150623.gappssmtp.com header.i=@netronome-com.20150623.gappssmtp.com header.b="FJ9dhZW+"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 4397DD4KWkz9sB7 for ; Thu, 6 Dec 2018 05:53:32 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728276AbeLESx1 (ORCPT ); Wed, 5 Dec 2018 13:53:27 -0500 Received: from mail-wm1-f66.google.com ([209.85.128.66]:38408 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728245AbeLESxZ (ORCPT ); Wed, 5 Dec 2018 13:53:25 -0500 Received: by mail-wm1-f66.google.com with SMTP id m22so14059760wml.3 for ; Wed, 05 Dec 2018 10:53:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netronome-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=SaycexPksBnZAfn98yIOCyo3TL3WUS7kgUugcB+wf6w=; b=FJ9dhZW+cIZ4B8EgcWTCFjIx2opY+k7+9UuSLfFMUQszGwCFcl/Vayye1b1mKj1+g4 wKp7EpJuHcoOu7z2KTVizkSWvytrEdub+FW3h71xGF204p4xxRbWy6lLx4Rk4HHJJufu UkecmP8Hf9tUWgdqRK8iWOtQIq13cdplq7VraPUZkDH/Mv7zkj+uwB62TQz7zTTW5V0P kD0T03CL7Rd0HNHabxIoHsdu9qc2LJhwk1+33bEKYmywvyRnkMwaaQAup4R8+l/E3IER WXMDbGDUEM26JMfvltAhwttNhmIU3IF/8az0APKmhCedLdUCnlVCBj+3tTYbo79T87Ku PjTQ== 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=SaycexPksBnZAfn98yIOCyo3TL3WUS7kgUugcB+wf6w=; b=YFqTVoRVM4VDJxmNMadsokx0AXbTi1ccq+wmL42mnAfHF8IAq23dD8yrvZIWB4Ut2k uopd+yQ60SJjEDmjFS7f9H95rDvSjU36XNIJBk5+VO0ETTkhrOU7SKUTwre1YVglpUQI R2WS2O4hAw2wqkvbgl1P0PQSncCoi/1fk0q3+AsmqceeB9Btq/9qRJtm0JWJQZVWFjjd JCP+Xmp/xnl7N+716QiJJ7iTNQotI9FZENUXEPqtMrnFToX/0yinDE7nlawP7MGAItKq Yc9ZZDZQGWkBUBbY1VMV4vp6dAGhZNSCFjNyNYKYnf16QIuiWy8KJ/bHqicKyB+w+4Jl AgOg== X-Gm-Message-State: AA+aEWaj8jaV8rfa7j9pxwVusFa6IGpDGX52MpCN3GXD4cG7yLgjSQHn bjeIZjtziy3RvwXefCI4yRBCdlXtryY= X-Google-Smtp-Source: AFSGD/V1qGQYMwNY3nWnT/kRuyW6SEKamKRGk+fM0gZxESHP9Uu8OxhTD3mLAmWK2wLJ/V1v5iW5nA== X-Received: by 2002:a1c:1688:: with SMTP id 130mr13377030wmw.86.1544036003493; Wed, 05 Dec 2018 10:53:23 -0800 (PST) Received: from cbtest28.netronome.com ([217.38.71.146]) by smtp.gmail.com with ESMTPSA id s81sm15803251wmf.14.2018.12.05.10.53.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 05 Dec 2018 10:53:22 -0800 (PST) From: Jiong Wang To: daniel@iogearbox.net, ast@kernel.org Cc: netdev@vger.kernel.org, oss-drivers@netronome.com, Jiong Wang Subject: [PATCH v2 bpf-next 7/7] selftests: bpf: update testcases for BPF_ALU | BPF_ARSH Date: Wed, 5 Dec 2018 13:52:36 -0500 Message-Id: <1544035956-12375-8-git-send-email-jiong.wang@netronome.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1544035956-12375-1-git-send-email-jiong.wang@netronome.com> References: <1544035956-12375-1-git-send-email-jiong.wang@netronome.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org "arsh32 on imm" and "arsh32 on reg" now are accepted. Also added two new testcases to make sure arsh32 won't be treated as arsh64 during interpretation or JIT code-gen for which case the high bits will be moved into low halve that the testcases could catch them. Reviewed-by: Jakub Kicinski Signed-off-by: Jiong Wang --- tools/testing/selftests/bpf/test_verifier.c | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/bpf/test_verifier.c b/tools/testing/selftests/bpf/test_verifier.c index 18d0b7f..e7f1bc7 100644 --- a/tools/testing/selftests/bpf/test_verifier.c +++ b/tools/testing/selftests/bpf/test_verifier.c @@ -721,8 +721,18 @@ static struct bpf_test tests[] = { BPF_ALU32_IMM(BPF_ARSH, BPF_REG_0, 5), BPF_EXIT_INSN(), }, - .result = REJECT, - .errstr = "unknown opcode c4", + .result = ACCEPT, + .retval = 0, + }, + { + "arsh32 on imm 2", + .insns = { + BPF_LD_IMM64(BPF_REG_0, 0x1122334485667788), + BPF_ALU32_IMM(BPF_ARSH, BPF_REG_0, 7), + BPF_EXIT_INSN(), + }, + .result = ACCEPT, + .retval = -16069393, }, { "arsh32 on reg", @@ -732,8 +742,19 @@ static struct bpf_test tests[] = { BPF_ALU32_REG(BPF_ARSH, BPF_REG_0, BPF_REG_1), BPF_EXIT_INSN(), }, - .result = REJECT, - .errstr = "unknown opcode cc", + .result = ACCEPT, + .retval = 0, + }, + { + "arsh32 on reg 2", + .insns = { + BPF_LD_IMM64(BPF_REG_0, 0xffff55667788), + BPF_MOV64_IMM(BPF_REG_1, 15), + BPF_ALU32_REG(BPF_ARSH, BPF_REG_0, BPF_REG_1), + BPF_EXIT_INSN(), + }, + .result = ACCEPT, + .retval = 43724, }, { "arsh64 on imm",