Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade bcc and libbpf to fix Google COS socket tracer issues #1909

Conversation

ddelnano
Copy link
Member

@ddelnano ddelnano commented May 17, 2024

Summary: Upgrade bcc and libbpf to fix Google COS socket tracer issues

See GitHub issue comments below for more details. This pulls in the following BCC fix (iovisor/bcc@57ca51b).

Relevant Issues: Closes #1900, part of #1905

Type of change: /kind bug

Test Plan: Skaffold'ed this change to a Ubuntu and Google COS cluster and verified socket tracer works again

  • Verified that all kernel build passes
  • Verified that all kernel build used a bcc repo reference that matches latest commit
ddelnano@noble-dev:~/code/bcc/build (pixie8) $ git diff pixie/pixie8 ddelnano/pixie8
ddelnano@noble-dev:~/code/bcc/build (pixie8) $

Changelog Message: Fix issue with socket tracer on recent Google COS instances

@ddelnano ddelnano requested a review from a team as a code owner May 17, 2024 21:03
@ddelnano ddelnano marked this pull request as draft May 17, 2024 21:03
@ddelnano ddelnano force-pushed the ddelnano/upgrade-bcc-and-libbpf-to-fix-COS-issue branch from 022cc3c to 21f4736 Compare May 17, 2024 21:21
urls = [
"https://github.com/libbpf/libbpf/archive/refs/tags/v1.0.1.tar.gz",
"https://github.com/libbpf/libbpf/archive/3b0973892891744d20ae79e99c0d1a26a59c4222.tar.gz",
Copy link
Member Author

Choose a reason for hiding this comment

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

This is the libbpf version that the 0.30.0 bcc release uses. It's a commit between v1.1 and v1.2

Screen Shot 2024-05-17 at 2 32 55 PM

@ddelnano ddelnano force-pushed the ddelnano/upgrade-bcc-and-libbpf-to-fix-COS-issue branch from 21f4736 to 30fc826 Compare May 17, 2024 22:27
@@ -68,7 +68,8 @@ TEST(BCCSymbolizer, ModuleName) {
for (const auto& entry : smaps) {
if (entry.pathname == "[vdso]") {
const std::string_view symbol = symbolizer.SymbolOrAddrIfUnknown(pid, entry.vmem_start);
EXPECT_EQ(symbol, "[m] [vdso] + 0x00000000");
const std::string expected = absl::StrCat("[m] [vdso] + 0x", absl::Hex(entry.vmem_start));
EXPECT_EQ(symbol, expected);
Copy link
Member Author

Choose a reason for hiding this comment

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

iovisor/bcc#4319 provides better symbolization and is the source of this behavior change. I verified this by reverting the change and seeing if the previous version of the test succeeded.

@ddelnano ddelnano marked this pull request as ready for review May 17, 2024 23:02
@ddelnano ddelnano requested a review from a team as a code owner May 17, 2024 23:02
Copy link
Member

@vihangm vihangm left a comment

Choose a reason for hiding this comment

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

Looks ok to me but maybe get @JamesMBartlett or @oazizi000 take a quick pass at it too.

@ddelnano ddelnano merged commit 1bd48b9 into pixie-io:main May 20, 2024
45 checks passed
@ddelnano ddelnano deleted the ddelnano/upgrade-bcc-and-libbpf-to-fix-COS-issue branch May 20, 2024 17:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Socket tracer fails to start on latest Container OS
3 participants