From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 1E498367F2E for ; Wed, 1 Apr 2026 07:07:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775027274; cv=none; b=lGuuvKqJcqhUlPeFbhCdtalwTAHuSahj2Ajj8D8UCHJX14W20odUYWgu9ca4i/SjGsBUiQ9BM3BlPSkOmsPq1q3hhoACCNHoXRV8Ym0sVv4Qdn9L3zy0qhChf2l2pye5kaBdTD5rsDH4721lPf+p/dhXr50FFVQcWHNPGPDXWBI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775027274; c=relaxed/simple; bh=ARJth2pjCQlJeXMOXnHHMJU6DiAGOB8W+kVtGKy57EQ=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=KWCDEed6bwlxw9W51P9gtzivOcw4ZAeCRxyjfOn3wMf2j73ZMMjgmLj9kPTsZbEPhdD85Ws0c1EHx/SukKhzpTg9gt6z5U8LEAYT3EpsX7im59UxTecRUCuIBEGn7RxBG1La5uNTzRxJmNw52Jp4QOutlrLjOxBURsTlaSqCik0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=SBcic21k; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="SBcic21k" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-487012ce896so40003855e9.0 for ; Wed, 01 Apr 2026 00:07:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1775027271; x=1775632071; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=NS41J+/f6Vz7WCv2ARKA/Hb3yrSpGQX+eQMfkJUzbbg=; b=SBcic21kPID/TR8BrpDO8CElsW915ZQYL6GMSNw+O/uJpgTq/rZFcFd2Xk1E4lD9xh N6ViKvag9+XbJqfxZ6bhEeXbZqDVdm/58BPP4BJvBoWHHxSuVQWUoBOhewsbRFqRRcjv M38Og1nMHUQgFbajTTxgwAZ//MpTndcm8NdECya4G8a2jQLAMJn2o+n1PMkwT7ib8wF0 9gujX8VGLjYmv4/k1Qm1gn1eIS9ryZS2oDEIy3J8z/C1cKlYgjoRRiUT/DsWBGOqOLnq caiOqwFh62re9suzxpMOGUMz8aT9ee5qyhKIokxSHj6fePGqF5YU0PCTcuhtPtT+wzQ0 +9/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775027271; x=1775632071; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=NS41J+/f6Vz7WCv2ARKA/Hb3yrSpGQX+eQMfkJUzbbg=; b=c2qlQPykw+wOUYGsN+5r851upRZ0gsMabXFRRrYxpLmThz82caqZQtOndp1p5v1u07 hRHVtBVlPZ8IEHjPaTgcZ7Qk1ohHDMOiRidISS5cCTSj8wJMaiVg410KJ6Kjv/1W1cyI ZDvZ+eNrQ3h0qVzeD5JakingUVflUhdfcz8F939piUL9S03enUiD/P49BS+W55Y5OgSg FjxdQcB7pkav36PswoarKe03Tl0fS5H5WfVg09R6RQ6sNQIHIgjTSU3N3LNz/s/bkECx 0qc68nUeJWQmoKsM8ewrEEJ/j6VUff4UfcDQ/3N1AKdPevZeyvJRJ9iKal6y4FIdUwQS 6Dog== X-Forwarded-Encrypted: i=1; AJvYcCVooJpw9+N3y4eREsmZW8DovzCRzMkNm/ofc9VjPTip/V9ncG3NCxcdNZrpaYIIocUzWwZwwI3Ym7rWTlc=@vger.kernel.org X-Gm-Message-State: AOJu0YxYQ9J6zVNtS4HRz9SwzclKVfUjT/h+dkinEmTdny54SjFRZou9 uPbF0yBhd8ulF3zzDEAfmWrhvOUoebNJCx7SjPuyNBoy9KJ6d5ii+cAOMVrD1StdACE= X-Gm-Gg: ATEYQzxCQCgKguzJxKNI+vBojxazfHkq5jjMgrVMH7icr46x36io3b6ft8+r/L4YduO x4B2HxGKD/7fUWsKQBpUVl6qUSymGaEjiRfdfJ8mjtad61G6xBKkwKepnxTtJaQnYBtqVWx5LPj O0GKGMXfTD0hIvyOQTx9qjDwF4bdV2lQLjT/BG2yuhGiO8OK7FJ3ivpF1y+4g10ga/B+oriqnxl sZnvV7N/TVZ1I+uxBgb0K2sEAzNY+X4r1ELkb0MHCY9VfwG9cWmPcGsReqWNbAzR+bg2RxI4c74 WCbTEhlx7box2dRjIn/a6y6oG55Rv4ZAt0Tfr0WFKQJgRPQ9fxwZ4RNlpHBVWDqak6KU1Vf2IHV L40QTDT4lvawMahld8ptbSQrYRZhx1HUdLJH3a2W7nVWOd3+0t8VIA/GLAiPU2ukFI05/89iF2O bo0nKYBj6hHvqhIvcet+O0f87JHX+XCGKmtLrOVan+ukJ5pFgVoWnInQox X-Received: by 2002:a05:600c:630f:b0:487:288:1198 with SMTP id 5b1f17b1804b1-4888359da58mr31459045e9.22.1775027271355; Wed, 01 Apr 2026 00:07:51 -0700 (PDT) Received: from f16.suse.cz ([121.167.230.140]) by smtp.gmail.com with ESMTPSA id 71dfb90a1353d-56d58a887e3sm15355778e0c.18.2026.04.01.00.07.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Apr 2026 00:07:49 -0700 (PDT) From: Hoyeon Lee To: bpf@vger.kernel.org, Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau Cc: Eduard Zingerman , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Shuah Khan , Feng Yang , linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH bpf-next v6 0/3] libbpf: clarify raw-address single kprobe attach behavior Date: Wed, 1 Apr 2026 16:05:01 +0900 Message-ID: <20260401070738.122709-1-hoyeon.lee@suse.com> X-Mailer: git-send-email 2.52.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Today libbpf documents single-kprobe attach through func_name, with an optional offset. For the PMU-based path, func_name = NULL with an absolute address in offset already works as well, but that is not described in the API. This patchset clarifies this behavior. First commit fixes kprobe and uprobe attach error handling to use direct error codes. Next adds kprobe API comments for the raw-address form and rejects it explicitly for legacy tracefs/debugfs kprobes. Last adds PERF and LINK selftests for the raw-address form, and checks that LEGACY rejects it. --- Changes in v6: - Split the kprobe/uprobe direct error-code fix into a separate patch Changes in v5: - Add kprobe API docs, use -EOPNOTSUPP, and switch selftests to LIBBPF_OPTS Changes in v4: - Inline raw-address error formatting and remove the probe_target buffer Changes in v3: - Drop bpf_kprobe_opts.addr and reuse offset when func_name is NULL - Make legacy tracefs/debugfs kprobes reject the raw-address form - Update selftests to cover PERF/LINK raw-address attach and LEGACY reject Changes in v2: - Fix line wrapping and indentation Hoyeon Lee (3): libbpf: use direct error codes for kprobe/uprobe attach libbpf: clarify raw-address single kprobe attach behavior selftests/bpf: add test for raw-address single kprobe attach tools/lib/bpf/libbpf.c | 18 ++-- tools/lib/bpf/libbpf.h | 27 +++++- .../selftests/bpf/prog_tests/attach_probe.c | 82 +++++++++++++++++++ 3 files changed, 118 insertions(+), 9 deletions(-) -- 2.52.0