From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 45C3BC48260 for ; Thu, 8 Feb 2024 18:16:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id ABD746B0075; Thu, 8 Feb 2024 13:16:20 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A6D806B0078; Thu, 8 Feb 2024 13:16:20 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 934F26B007D; Thu, 8 Feb 2024 13:16:20 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 7F8B76B0075 for ; Thu, 8 Feb 2024 13:16:20 -0500 (EST) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 11892A1CDF for ; Thu, 8 Feb 2024 18:16:20 +0000 (UTC) X-FDA: 81769441320.25.A425E60 Received: from mail-pj1-f50.google.com (mail-pj1-f50.google.com [209.85.216.50]) by imf06.hostedemail.com (Postfix) with ESMTP id 33953180005 for ; Thu, 8 Feb 2024 18:16:17 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=cX59oNit; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf06.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.50 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1707416178; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ljpBnK+8wOzJ7+Xn5YzIBHCj5S2R/t4SlRbJ1rxOd9Q=; b=JhrT5c4YSuT88J8jj3555HLfuQc3dTnFLxCU2C/BbL10+b/1rOp2kg/OBQtsFkBZdA3fr7 bBZQgLq2uVmms1RWrOuolFCHLQKSkbulLSiW4fp0uUfw0VRFsJ1+w0oPLrdLd5rB8yv21D lhFO1+liqgmb+Bltafsk5SQnWo/RKc4= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=cX59oNit; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf06.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.50 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1707416178; a=rsa-sha256; cv=none; b=oKJPsx5/uENA+N0CsId4ZpSrE+kZ4/Wqaz9mbwD8GjBhYLwARr6OPWiYrwxDz8BOX4hChV XNKmqWXU685N3mwFaqwupkQz2r8QvVnv1JiMXxiBityCEaXWAdWQQp2hens0z9yhiO9mgH j0xCyRfX52K8R9LJxb2ThHMzEcyQ3Ts= Received: by mail-pj1-f50.google.com with SMTP id 98e67ed59e1d1-295f9a4a656so93634a91.1 for ; Thu, 08 Feb 2024 10:16:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1707416177; x=1708020977; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ljpBnK+8wOzJ7+Xn5YzIBHCj5S2R/t4SlRbJ1rxOd9Q=; b=cX59oNiti+HQKIMb/u1cd+BO2r019c0qah2HJN2OfQWhenH9oteVlN8jOtNiRfElMd lENOV6bLtzvIR9Pc+yWzfmF/OH61siN9fIaVKSzrQmqdbiMql7SV2+Dcy2J88pbDGrzv 1x7P/LJLGr0S5XhzEBMhxMjrYW6ptcf4CNuZI169ElL/Yq31doVCaiS3K0DMO2j+l4o3 M72DIul19uY3xcswrikcEC/wdhPpHVMH+6hlGXOH197YX4+GbpNGpojbY6JnzGXaosbW Ri+vXChOl1fFySD35z2eKLt65a1DJL2OUPF7dLgo+6IWSKFyEd7TT7iZ+dVPv0kmH1WF LxpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707416177; x=1708020977; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ljpBnK+8wOzJ7+Xn5YzIBHCj5S2R/t4SlRbJ1rxOd9Q=; b=AhiMNvvypmtfACovxXI+WjON07ZDnHQdqgilX37wwISjLE2iOHYLAJiESod+0BQm2A z51PsB0VDferBjjH2MzcRnXUD8vzOo+0xskXvAA6UdGIZm27DBKQMt5+hJ/eMbiT/cYN U07vvQ3r8140CzBFTNLOUTGOj+TXu9to/NUyEUfgBRuHlhjKOPG301WRMzcXth3C6VSp sVSNFR90JGbE91K/UZ2Im9kwceST6MXWnQaYYxzm5t8UxrwagtY2MBYjM5GHG3bYXzxg S1wfnseZwQweVwrNi187Sx5VrdIYS4WFINolgC8RVHuei/ObecnJXMuhTl7k8FzeWFZR NSEQ== X-Forwarded-Encrypted: i=1; AJvYcCUWRr3/sa3WvzvIKbJwMuWaT5bn746iBEsyKLgfvUcyNeERiSkNTsYpEKbEdIGU1eI0WPV1e2X1SCzyKH2OtQWDqfo= X-Gm-Message-State: AOJu0Yw7JY9co1Nol13SSjJ6a03/yoZZdGYFMouF0ffER1pjZ2IQX6kE 09rYj2PGLy3UkfaYlFNaREDeRxgCiyeDQ8LJt7QyGVtGXTvDbwz6hto19HDpZHFvB3jBHOGjx02 LkGinCkbOoEqtd96/AP5dSOPDlKq/YLTs X-Google-Smtp-Source: AGHT+IEruEjlYUY5Sd25qriV9Hc1A/32+Nqy+mQedfdwn26Q0AM6HrhIiPhbsPwcXoFmJFBrC3w0lKaLSX3m246FCVc= X-Received: by 2002:a17:90b:117:b0:296:2035:a3c2 with SMTP id p23-20020a17090b011700b002962035a3c2mr22913pjz.36.1707416177005; Thu, 08 Feb 2024 10:16:17 -0800 (PST) MIME-Version: 1.0 References: <20240206220441.38311-1-alexei.starovoitov@gmail.com> <20240206220441.38311-13-alexei.starovoitov@gmail.com> In-Reply-To: From: Andrii Nakryiko Date: Thu, 8 Feb 2024 10:16:05 -0800 Message-ID: Subject: Re: [PATCH bpf-next 12/16] libbpf: Allow specifying 64-bit integers in map BTF. To: Alexei Starovoitov Cc: bpf , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Kumar Kartikeya Dwivedi , Eddy Z , Tejun Heo , Barret Rhoden , Johannes Weiner , linux-mm , Kernel Team Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 33953180005 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: rs16wjynaewizzwrkzzh497gjigajubx X-HE-Tag: 1707416177-726995 X-HE-Meta: U2FsdGVkX19PaMprs3xIrdMjxCESHaSWue8yMNOpZcEFYT5XCH0l6LWFPhBhXa9nipK3y36zS8LQ85R/RfevS9FlmIVD9CSPtGGM1umXNUXU2+pUsPg7G1i1iA1J1Ywj+QxU5gISHSPBGXCRmHIMVl5AS46RGWxQ2cp1ov8kyV5J237lXWKB9UNz5tyREPOxVirx90ReFoZT3pXb3TeRyBBzRpiG/hBO0H4N9++aD77CXGDRu7nQjnvY2V/opUNmbizpwEHWiK7++QMB0co2R6nxzHsZ+c0H6FmpO6ZqyRhITxKhenj66u95okWPifh+X5YoA1nHBxJET1+7YZKtmXbgI894Pc//8HXEH/hE4nWiGHBnC35c2VOlOcc4oxrMi2F3xuOuwQWbTUcCcPKglg1onGqQvV6pyr/4y3rQGbuwSRvVX3HQtWtEZoisrSJpLFL9Uw2Qz5rcMn74etw08WSbvMOEC9ZEV+/1IzeGddt16JCMD1Vhmd5OhuKQxak08HJjczujrpQ88t7UwXYWJ1UxF9Q46VDytrnCPS1o8ARWOODp0Ibm09rzkUbaDtwKN5xVk6xxkDXFI98+VdUWmSYWSSpmS45I070g9dwBfOvH5wm61GBLJ2+Zj6Z5xsNn6bSCh1HYHAwnf4kJ8GXWZsHTLeg4yDqm+kVXbfyuwNolUf6I0pgt3jKD8Badm7LQPvG0y0qA5ucx4VapSQMV1q+ciwFeTzbyv7+xtoq8x0MqOITeaevO7V8VUZcCuaqrTbZzY6xyv47Ck3XFuu6ST5R4OFQbAwvkiCOPKkYY1TXZQDJM+eKq/tfex4I9KOu83bVaC07fRB0xXUOYM4ReC3gqHsmOM1wexOYJ3QW6Fn8Mwh5b0aWjKxWSoSPntpMK6XGhY0Mz3E5ZNzIzoTvkISHWmT1NzFRR9uPS0ZqzgfSAlER9fNjGvSaVedaQUfQ6ddCTbakzAvnJhl2dRVf JTngUYZg RCfGVz1a1zl11XKelGeW8uBQrLt4ytzyO9JJr6XQ41n2V3KHTtD9bz/31SUzpkVylhziJIsELLKSM4UMVCyXHe5N8MLCBBvOCuiVzz3jG8oSvA0gfJxaUWR6GgUKP4In92eV53hHG0hGjBXJ7VPcRViti+Ai1CLo547sX6rPMRFURAS6HvysOimFy5jlfKLAAD1eJwAmZFmldj5JjOkAT8SloM/S8NBVAmUPicq8IDflewcDt2qomlvLq2tWgX8bAsf3TjgJ2lWPuYcz2vofq2Vv7F8sRAoX/rTjvfoBXtdQv2fS6YzjM2eqcTnud7GBHQZK+2Lbti1z/sQloOq3MjYPXuJG830Xrj7j+TlJ06JYNr7iJWVD7TihZD3/KjllQsJcQDzg/FBpoHs2shSMheiInDUvIY0kbELM1rgbzHSm2SeXamSk7GGil2shdqZTyuHMgTTM/ci2Pp4gZZ9cTxDHTy4+6ZqcqM+X1WKx6UQvZlh94184KNdRXQ5Gbb3+dYfzuIu4jo51ib5DIf8dImWwekI0xDztKy9kZ X-Bogosity: Ham, tests=bogofilter, spamicity=0.000036, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, Feb 7, 2024 at 5:59=E2=80=AFPM Alexei Starovoitov wrote: > > On Wed, Feb 7, 2024 at 5:17=E2=80=AFPM Andrii Nakryiko > wrote: > > > > On Tue, Feb 6, 2024 at 2:05=E2=80=AFPM Alexei Starovoitov > > wrote: > > > > > > From: Alexei Starovoitov > > > > > > __uint() macro that is used to specify map attributes like: > > > __uint(type, BPF_MAP_TYPE_ARRAY); > > > __uint(map_flags, BPF_F_MMAPABLE); > > > is limited to 32-bit, since BTF_KIND_ARRAY has u32 "number of element= s" field. > > > > > > Introduce __ulong() macro that allows specifying values bigger than 3= 2-bit. > > > In map definition "map_extra" is the only u64 field. > > > > > > Signed-off-by: Alexei Starovoitov > > > --- > > > tools/lib/bpf/bpf_helpers.h | 1 + > > > tools/lib/bpf/libbpf.c | 44 ++++++++++++++++++++++++++++++++++-= -- > > > 2 files changed, 42 insertions(+), 3 deletions(-) > > > > > > diff --git a/tools/lib/bpf/bpf_helpers.h b/tools/lib/bpf/bpf_helpers.= h > > > index 9c777c21da28..fb909fc6866d 100644 > > > --- a/tools/lib/bpf/bpf_helpers.h > > > +++ b/tools/lib/bpf/bpf_helpers.h > > > @@ -13,6 +13,7 @@ > > > #define __uint(name, val) int (*name)[val] > > > #define __type(name, val) typeof(val) *name > > > #define __array(name, val) typeof(val) *name[] > > > +#define __ulong(name, val) enum name##__enum { name##__value =3D val= } name > > > > Can you try using __ulong() twice in the same file? enum type and > > value names have global visibility, so I suspect second use with the > > same field name would cause compilation error > > Good point will change it to: > > #define __ulong(name, val) enum { __PASTE(__unique_value,__COUNTER__) > =3D val } name yep, that should work. We still can have name collisions across multiple files, but it doesn't matter when linking two .bpf.o files.