{"id":20918129,"url":"https://github.com/fbs/el7-bpf-specs","last_synced_at":"2025-05-13T12:31:11.570Z","repository":{"id":47706348,"uuid":"193985349","full_name":"fbs/el7-bpf-specs","owner":"fbs","description":"RPM specs for building bpf related tools on CentOS 7","archived":false,"fork":false,"pushed_at":"2021-12-30T16:07:19.000Z","size":86,"stargazers_count":63,"open_issues_count":5,"forks_count":12,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-07-30T18:13:40.304Z","etag":null,"topics":["bcc","bpf","bpftrace","centos7","ebpf","rpm","rpms"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fbs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-06-26T22:24:14.000Z","updated_at":"2024-06-06T12:42:54.000Z","dependencies_parsed_at":"2022-08-23T02:31:04.129Z","dependency_job_id":null,"html_url":"https://github.com/fbs/el7-bpf-specs","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fbs%2Fel7-bpf-specs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fbs%2Fel7-bpf-specs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fbs%2Fel7-bpf-specs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fbs%2Fel7-bpf-specs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fbs","download_url":"https://codeload.github.com/fbs/el7-bpf-specs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225209034,"owners_count":17438214,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bcc","bpf","bpftrace","centos7","ebpf","rpm","rpms"],"created_at":"2024-11-18T16:37:47.139Z","updated_at":"2024-11-18T16:37:47.685Z","avatar_url":"https://github.com/fbs.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ebpf-specs\n\n**Status: Stable**\n\nA collection of rpm specs to build eBPF related tools on Centos 7. All tools are\navailable as static binaries to remove the potential runtime dependencies on the\nused GCC and LLVM/Clang versions\n\nAvailable tools:\n\n- [bcc](https://github.com/iovisor/bcc)\n- [bpftrace](https://github.com/iovisor/bpftrace)\n- [bpftool](https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/tools/bpf/bpftool)\n\n## Repository\n\n## Daily\n\nDaily bpftrace builds are available: https://repos.baslab.org/rhel/7/bpftrace-daily/\n\nInstall\n\n```\ncurl https://repos.baslab.org/rhel/7/bpftrace-daily/bpftrace-daily.repo --output /etc/yum.repos.d/bpftools.repo\ncurl https://repos.baslab.org/rhel/7/bpftools/bpftools.repo --output /etc/yum.repos.d/bpftrace-daily.repo\nyum install bpftrace bpftrace-tools bpftrace-doc\n```\n\nNote that this only tracks bpftrace, the bpftools repo is still required for\nbcc\u0026bpftool\n\n## Stable releases\n\nThe repository available at https://repos.baslab.org/rhel/7/bpftools/ tracks offical\nbpftrace \u0026 bcc releases\n\nInstall:\n\n```\ncurl https://repos.baslab.org/rhel/7/bpftools/bpftools.repo --output /etc/yum.repos.d/bpftools.repo\nyum install bpftrace bpftrace-tools bpftrace-doc bcc-static bcc-tools\n```\n\n# bpftrace\n\nTools:\n\n| Tool              | Status                       |\n|-------------------|------------------------------|\n| bashreadline.bt   | :white_check_mark:           |\n| biolatency.bt     | :white_check_mark:           |\n| biosnoop.bt       | :white_check_mark:           |\n| bitesize.bt       | :x:                          |\n| capable.bt        | :white_check_mark:           |\n| cpuwalk.bt        | :white_check_mark:           |\n| dcsnoop.bt        | :white_check_mark:           |\n| execsnoop.bt      | :white_check_mark: (patched) |\n| gethostlatency.bt | :white_check_mark: (patched) |\n| killsnoop.bt      | :white_check_mark:           |\n| loads.bt          | :white_check_mark:           |\n| mdflush.bt        | :x:                          |\n| oomkill.bt        | :x:                          |\n| opensnoop.bt      | :white_check_mark:           |\n| pidpersec.bt      | :white_check_mark:           |\n| runqlat.bt        | :white_check_mark:           |\n| runqlen.bt        | :white_check_mark:           |\n| statsnoop.bt      | :x:                          |\n| syncsnoop.bt      | :white_check_mark:           |\n| syscount.bt       | :white_check_mark:           |\n| tcpaccept.bt      | :white_check_mark:           |\n| tcpconnect.bt     | :white_check_mark:           |\n| tcpdrop.bt        | :white_check_mark:           |\n| tcpretrans.bt     | :white_check_mark:           |\n| vfscount.bt       | :white_check_mark:           |\n| vfsstat.bt        | :white_check_mark:           |\n| writeback.bt      | :white_check_mark:           |\n| xfsdist.bt        | :white_check_mark:           |\n| ext4dist.bt       | :new:                        |\n\n\nTools marked with an :white_check_mark: have been \"tested\", the tool runs and\nthe output appears valid, but no indepth testing has been done. :x: indicate\ntools that are known to be broken and those marked with :question: have not been\ntested at all.\n\nUnsupported builtins:\n\n- cgroupid\n\n# BCC\n\nTools:\n\n| Tools          | Status             |\n|----------------|--------------------|\n| argdist        | :question:         |\n| bashreadline   | :white_check_mark: |\n| biolatency     | :white_check_mark: |\n| biosnoop       | :white_check_mark: |\n| biotop         | :white_check_mark: |\n| bitesize       | :question:         |\n| bpflist        | :white_check_mark: |\n| btrfsdist      | :question:         |\n| btrfsslower    | :question:         |\n| cachestat      | :white_check_mark: |\n| cachetop       | :white_check_mark: |\n| capable        | :question:         |\n| cobjnew        | :question:         |\n| cpudist        | :question:         |\n| cpuunclaimed   | :question:         |\n| criticalstat   | :question:         |\n| dbslower       | :question:         |\n| dbstat         | :question:         |\n| dcsnoop        | :question:         |\n| dcstat         | :question:         |\n| deadlock       | :question:         |\n| drsnoop        | :question:         |\n| execsnoop      | :question:         |\n| exitsnoop      | :question:         |\n| ext4dist       | :question:         |\n| ext4slower     | :question:         |\n| filelife       | :question:         |\n| fileslower     | :question:         |\n| filetop        | :question:         |\n| funccount      | :question:         |\n| funclatency    | :question:         |\n| funcslower     | :question:         |\n| gethostlatency | :question:         |\n| hardirqs       | :question:         |\n| inject         | :question:         |\n| javacalls      | :question:         |\n| javaflow       | :question:         |\n| javagc         | :question:         |\n| javaobjnew     | :question:         |\n| javastat       | :question:         |\n| javathreads    | :question:         |\n| killsnoop      | :question:         |\n| llcstat        | :question:         |\n| mdflush        | :question:         |\n| memleak        | :question:         |\n| mountsnoop     | :question:         |\n| mysqld_qslower | :question:         |\n| nfsdist        | :question:         |\n| nfsslower      | :question:         |\n| nodegc         | :question:         |\n| nodestat       | :question:         |\n| offcputime     | :question:         |\n| offwaketime    | :question:         |\n| oomkill        | :question:         |\n| opensnoop      | :question:         |\n| perlcalls      | :question:         |\n| perlflow       | :question:         |\n| perlstat       | :question:         |\n| phpcalls       | :question:         |\n| phpflow        | :question:         |\n| phpstat        | :question:         |\n| pidpersec      | :question:         |\n| profile        | :question:         |\n| pythoncalls    | :question:         |\n| pythonflow     | :question:         |\n| pythongc       | :question:         |\n| pythonstat     | :question:         |\n| reset-trace    | :question:         |\n| rubycalls      | :question:         |\n| rubyflow       | :question:         |\n| rubygc         | :question:         |\n| rubyobjnew     | :question:         |\n| rubystat       | :question:         |\n| runqlat        | :question:         |\n| runqlen        | :question:         |\n| runqslower     | :question:         |\n| shmsnoop       | :question:         |\n| slabratetop    | :question:         |\n| sofdsnoop      | :question:         |\n| softirqs       | :question:         |\n| solisten       | :question:         |\n| sslsniff       | :question:         |\n| stackcount     | :question:         |\n| statsnoop      | :question:         |\n| syncsnoop      | :question:         |\n| syscount       | :question:         |\n| tclcalls       | :question:         |\n| tclflow        | :question:         |\n| tclobjnew      | :question:         |\n| tclstat        | :question:         |\n| tcpaccept      | :question:         |\n| tcpconnect     | :white_check_mark: |\n| tcpconnlat     | :white_check_mark:         |\n| tcpdrop        | :white_check_mark:         |\n| tcplife        | :question:         |\n| tcpretrans     | :question:         |\n| tcpstates      | :question:         |\n| tcpsubnet      | :question:         |\n| tcptop         | :question:         |\n| tcptracer      | :question:         |\n| tplist         | :question:         |\n| trace          | :question:         |\n| ttysnoop       | :white_check_mark: |\n| vfscount       | :question:         |\n| vfsstat        | :question:         |\n| wakeuptime     | :question:         |\n| xfsdist        | :question:         |\n| xfsslower      | :question:         |\n| zfsdist        | :question:         |\n| zfsslower      | :question:         |\n\n\nTools marked with an :white_check_mark: have been \"tested\", the tool runs and\nthe output appears valid, but no indepth testing has been done. :x: indicate\ntools that are known to be broken and those marked with :question: have not been\ntested at all.\n\n# Building\n\n**Some builds are done with GCC from `devtoolset-8` from software collections\nto provide a modern GCC*\n\n`build-all.sh` builds all tools in a docker container and exports the RPMs at\nthe end. It starts of by building LLVM and Clang and creating a \"builder\" image\nwith that, using that image it will build the other RPMs.\nAs building LLVM \u0026 Clang takes a while the process can be sped up by reusing an\nearlier built image using the `--image-tag` flag\n\nA pre-build llvm image can be found\n[here](https://quay.io/repository/fbs/el7-bpf-specs?tab=tags)\n\nAlternatively you can build the spec files manually:\n\nThe first step is to build `llvm-clang` to provide a somewhat modern LLVM \u0026\nClang, and to provide static libs. Make sure you install the generated rpms\nbefore you go on the next step.\n\nAfter that bcc and then bpftrace can be built, bpftrace depends on bcc so make\nsure you install the version you just compiled. Although it also seems to work\nwith the version currently shipped with CentOS 7.\n\nbpftool is stand alone.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffbs%2Fel7-bpf-specs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffbs%2Fel7-bpf-specs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffbs%2Fel7-bpf-specs/lists"}