Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp124062pxu; Tue, 5 Jan 2021 06:50:31 -0800 (PST) X-Google-Smtp-Source: ABdhPJzSePlYXo5bOZQOFEyJ2ugN0kl476uXEpkHtJa5NOb9cwmb2zqCZW75Bw8RmpxgSktwxlT+ X-Received: by 2002:a17:906:1f07:: with SMTP id w7mr48426246ejj.519.1609858231404; Tue, 05 Jan 2021 06:50:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1609858231; cv=none; d=google.com; s=arc-20160816; b=hr5v5MS54jWiihF1ZKzup/0cngg9QXf3b2iCK8ehzrUyoQh5T5T7rHtRw4EMjLiiHh r4DaRc84H/qEqIj4dZkHqKMMCLj3U3J0okmhTlPvozraZmlwAqGDLv/jIWaMD8Unx8wh Y1THq0sK74LuDDLYyww3tLqQz9iq7eJbs/u+9OBq2FUwc19dnBbyvwJ+iPFO2VlU0HIk LSY2jofyvGF+pqxXIHIyWqyPQZwh5QWQhuQZcy9A0Tcist4sf2a5J3uGD+ibPRICrN5E cUIwIf+iUr2/9la/NdbsbyrN0GNEK9kFYx4GqR6SgkePf75jeYgnkG1cgTGsi3h8wW6F Dc/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:to:from:dkim-signature; bh=Ck7qcYaRgPRQcL+L9+SdKy8V4CbGtzpFdqcT1NLUuDY=; b=h2wZ+ZfTCS0+n/lTuz872lAJn+ilEsA9u9VlRUzjAsyzpl25IXtBIL15tY9QU18BVH adJj3OiKXTMk4N7SlUPuqLXqcbDH2YaG675PHUUlqviv3uNsMR73aS+IXHbU06kmXxZd tj+UEhm5FVDt3eBSMmrI+mx5e6HXHQjfQESWNt4MIizZpLlQ4+Wc2OH7CS4VvICejpqG lMStwGdiwgzjh2EWNyg/8QlaUtZOXb3Oo70xwJkMElNJrhPicj6adx2qPAblDOxa0oaq 7uw8QmU4NebDfVmQspaCmBKn/2mbCUvmGHb7ETkmnfCrMb1LroH2zlzEqmgMaDVj4bhI fmhg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@mess.org header.s=2020 header.b=RKRuRNaO; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n6si29420750ejc.567.2021.01.05.06.50.07; Tue, 05 Jan 2021 06:50:31 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail header.i=@mess.org header.s=2020 header.b=RKRuRNaO; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728032AbhAEOqS (ORCPT + 99 others); Tue, 5 Jan 2021 09:46:18 -0500 Received: from gofer.mess.org ([88.97.38.141]:54255 "EHLO gofer.mess.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726694AbhAEOqR (ORCPT ); Tue, 5 Jan 2021 09:46:17 -0500 Received: by gofer.mess.org (Postfix, from userid 1000) id 7A5CEC637E; Tue, 5 Jan 2021 14:45:34 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mess.org; s=2020; t=1609857934; bh=iJ86QbxBrhi/nSJypbCAMvYcDP4l2HigQ2w1KwuFLoQ=; h=From:To:Subject:Date:From; b=RKRuRNaOSqpGKmLkT3YE+xHyCRSzR4zz81sZRfyaVxK8mA2RFPOzlnFQrROGo21BW pu8RJr1qccWhZAOhhjmsOxfnYeE/yGxQlLsQAQCe/DDkQXutEIT755yNGygMOy+Jsr bH1UaIJR1DatoIcPI47IOOrWbpNEGXgn9IuNEdPE0IdTCkcgm2FTGF4+WZQnalWrgn V8lvjotfbWfpMf5APdQYlpsHoe5IFvh8EiKq7K9MvmLJs4Av/wYlMF4m43RCZv0La5 KQihe77WRKfe8bjxFINZWq2NY83gEgljwPtsHl7r4ENBW7xTZvvXqXvkxYOFe1/OMa 46qe4HK4rP3Xg== From: Sean Young To: Yonghong Song , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Song Liu , John Fastabend , KP Singh , Nathan Chancellor , Nick Desaulniers , Quentin Monnet , =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= , linux-doc@vger.kernel.org, netdev@vger.kernel.org, bpf@vger.kernel.org, linux-kernel@vger.kernel.org, clang-built-linux@googlegroups.com Subject: [PATCH v3 0/4] btf: support ints larger than 128 bits Date: Tue, 5 Jan 2021 14:45:30 +0000 Message-Id: X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org clang supports arbitrary length ints using the _ExtInt extension. This can be useful to hold very large values, e.g. 256 bit or 512 bit types. Larger types (e.g. 1024 bits) are possible but I am unaware of a use case for these. This requires the _ExtInt extension enabled in clang, which is under review. Link: https://clang.llvm.org/docs/LanguageExtensions.html#extended-integer-types Link: https://reviews.llvm.org/D93103 Signed-off-by: Sean Young changes since v2: - split patches into 4 distinct patches changes since v1: - added tests as suggested by Yonghong Song - added kernel pretty-printer Sean Young (4): btf: add support for ints larger than 128 bits libbpf: add support for ints larger than 128 bits bpftool: add support for ints larger than 128 bits bpf: add tests for ints larger than 128 bits Documentation/bpf/btf.rst | 4 +- include/uapi/linux/btf.h | 2 +- kernel/bpf/btf.c | 54 +- tools/bpf/bpftool/btf_dumper.c | 40 ++ tools/include/uapi/linux/btf.h | 2 +- tools/lib/bpf/btf.c | 2 +- tools/testing/selftests/bpf/Makefile | 3 +- tools/testing/selftests/bpf/prog_tests/btf.c | 3 +- .../selftests/bpf/progs/test_btf_extint.c | 50 ++ tools/testing/selftests/bpf/test_extint.py | 535 ++++++++++++++++++ 10 files changed, 679 insertions(+), 16 deletions(-) create mode 100644 tools/testing/selftests/bpf/progs/test_btf_extint.c create mode 100755 tools/testing/selftests/bpf/test_extint.py -- 2.29.2