Skip to content

docs: add comprehensive troubleshooting guide#94

Open
Kadiyam-LakshmiPrasanna wants to merge 5 commits into
optiqor:mainfrom
Kadiyam-LakshmiPrasanna:docs/troubleshooting-guide
Open

docs: add comprehensive troubleshooting guide#94
Kadiyam-LakshmiPrasanna wants to merge 5 commits into
optiqor:mainfrom
Kadiyam-LakshmiPrasanna:docs/troubleshooting-guide

Conversation

@Kadiyam-LakshmiPrasanna
Copy link
Copy Markdown

What

This PR adds a TROUBLESHOOTING.md file to the root directory. This guide provides a centralized, easy-to-read reference for common environment-related errors that new contributors frequently encounter when setting up Kerno.

Why

Fixes #91.
Previously, contributors were hitting repetitive environment errors (e.g., missing BTF support, clang/LLVM dependencies, or permission issues) that clogged the issues section. This documentation empowers users to self-diagnose and resolve these common hurdles quickly.

Testing

  • Verified markdown formatting and clarity of instructions.
  • Content covers Kernel/eBPF errors, toolchain requirements, and permission prerequisites.
  • N/A (Pure documentation change; no functional code changes).

Checklist

  • PR title follows Conventional Commits (docs: subject).
  • All commits are DCO-signed (git commit -s).
  • No unrelated changes pulled in.
  • Documentation updated for user-visible scenarios.

Signed-off-by: Kadiyam-LakshmiPrasanna <lakshmiprasannakadiyam25@gmail.com>
@github-actions github-actions Bot added level:beginner Up to ~50 lines, isolated change (auto-applied) documentation Improvements or additions to documentation labels May 21, 2026
Copy link
Copy Markdown
Member

@btwshivam btwshivam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useful guide, accurate on kernel/btf/capabilities. two technical fixes inline before merge: the kprobe entry and the clang requirement.

Comment thread TROUBLESHOOTING.md Outdated
* **Error:** `/sys/kernel/btf not found` or `failed to load BPF program`
* **Cause:** Your current kernel version is likely older than 5.8 or lacks BPF Type Format (BTF) support.
* **Fix:** Ensure you are running a modern, managed Kubernetes distribution (EKS, GKE, AKS, etc.) or update your host kernel to 5.8+.
* **Error:** `failed to attach kprobe`
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kerno uses tracepoints, not kprobes (it's the project's stated preference and every program under internal/bpf/c is tracepoint-based), so failed to attach kprobe isn't an error anyone hits here. the fix is also off: kerno is CO-RE (vmlinux.h + BTF), so runtime attach needs BTF, not linux-headers (headers only matter for compiling the bpf C with clang, which section 2 already touches). reframe this around tracepoint attach plus BTF, or drop it.

Comment thread TROUBLESHOOTING.md
If you are experiencing issues while setting up or running Kerno, please check the common scenarios below.

## 1. Installation & Dependencies
* **Error:** `clang: command not found` or `llvm: command not found`
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

worth a one-liner that make build needs no clang, it uses bpf stubs. clang/llvm/libbpf are only for make build-ebpf. as written this reads like clang is required to set kerno up at all, which can scare off contributors who just want the stub build.

@github-actions github-actions Bot added level:intermediate 50-200 lines or 3-5 files (auto-applied) testing Tests and test coverage area/doctor Diagnostic engine and rules level:beginner Up to ~50 lines, isolated change (auto-applied) and removed level:beginner Up to ~50 lines, isolated change (auto-applied) level:intermediate 50-200 lines or 3-5 files (auto-applied) labels Jun 4, 2026
@github-actions github-actions Bot added level:intermediate 50-200 lines or 3-5 files (auto-applied) and removed level:beginner Up to ~50 lines, isolated change (auto-applied) labels Jun 4, 2026
@Kadiyam-LakshmiPrasanna
Copy link
Copy Markdown
Author

Hi @btwshivam, I have addressed the feedback regarding kernel/BTF troubleshooting and clarified the build dependencies. The PR is ready for your review and workflow approval. Thank you!

@btwshivam
Copy link
Copy Markdown
Member

fix ci its filing..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/doctor Diagnostic engine and rules documentation Improvements or additions to documentation level:intermediate 50-200 lines or 3-5 files (auto-applied) testing Tests and test coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs: Create a comprehensive TROUBLESHOOTING.md for common setup errors

2 participants