Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp795611yba; Fri, 26 Apr 2019 08:53:17 -0700 (PDT) X-Google-Smtp-Source: APXvYqwpo4NK0W1p6Jmez66iaH9XE8XF6qqWdzz9HcE/19HmHSMYDKCoOtwgkGH0emWVQ5Kp/qGG X-Received: by 2002:a17:902:e402:: with SMTP id ci2mr11379911plb.154.1556293997677; Fri, 26 Apr 2019 08:53:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556293997; cv=none; d=google.com; s=arc-20160816; b=FCEP4DT3Fr5UQnRsOsWeZVNWzwcPSUpp/Xbhe/IRx5ueJMsYe+wfbchHu4NyY1Q7AH ZCw0Mh3FhQ3FEMLwve+8MhsfOoMj0uuQbR2hhFZ7qb3I9RoqlPEWRbGyRPClhiDxs2ka jd7/QKFjUou3Cw0w+X7UkRNlxKsgFA+ZAhgf6dFkql07+AA5CCRfLtNZvXExpSbhcgyC NuCFbk2+JjffFh/I6G03IF8ijvTGK+65PL87ziVX7vlrL5+rFRN1mhCIW//aLhdb5pAz Ky/BrX9Tbxd0qt4DaqotN/bpyRL+W+VJHhSZ4Zyl3XYPZ0yWI/4kMjsKLP8Y3G2oi2+t v3og== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=MyGoYsy0dN3k8pVgiEb5o4itS/U7KcJ870ynPtHnyhQ=; b=jFaC7DwTFvYqvKkKyFhLlwF0oG8GBXHZxcfC32O/QfQ6GylescJs5soaRx1X/wv5eY ecRX57LoeAC08xMIvLcl1Dejv6VSmqNzdiW+R9ynPXqKb8piyAv5ZctpOsHgFm1+OZfP o9dBRJ8tVoSgveSqQ6dQ7gBRCi6fTiKB+BKq284AGV0zS8iFPXulR1UHwOVxQV4K59kV 44CQXsD3YZNPLgXFZ7zxaM2DKqTODaLpNk/jPbot/nRoGxNkvZYpsPhVnN4/P56+lrKS sg2kuOJJzWTGkT3Ml3JegIGCfZ+PXM/CxX5l+YcElJTtbzB3L4iBVogxy/JSYy+Llku5 nVaw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=K1ilNNQC; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j1si11735012pgs.311.2019.04.26.08.53.01; Fri, 26 Apr 2019 08:53:17 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=K1ilNNQC; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726803AbfDZPuM (ORCPT + 99 others); Fri, 26 Apr 2019 11:50:12 -0400 Received: from mail-ed1-f65.google.com ([209.85.208.65]:35450 "EHLO mail-ed1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726679AbfDZPuL (ORCPT ); Fri, 26 Apr 2019 11:50:11 -0400 Received: by mail-ed1-f65.google.com with SMTP id y67so3597022ede.2; Fri, 26 Apr 2019 08:50:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=MyGoYsy0dN3k8pVgiEb5o4itS/U7KcJ870ynPtHnyhQ=; b=K1ilNNQCMQQKNCY99Cmw6FKmayssrBL3yGMyAV61HXIXAcRiXpBiabGeW8/ESULGzy AIwD97CRurWve6MlVOkphjj+yx1InUa75L3icz7TlS+dtskDdwzqZol65vz7NKaKuD1I +W86bd/3hp0TXwMybc/M2pAm2imbnDimb0MZS861s625SU0ynxzhK/xDLG5rYjSU4eXI MTytB+qJ4xybq1KdZ0TXpmCepCaZIVRcuGSnnCrAzgv7vRF9ZDFUDkzayv3TROfnM7Gt S+u4VdzRmUJbHV6UP5csVJJ/MMNuV3Kpg2tMa26/Skb7Q9fYzdK7YC04JkVGHu3Z+Atn CxAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=MyGoYsy0dN3k8pVgiEb5o4itS/U7KcJ870ynPtHnyhQ=; b=hgQqq4IEVXQtHy8qHtvEJwfmy9pohdrDAYbJZ0T3xUcAuV0+gjHso2ZGesX/wQS6S7 g8BHVBlsyUOUTmNp1qENl0CjvQwOdKkzxT/MDX0dXUTCsdQXBFfplZeED2/l6EwWP+e+ YRq5YixlufQeUBV1KyB20whvEaeVMlb9U+/5meCYwLecuoxyIgUtpcHEPmpl9ZP5y/61 uD8fLF4dLXFIK6OE4ArWA7FYaR8EAfiAnL0ZpqQbTjbMjVOkQWy+IXR+aJN8eoFqVInS ylzyb0+QD3fV+jNK4EU41FbvkafVB1EWHo9i8R3wlETBUgg8o47xyGJT1GiUpVueosCo suxA== X-Gm-Message-State: APjAAAX9eh7EZYNnyt8/nBc80JB/JnFz4jN/Ai4ZudDk6fMqgpzuzASk MFJjYcNzbpgVCqzc1G4jPBM5BS5I+bofZg== X-Received: by 2002:a05:6402:1557:: with SMTP id p23mr28290291edx.27.1556293809326; Fri, 26 Apr 2019 08:50:09 -0700 (PDT) Received: from neptune.fritz.box ([178.19.216.175]) by smtp.gmail.com with ESMTPSA id f15sm4603002eja.39.2019.04.26.08.50.06 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 26 Apr 2019 08:50:07 -0700 (PDT) From: Alban Crequy X-Google-Original-From: Alban Crequy To: john.fastabend@gmail.com, ast@kernel.org, daniel@iogearbox.net Cc: bpf@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, alban@kinvolk.io, iago@kinvolk.io Subject: [PATCH bpf-next v3 4/4] selftests: bpf: verifier: read netns_dev and netns_ino from struct bpf_sock_ops Date: Fri, 26 Apr 2019 17:48:48 +0200 Message-Id: <20190426154848.23490-4-alban@kinvolk.io> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190426154848.23490-1-alban@kinvolk.io> References: <20190426154848.23490-1-alban@kinvolk.io> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Alban Crequy Tested with: > $ sudo ./test_verifier > ... > #905/p sockops accessing bpf_sock_ops->netns_dev, ok OK > #906/p sockops accessing bpf_sock_ops->netns_ino, ok OK > ... > Summary: 1421 PASSED, 0 SKIPPED, 0 FAILED Signed-off-by: Alban Crequy --- Changes since v1: - This is a new selftest (review from Song) Changes since v2: - test partial reads on netns_dev (review from Y Song) - split in two tests --- .../testing/selftests/bpf/verifier/var_off.c | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/tools/testing/selftests/bpf/verifier/var_off.c b/tools/testing/selftests/bpf/verifier/var_off.c index 8504ac937809..9e4c6c78eb9d 100644 --- a/tools/testing/selftests/bpf/verifier/var_off.c +++ b/tools/testing/selftests/bpf/verifier/var_off.c @@ -246,3 +246,56 @@ .result = ACCEPT, .prog_type = BPF_PROG_TYPE_LWT_IN, }, +{ + "sockops accessing bpf_sock_ops->netns_dev, ok", + .insns = { + BPF_LDX_MEM(BPF_DW, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev)), + + BPF_LDX_MEM(BPF_W, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev)), + BPF_LDX_MEM(BPF_W, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 4), + + BPF_LDX_MEM(BPF_H, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev)), + BPF_LDX_MEM(BPF_H, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 2), + BPF_LDX_MEM(BPF_H, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 4), + BPF_LDX_MEM(BPF_H, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 6), + + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev)), + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 1), + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 2), + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 3), + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 4), + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 5), + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 6), + BPF_LDX_MEM(BPF_B, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_dev) + 7), + BPF_MOV64_IMM(BPF_REG_0, 0), + BPF_EXIT_INSN(), + }, + .result = ACCEPT, + .prog_type = BPF_PROG_TYPE_SOCK_OPS, +}, +{ + "sockops accessing bpf_sock_ops->netns_ino, ok", + .insns = { + BPF_LDX_MEM(BPF_DW, BPF_REG_4, BPF_REG_1, offsetof(struct bpf_sock_ops, + netns_ino)), + BPF_MOV64_IMM(BPF_REG_0, 0), + BPF_EXIT_INSN(), + }, + .result = ACCEPT, + .prog_type = BPF_PROG_TYPE_SOCK_OPS, +}, -- 2.20.1