chore: Remove linux-tools-generic from profiling Dockerfile #1863
chore: Remove linux-tools-generic from profiling Dockerfile #1863
Conversation
…line dependencies
There was a problem hiding this comment.
🤖 AI Code Reviewer
Reviewed by 1 agents | Quality score: 85% | Review time: 72.5s
💡 Suggestion (1)
1. Missing explanatory comment mentioned in PR description
File: .github/workflows/deps/prebuilt.profiling.Dockerfile (line 17-18) | Consensus: 1/1 agents ✓
The PR description states 'The Dockerfile comment documents why linux-tools-generic is omitted and how to mount the host's perf if needed', but the diff only shows removal of lines without adding any explanatory comment. This documentation would be valuable for future maintainers to understand why linux-tools-generic was intentionally excluded and prevent someone from re-adding it.
Suggested fix:
Add a comment above linux-tools-common explaining: '# Note: linux-tools-generic is intentionally omitted - it depends on kernel-version-specific packages that may not be available in mirrors. The entrypoint script installs the correct linux-tools-${kernel_version} at runtime to match the host kernel.'
Found by: cursor-agent
📝 Nitpick (1)
1. Removed section comment leaves package without context
File: .github/workflows/deps/prebuilt.profiling.Dockerfile (line 17-17) | Consensus: 1/1 agents ✓
The '# Profiling tools' comment was removed along with linux-tools-generic, leaving linux-tools-common without a descriptive comment explaining its purpose. While not critical, section comments help organize the package list and clarify intent.
Suggested fix:
Consider adding a brief comment like '# Perf base tooling (kernel-specific tools installed at runtime)' above linux-tools-common
Found by: cursor-agent
🤖 Generated by AI Code Reviewer | Review ID: review-6f535162
[release] Fix profiling Docker image apt install flake
Description
Remove
linux-tools-genericfrom the profiling Dockerfile to stop random CI failures in the container-release-profiling job. The meta-package depends on a kernel-version-specific package (e.g.linux-tools-6.8.0-100-generic) that is sometimes not yet available in Ubuntu mirrors, causing "Unable to correct problems, you have held broken packages" and exit code 100.Perf in the container must match the host kernel anyway, so installing
linux-tools-genericat build time is unnecessary. The entrypoint already installs the correctlinux-tools-${kernel_version}at runtime viainstall_kernel_tools(). Onlylinux-tools-commonis kept for the base tooling.No other code or workflow changes; only the Dockerfile and an explanatory comment were updated.
Test plan
Documentation update
None. The Dockerfile comment documents why
linux-tools-genericis omitted and how to mount the host’s perf if needed.Note
Low Risk
Single-package removal in a Docker build step; main risk is
perfavailability in the resulting image if runtime tooling isn’t provided elsewhere.Overview
Removes
linux-tools-genericfrom the profiling prebuilt Dockerfile’s apt install list, leavinglinux-tools-commonas the base dependency.This reduces CI flakiness caused by kernel-version-specific
linux-tools-*dependencies being unavailable in Ubuntu mirrors during image builds.Written by Cursor Bugbot for commit 6446fe3. This will update automatically on new commits. Configure here.