From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E1F4A2F7AD0 for ; Fri, 21 Nov 2025 19:42:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.170 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763754157; cv=none; b=olztKqHlL4d5FLr148JkdzrKMgjqwqZgr7l1xCNW3aN7U2HBCRommQJPo3zvG61n7Xk/psmp+FbThvL3ASFS3dHeVj4B8N/2ZBuyNSO+r4Mt5bOUQwqJUq4onefUfx+/uE7Xvpr6WUrVERFQfJ/Tze+prNc8fFImKM6Bw16Ewqk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763754157; c=relaxed/simple; bh=LCrB9EbsURiYuFrP7Iqz+2SjTbh7m0MdqxlcJqGHWcE=; h=Message-ID:Subject:From:To:Cc:Date:In-Reply-To:References: Content-Type:MIME-Version; b=BXihmEO7THzhzs2udd9JVy2cmvbkMLZvVz3qZKKUYfJZUKBJyBIK4Wqu9cmo3iVHsIfgCDamOL9jzjC0RDieiMYTjB7GVG/UM/7zSl4P8kp0i//DDS3e+qcZsoqVYUJXxNpqfT3lwzNuXGuAVogSi7l64SdRg5tJOz9hDxlV4jc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=FCp+E44j; arc=none smtp.client-ip=209.85.214.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="FCp+E44j" Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-29558061c68so32005065ad.0 for ; Fri, 21 Nov 2025 11:42:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763754155; x=1764358955; darn=vger.kernel.org; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=LCrB9EbsURiYuFrP7Iqz+2SjTbh7m0MdqxlcJqGHWcE=; b=FCp+E44jWZuw2+j1sGH2mCRyv0H6iXdiGi3us90HdjnKz6svTs8AC1r7qlnfqpebSK 6qQOmytdkqIWUz4j9aBDKBw+GGHYvs7vAz83kTbN3QoqqbEprdRuinnf/qE7ecQiIFTH a8hnRAGOv1JdPk8tjsZHFGz3U58TnXkXeOHuu37Kse63ATFce2ixhPnLHKACbmFW80xt 87ONVkoUR3TOe/O0KDU8kg/IvWb6C+DQi/tfKvE/ZPDX5U399S4moH0dJxJOQ9GvWDlF gXwY2eXwxzHEC8CeAeCog0CECPTkh+CBPHhqc6nNFsFVbIzRUVOHPqTtGAhjDTWIjsaE MXZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763754155; x=1764358955; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=LCrB9EbsURiYuFrP7Iqz+2SjTbh7m0MdqxlcJqGHWcE=; b=pfqGteIcpMU3fzL4ASgss30O+aIAAb1YZrmta6kLHNsRunA0+L8i8lMcP4i5mNWEVQ DCidNnBncFfZx0V6w4b3xztsOw5sd3qNT5MMc8FKItYghoL6sPdnWed//WXumhOcmB5e WNKrHhcPc2TPAsd2ZDLTSPw2waRM8SKvrlzlaaTJGQNDZUZ/uqY++19gu4F6oX3rIgSD Emg+sFpkIAvdSBBgbZPc5Rex2EGRJZ8xbkPfgV51UTjgiGLTQd8LlyjF5gxqGs6I5X5c 9vHQmU+oF80ZerAEsRtLJYPbAKHTYLfdT7U9SXgxs5EQxfC7Anz6O2lHgA1itAhj3r3M ArQw== X-Forwarded-Encrypted: i=1; AJvYcCW7BqxzJtPsp1Dj05QIsqMES5aGm2LJ6n0jPU488ONnwSIxSZ9z4puHHtHPWEb72GGX48jndP2rL2HfaEs=@vger.kernel.org X-Gm-Message-State: AOJu0YzjgRqKjVFF2V+7h/iF6efzfEjMul1LezNwbP0dS5wNPRmA/dMb s5X1TSfHo8U5UYl3gCnR/F4806LwnBSfZ6TE1/QH9wuGVEA2NscPsGms X-Gm-Gg: ASbGncufVVMAzJo9zERR5Tzm2zNcYg+9tFL4RKsEq4v4bVFyNKoliZnt0tz6tIWtlwt U6/34RWR7j7gW3TEgEzLXIfFx9NPd7IrgFGL7RczawQMPFmzi/yaHTLcduzFBT29bFvCD1G3WK/ m4k/G9peTH/zPT00Jy1sjdnonak7I5U/3e+3j5hxucdqpQBA0kZhzQGHdc7wjgbB8Y08/Zc/qCv 2PQ9NeIL3KDvEAOhgJhLdUx8cFJxFe+orlCXq2m5t0iImbvm8LLzk0i7h2WgDt3j1y/pVe4lsym fM06mOyYY5iDJUaGnTjKEYyuEWQT2n+jX3rGCwRYHiPOcV5H9NpoodXqeyNuioWNqwfKOJRuBqe F5Sav6wWmADDpRyRtnKlTsKu3Aha2RrCNZHcmvlm7ICc+Qeox8JmyLtyaJSpxmvRT3KntEtmz7+ WybcOtM8FbLUApixH7pA== X-Google-Smtp-Source: AGHT+IGfulG3rJ7g745ww9DciWmUx3GXErP58V7EkhlpukfP7tMazv2crvCzOJejQHbFUbyl8ifbbw== X-Received: by 2002:a17:903:2f8d:b0:298:29e0:5f32 with SMTP id d9443c01a7336-29b6bead4e2mr42949255ad.15.1763754155171; Fri, 21 Nov 2025 11:42:35 -0800 (PST) Received: from [192.168.0.56] ([38.34.87.7]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29b5b2ac81bsm64978195ad.93.2025.11.21.11.42.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Nov 2025 11:42:34 -0800 (PST) Message-ID: Subject: Re: [RFC PATCH v7 5/7] libbpf: Implement BTF type sorting validation for binary search optimization From: Eduard Zingerman To: Donglin Peng , Andrii Nakryiko Cc: ast@kernel.org, zhangxiaoqin@xiaomi.com, linux-kernel@vger.kernel.org, bpf@vger.kernel.org, Donglin Peng , Alan Maguire , Song Liu Date: Fri, 21 Nov 2025 11:42:32 -0800 In-Reply-To: References: <20251119031531.1817099-1-dolinux.peng@gmail.com> <20251119031531.1817099-6-dolinux.peng@gmail.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.58.1 (3.58.1-1.fc43) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 On Thu, 2025-11-20 at 15:25 +0800, Donglin Peng wrote: [...] > Additionally, in the linear search branch, I saw there is a NULL check fo= r > the name returned by btf__name_by_offset. This suggests that checking > name_off =3D=3D 0 alone may not be sufficient to identify an anonymous ty= pe, > which is why I used str_is_empty for a more robust check. btf_str_by_offset(btf, offset) returns NULL only when 'offset' is larger then 'btf->hdr.str_len'. However, function btf_check_meta() verifies that this shall not happen by invoking btf_name_offset_valid() check. The btf_check_meta() is invoked for all types by btf_check_all_metas() called from btf_parse_base(), btf_parse_module() and btf_parse_type_sec() -> btf_parse(). So, it appears that kernel protects itself from invalid name_off values at BTF load time. [...]