-
Notifications
You must be signed in to change notification settings - Fork 36.6k
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
build: SystemTap 4.7 (RISC-V support) #25360
Conversation
From 4.6, SystemTap now supports 64-bit RISC-V. * What's new in version 4.6, 2021-11-15 - SystemTap has added support for the 64-bit RISC-V architecture.
Concept ACK, going to test. |
I haven't verified whether they work, but
gdb output:
|
I have tried to run the tracepoint tests in RISC-V, however, the necessary bcc python binding is not installable on this platform yet:
It might be possible to build it from source, I'm not sure, I think there's some problems around LLVM. So, I've tried to test in a different way, by breaking on the tracepoint using gdb. This seems to work, at first:
Printing the arguments apparently doesn't work on this platform yet!
|
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsNo conflicts as of last run. |
GUIX hashes on arm64, mine match @fanquake:
|
Just a quick note, will review, guix-build, and test more thoroughly: Thanks @fanquake! I got the feeling that the motivation for this PR is partially the "full 64-bit RISC-V support" of the SystemTap tooling. We (only) use the As per #23724 (comment)
git log release-4.5..release-4.7 -- includes/sys/sdt.h
Nonetheless, I think keeping dependencies up-to-date is important -> will test/review. |
Whoops, i completely forgot about that. I remember checking this before but i thought it was for a custom build, not GUIX. Yes, I don't think this makes a difference then, in that regard! |
@laanwj I haven't played around with the SystemTap tooling yet (it has been on my list for a while though). It could be that we can somehow hook into tracepoints with it. As it now has "full RISC-V support" it could work on RISC-V too. I'll let you know what/how to test once I look into it. |
Thanks! |
The SystemTap language is surprisingly similar to bpftrace, but a bit more powerful! @laanwj I'm able to run
produces output similar to:
|
Unfortunately, debian's version of systemtap is still at 4.6. During build I get all kinds of errors (I guess while trying to build a kernel module?):
Either I really need 4.7 ( I'll try this later, it's easy enough to make sure the flags are enabled, but I have some trouble on this device with kernels (newer ones seemed to crash randomly) so I've held on to this specific one for a while. Edit: yes, I am missing |
Yess
Recompiling the kernel with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Post merge review:
- sha256sum for my downloaded systemtap-4.7 matches
- GUIX hashes match
- the updated
remove_SDT_ASM_SECTION_AUTOGROUP_SUPPORT_check.patch
looks OK to me - build on
x86_64
andaarch64
and checked that tracepoints are compiled in - the USDT interface tests pass on
x86_64
andaarch64
b8c146b build: systemtap 4.7 (fanquake) Pull request description: As of version 4.6, SystemTap now fully supports 64-bit RISC-V. Full SystemTap NEWS is here: https://sourceware.org/git/?p=systemtap.git;a=blob;f=NEWS; Guix Build (x86_64): ```bash 2c4cf36ea601de27ce1b56b923d41aee30d9d64295a700dcc705bd518865c81c guix-build-b8c146b87720/output/aarch64-linux-gnu/SHA256SUMS.part 10dbe855ab64e0e76398fc27e9471071820b9cd5289773c8d9d272f9bb51b7ba guix-build-b8c146b87720/output/aarch64-linux-gnu/bitcoin-b8c146b87720-aarch64-linux-gnu-debug.tar.gz 530808f3803a31c4fe84ec85e7b6c284e52850ba32df12dd1e273e9896bad7ff guix-build-b8c146b87720/output/aarch64-linux-gnu/bitcoin-b8c146b87720-aarch64-linux-gnu.tar.gz 9fa9e1f2412854f87d980e97cb7b4df37a1a13d48a633b9df5b0006d60c10ede guix-build-b8c146b87720/output/arm-linux-gnueabihf/SHA256SUMS.part dcf44666f80b71637403d5f6fb4eb8159ef61815b3feedc84e3a26c99bd18152 guix-build-b8c146b87720/output/arm-linux-gnueabihf/bitcoin-b8c146b87720-arm-linux-gnueabihf-debug.tar.gz 8623a1e969a8f40286060ebbd9085f3d4f621c507fd5448b38ba36129ba0950a guix-build-b8c146b87720/output/arm-linux-gnueabihf/bitcoin-b8c146b87720-arm-linux-gnueabihf.tar.gz 59a71bdc8403f4fff4370922a297a7a2200b0a206d68ac71960f09e728bf0781 guix-build-b8c146b87720/output/arm64-apple-darwin/SHA256SUMS.part 5e17c76526da9f4630ffed2cc2870aa058139fa439d4c756055d8b9f53fc05dc guix-build-b8c146b87720/output/arm64-apple-darwin/bitcoin-b8c146b87720-arm64-apple-darwin-unsigned.dmg 72ebdf006dd279128b33e3b0902f8d3d1291d90fd2d67be60bbbd0f0d5e5b336 guix-build-b8c146b87720/output/arm64-apple-darwin/bitcoin-b8c146b87720-arm64-apple-darwin-unsigned.tar.gz d3a1bafba070e8197d2d3f790053b6204e6779b8352c41118c82e16f2e500620 guix-build-b8c146b87720/output/arm64-apple-darwin/bitcoin-b8c146b87720-arm64-apple-darwin.tar.gz 76510b7e6aaccfa8c0f370e1a6d4b6f79e21572ebc0a369d2195557cfc9f6966 guix-build-b8c146b87720/output/dist-archive/bitcoin-b8c146b87720.tar.gz cb18e130efa70ca58df2b89d7cc368f0374ad3cf6c59f97cee4c12cfbec6982c guix-build-b8c146b87720/output/powerpc64-linux-gnu/SHA256SUMS.part 1028f9deaa1bd140ead816e0278ea5f3eb27e0d70e3e3b11d1f6098da46a0538 guix-build-b8c146b87720/output/powerpc64-linux-gnu/bitcoin-b8c146b87720-powerpc64-linux-gnu-debug.tar.gz 013d97e33f51b985b2b514dbdae093806c890d9f6ca58aec1d62814a874efb8a guix-build-b8c146b87720/output/powerpc64-linux-gnu/bitcoin-b8c146b87720-powerpc64-linux-gnu.tar.gz 3b2cfa1d9418682eeed02718de36137e330573df24b28b5681301a5cb5320e6b guix-build-b8c146b87720/output/powerpc64le-linux-gnu/SHA256SUMS.part 480fd977d8eda3bb9440bfa3e37452ecbeb0f1f4e36a35f6bfa820e7666d2a71 guix-build-b8c146b87720/output/powerpc64le-linux-gnu/bitcoin-b8c146b87720-powerpc64le-linux-gnu-debug.tar.gz eabab79ff95df3f326dc1e40dba4925b9a6de374763180c4170a30cdfe26136a guix-build-b8c146b87720/output/powerpc64le-linux-gnu/bitcoin-b8c146b87720-powerpc64le-linux-gnu.tar.gz 7f5b6d482bee0c73cf0727395d78591559ab974a2b9bff9689ca2262d0612f39 guix-build-b8c146b87720/output/riscv64-linux-gnu/SHA256SUMS.part 228cc22329e50d99edc33465f10e136742833ebc675920bdbde07ca3388523d7 guix-build-b8c146b87720/output/riscv64-linux-gnu/bitcoin-b8c146b87720-riscv64-linux-gnu-debug.tar.gz b5d2565a0b05d51e9834c0212b34903c362061c2489878c82dfbe04729cefa2c guix-build-b8c146b87720/output/riscv64-linux-gnu/bitcoin-b8c146b87720-riscv64-linux-gnu.tar.gz dde6dcf82d7b2f3279150564302a5008d69a3a0fcdedc717c124d460d73ff71d guix-build-b8c146b87720/output/x86_64-apple-darwin/SHA256SUMS.part a5c2e69aba46a164425013b0360674d77687dfe8accc8e8cb97dc630542dc1d3 guix-build-b8c146b87720/output/x86_64-apple-darwin/bitcoin-b8c146b87720-x86_64-apple-darwin-unsigned.dmg cea73001db5a31880ec119f959bb0db21b3f7a12ac21a630b2f12247c4c0b578 guix-build-b8c146b87720/output/x86_64-apple-darwin/bitcoin-b8c146b87720-x86_64-apple-darwin-unsigned.tar.gz 8cf6ba1de32f68c70ee23a19fbbeadb59df4c008792c717ac22d476ebe9aa921 guix-build-b8c146b87720/output/x86_64-apple-darwin/bitcoin-b8c146b87720-x86_64-apple-darwin.tar.gz 061247b31ba1012689817e304357fca0b7262106223d6eaf8d0b31148bd764d1 guix-build-b8c146b87720/output/x86_64-linux-gnu/SHA256SUMS.part 20caf9d234a88333b696e0261284c29ea4f83c3b9e590696230614220b2c7e2e guix-build-b8c146b87720/output/x86_64-linux-gnu/bitcoin-b8c146b87720-x86_64-linux-gnu-debug.tar.gz 54c3e57cc4cc6173aa2bb4e17f47e85a346ef752973d6b97f7a3ff015d4f5068 guix-build-b8c146b87720/output/x86_64-linux-gnu/bitcoin-b8c146b87720-x86_64-linux-gnu.tar.gz 47f4104cbd46c96bf9c3cb4fcf9e813ee73566781a599e850bf8c5c8d6e7970a guix-build-b8c146b87720/output/x86_64-w64-mingw32/SHA256SUMS.part b337b2841988f0cdcd8aebec669467f38354b626a7d331e84a5a7b7fc47f6a47 guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64-debug.zip 25e97d46edb35dd87a55b285dad03a6c571336ab93f8c7457571498e3057118a guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64-setup-unsigned.exe bc9870404d52a5423ce8fee37cae3ebda00d9958b1469d2930aa8f0d61ab55ef guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64-unsigned.tar.gz 194615a1645bed622d91e8760cd3ec33fd0ef684dd6a7a04d1731272f7fd1557 guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64.zip ``` Guix Build (arm64): ```bash 442bf81809c481be38317703bdf6ae45d9dd6f1b044515dfe36be514eae8b66a guix-build-b8c146b87720/output/arm-linux-gnueabihf/SHA256SUMS.part a104a61a1dd4f663e809344cc86d500254d4d451f23c062f48e50c6418fcd135 guix-build-b8c146b87720/output/arm-linux-gnueabihf/bitcoin-b8c146b87720-arm-linux-gnueabihf-debug.tar.gz 12f84be1ad44d28595144bbb6319cb2f6fb95b27c633f54771815ccff4fb40aa guix-build-b8c146b87720/output/arm-linux-gnueabihf/bitcoin-b8c146b87720-arm-linux-gnueabihf.tar.gz e6b42524123488ef3342d0806ac562985a1fff214c1bfcd1a26ab8e288caf24a guix-build-b8c146b87720/output/arm64-apple-darwin/SHA256SUMS.part bb01d384bff21c5280d4a193bd4fb158ecaa41d0746db30a52c135e5a6e76750 guix-build-b8c146b87720/output/arm64-apple-darwin/bitcoin-b8c146b87720-arm64-apple-darwin-unsigned.dmg 2ebeca13939e408aae304f77eb32c683ce703262475d70f9c0a9a51533cabdb4 guix-build-b8c146b87720/output/arm64-apple-darwin/bitcoin-b8c146b87720-arm64-apple-darwin-unsigned.tar.gz b5df98dc9b66eb1ae725c050f9e1d94a551ce9637cef29f82cb38ef784996c1c guix-build-b8c146b87720/output/arm64-apple-darwin/bitcoin-b8c146b87720-arm64-apple-darwin.tar.gz 76510b7e6aaccfa8c0f370e1a6d4b6f79e21572ebc0a369d2195557cfc9f6966 guix-build-b8c146b87720/output/dist-archive/bitcoin-b8c146b87720.tar.gz d38cc0e933f37108f71d826e20d6cc1510fe98d830484977d032fbb66d94ab02 guix-build-b8c146b87720/output/powerpc64-linux-gnu/SHA256SUMS.part 8dc33ebac8ec67cefe842419015ab42f344971a9fe071bda2b09f6b1696fea68 guix-build-b8c146b87720/output/powerpc64-linux-gnu/bitcoin-b8c146b87720-powerpc64-linux-gnu-debug.tar.gz 57b01141e859246a70c9110c5daa2b388dfc5bab442a873f6b715981bd3dfca1 guix-build-b8c146b87720/output/powerpc64-linux-gnu/bitcoin-b8c146b87720-powerpc64-linux-gnu.tar.gz 282befd619cfb541c31d1a81495e08c409f2d9174e876f05dc7bd361a3a1821e guix-build-b8c146b87720/output/powerpc64le-linux-gnu/SHA256SUMS.part 8ef3a9e19393ef36c8a001477e9ee08dba705978775fcebb5c2349612ce22808 guix-build-b8c146b87720/output/powerpc64le-linux-gnu/bitcoin-b8c146b87720-powerpc64le-linux-gnu-debug.tar.gz bbfde476e8f630783a12e9d900d91ab2ab24ee2c7e607699e37fd2d273627a0e guix-build-b8c146b87720/output/powerpc64le-linux-gnu/bitcoin-b8c146b87720-powerpc64le-linux-gnu.tar.gz b0f8f33becc355ab70f549ed4d33b49f73aa5b4adb793b0e661ff1180861cdba guix-build-b8c146b87720/output/riscv64-linux-gnu/SHA256SUMS.part 7ee185e1aa6a7b4c536f375d165dd0232a310892a2e9446de713081b471d5d9e guix-build-b8c146b87720/output/riscv64-linux-gnu/bitcoin-b8c146b87720-riscv64-linux-gnu-debug.tar.gz 8d15acb1da57c753131e887453d95c0539f2d4bbb4e3a6deb976e17dee306946 guix-build-b8c146b87720/output/riscv64-linux-gnu/bitcoin-b8c146b87720-riscv64-linux-gnu.tar.gz dde6dcf82d7b2f3279150564302a5008d69a3a0fcdedc717c124d460d73ff71d guix-build-b8c146b87720/output/x86_64-apple-darwin/SHA256SUMS.part a5c2e69aba46a164425013b0360674d77687dfe8accc8e8cb97dc630542dc1d3 guix-build-b8c146b87720/output/x86_64-apple-darwin/bitcoin-b8c146b87720-x86_64-apple-darwin-unsigned.dmg cea73001db5a31880ec119f959bb0db21b3f7a12ac21a630b2f12247c4c0b578 guix-build-b8c146b87720/output/x86_64-apple-darwin/bitcoin-b8c146b87720-x86_64-apple-darwin-unsigned.tar.gz 8cf6ba1de32f68c70ee23a19fbbeadb59df4c008792c717ac22d476ebe9aa921 guix-build-b8c146b87720/output/x86_64-apple-darwin/bitcoin-b8c146b87720-x86_64-apple-darwin.tar.gz a05b02f8270bc1928e89ac03d2ab40da9e1fc35cf5416c511fe67a197c64b241 guix-build-b8c146b87720/output/x86_64-linux-gnu/SHA256SUMS.part 9f213cfc3afb899cf1e06b796f0ab7e4414f60e267f286837d10944c592d0cad guix-build-b8c146b87720/output/x86_64-linux-gnu/bitcoin-b8c146b87720-x86_64-linux-gnu-debug.tar.gz 7f8100bbf4415f4cf531e0b652026e1429877df873bce6b45433e7e1b638efe4 guix-build-b8c146b87720/output/x86_64-linux-gnu/bitcoin-b8c146b87720-x86_64-linux-gnu.tar.gz 8d5ad864562ca22a37380a89db7a78574462b78bd74fcf8b663b8164043e800f guix-build-b8c146b87720/output/x86_64-w64-mingw32/SHA256SUMS.part 3713b4d70e4eb56b0875d07c698eab270c680da0f81be5394ea16750c5b56490 guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64-debug.zip 25e97d46edb35dd87a55b285dad03a6c571336ab93f8c7457571498e3057118a guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64-setup-unsigned.exe bc9870404d52a5423ce8fee37cae3ebda00d9958b1469d2930aa8f0d61ab55ef guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64-unsigned.tar.gz 1d78eb522fdebb8e494c63656212972657f323406b43a5f6af835f272529915f guix-build-b8c146b87720/output/x86_64-w64-mingw32/bitcoin-b8c146b87720-win64.zip ``` ACKs for top commit: laanwj: Tested ACK b8c146b Tree-SHA512: e62621b3b51fe7e391f262137de87231a3fb0e39c4090017990317ae758493fab36e5764843b905b86a5d48bbf2c8a08de7c596c1cc590585099fe5bc9cc18be
As of version 4.6, SystemTap now fully supports 64-bit RISC-V.
Full SystemTap NEWS is here: https://sourceware.org/git/?p=systemtap.git;a=blob;f=NEWS;
Guix Build (x86_64):
Guix Build (arm64):