{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":146842101,"defaultBranch":"master","name":"bpftrace","ownerLogin":"bpftrace","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-08-31T04:34:44.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/157605399?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716275700.0","currentOid":""},"activityList":{"items":[{"before":"e4eaccfbf41fdfe0e19253173508d53346a532bb","after":"32e75a5b6966179ac34e153936dff23ff8ec3675","ref":"refs/heads/master","pushedAt":"2024-06-07T11:46:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ajor","name":"Alastair Robertson","path":"/ajor","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1007446?s=80&v=4"},"commit":{"message":"CHANGELOG: Cleanup summaries to be more useful to users\n\nInstead of listing what internal details have changed, we should\nexplain what user-visible effects the changes have.\n\nAdded a \"Security\" section, as recommended by keepachangelog.com.","shortMessageHtmlLink":"CHANGELOG: Cleanup summaries to be more useful to users"}},{"before":"a13d717ec3cd4735eee4a2cee7311a262045e8bf","after":"e4eaccfbf41fdfe0e19253173508d53346a532bb","ref":"refs/heads/master","pushedAt":"2024-06-06T15:10:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"dwarf: Do not excessively warn on missing lldb\n\nWhen building without LLDB, any uprobe will trigger a missing LLDB\nwarning. Given that all downstream users of Dwarf class will already\nemit a warning if necessary, we can drop this warning and make bpftrace\nless noisy.\n\nFixes #3222.","shortMessageHtmlLink":"dwarf: Do not excessively warn on missing lldb"}},{"before":"ce8f81a1945ac23ed94fe0db942c9592971a6320","after":"a13d717ec3cd4735eee4a2cee7311a262045e8bf","ref":"refs/heads/master","pushedAt":"2024-06-06T14:48:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jordalgo","name":"Jordan Rome","path":"/jordalgo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1537292?s=80&v=4"},"commit":{"message":"Add implicit cast for 'sum' and 'count' (#3189)\n\nThis utilizes 'map_lookup_percpu_elem' to iterate over\r\nthe per-cpu maps that 'sum' and 'count' use to aggregate\r\nthe values for each cpu so these maps can be used in kernel\r\nspace for conditionals and arithmetic.\r\n\r\nAdditionally, add explicit casting for printing or storing\r\njust the value for these types of maps.\r\n\r\nIssue: https://github.com/bpftrace/bpftrace/issues/3126\r\n\r\nNote: We can do the same to support to 'avg', 'max', 'min'\r\nbut those require the same user-space logic written in llvm ir.\r\n\r\nCo-authored-by: Jordan Rome ","shortMessageHtmlLink":"Add implicit cast for 'sum' and 'count' (#3189)"}},{"before":"02ee0660a0b2f5c76c8d840361aebb78955ddba7","after":"ce8f81a1945ac23ed94fe0db942c9592971a6320","ref":"refs/heads/master","pushedAt":"2024-06-05T16:50:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"Semantic analyser: fix checking record map types\n\nWhen assigning a struct type to a map already containing a type,\nsemantic analyser checks if the types have the same name. However, if\nthe map contains a non-struct type, this will cause a crash:\n\n # bpftrace -e 'BEGIN { @x = 0; @x = *curtask }'\n bpftrace: [...]/src/types.h:266: const std::string bpftrace::SizedType::GetName() const: Assertion `IsRecordTy()' failed.\n\nThe reason is that we detect the type mismatch but only log an error and\ncontinue with follow-up checks.\n\nFix the crash by only doing the names check if both the existing and the\nnewly assigned types are records.\n\nFixes #3218.","shortMessageHtmlLink":"Semantic analyser: fix checking record map types"}},{"before":"2e2bf9b4dbbeb3415976748bc8130f63ba6579ce","after":"02ee0660a0b2f5c76c8d840361aebb78955ddba7","ref":"refs/heads/master","pushedAt":"2024-06-05T01:49:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"semantic: Add missing single quotes to error messages\n\nWe were missing the trailing single quote.","shortMessageHtmlLink":"semantic: Add missing single quotes to error messages"}},{"before":"286640c9a96b21cedca8b08739f4373bba2779c6","after":"2e2bf9b4dbbeb3415976748bc8130f63ba6579ce","ref":"refs/heads/master","pushedAt":"2024-06-04T19:32:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"tests: utils: Use actually non-existing binary for test\n\n12345 is a PID that could plausibly exist. I've seen test failures\nlocally and in CI along the following:\n\n```\n/home/runner/work/bpftrace/bpftrace/tests/utils.cpp:374: Failure\nExpected equality of these values:\n pids.size()\n Which is: 1\n 0\n\n[ FAILED ] utils.get_pids_for_program (1 ms)\n```\n\nMake the test more reliable by using an actually non-existent exe.","shortMessageHtmlLink":"tests: utils: Use actually non-existing binary for test"}},{"before":"bbaae3e304c342bc1d5b9af75f266d6d03a42563","after":"286640c9a96b21cedca8b08739f4373bba2779c6","ref":"refs/heads/master","pushedAt":"2024-06-04T18:03:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jordalgo","name":"Jordan Rome","path":"/jordalgo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1537292?s=80&v=4"},"commit":{"message":"Filter kernel functions that cause instability (#3204)\n\nCertain kernel functions are known to cause systemic instability if\r\nthey are traced yet they are still advertised as functions that can\r\nbe traced (not listed in the blacklist). These functions should be\r\nremoved from the available list of probes that is generated.","shortMessageHtmlLink":"Filter kernel functions that cause instability (#3204)"}},{"before":"9a395e17a3795eda3d62f533290f819bf6deb27b","after":"bbaae3e304c342bc1d5b9af75f266d6d03a42563","ref":"refs/heads/master","pushedAt":"2024-06-03T15:46:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"aot: Fix return code to enable aot runtime tests\n\nCurrently, the build_binary function returns true (1) in the successful\npath, and false (0) on any errors. However, it should be the other way\naround, so let's fix that. This enables the --run-aot-tests flag (and\nany other command that generates an aot binary on the left side of &&)\nto work properly. While I'm at it, let's also fix the runtime test\ncommand to not need the runtime shim anymore, as the generated binaries\ncan now run on their own.","shortMessageHtmlLink":"aot: Fix return code to enable aot runtime tests"}},{"before":"19c829cbf85b9a1abf3d2b380f4520999a556e07","after":"9a395e17a3795eda3d62f533290f819bf6deb27b","ref":"refs/heads/master","pushedAt":"2024-06-02T19:07:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"cmake: libbpf: Require at least v1.0\n\nbpftrace relies on libbpf 1.0 b/c the 1.0 release contained major API\nbreaks. Going forward from 1.0, we can feature detect and expect\nbackwards compat.\n\nThis commit makes it so the error is more apparent on older systems.\nOtherwise you just get confusing build failures. Now you get:\n\n```\n0.763 -- Found LibBpf: /usr/lib/x86_64-linux-gnu/libbpf.so\n0.763 CMake Error at cmake/FindLibBpf.cmake:48 (message):\n0.763 Libbpf version too old to have libbpf_version.h\n0.763 Call Stack (most recent call first):\n0.763 CMakeLists.txt:84 (find_package)\n0.763\n0.763\n0.763 -- Performing Test HAVE_LIBBPF_UPROBE_MULTI\n0.791 -- Performing Test HAVE_LIBBPF_UPROBE_MULTI - Failed\n0.791 CMake Error at CMakeLists.txt:87 (message):\n0.791 bpftrace requires libbpf 1.0 or greater\n```\n\nThis closes #3210.","shortMessageHtmlLink":"cmake: libbpf: Require at least v1.0"}},{"before":"70452af2c8dd07b261b41715cc82e88ac5198d56","after":"19c829cbf85b9a1abf3d2b380f4520999a556e07","ref":"refs/heads/master","pushedAt":"2024-05-31T21:54:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jordalgo","name":"Jordan Rome","path":"/jordalgo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1537292?s=80&v=4"},"commit":{"message":"tools/swapin: Support swap_read_folio() (#3209)\n\nkernel commit c9bdf768dd93(\"mm: convert swap_readpage() to swap_read_folio()\")\r\nconvert swap_readpage() to swap_read_folio(), try attaching two kprobes, one\r\nwill trigger a warning and the other will be attached successfully.\r\n\r\nkernel version:\r\n\r\n $ git describe c9bdf768dd93\r\n v6.7-rc4-290-gc9bdf768dd93\r\n\r\nFor example, on fedora 40:\r\n\r\n $ uname -r\r\n 6.8.10-300.fc40.x86_64\r\n $ sudo ./swapin.bt\r\n ./swapin.bt:1-22: WARNING: swap_readpage is not traceable (either non-\r\n existing, inlined, or marked as \"notrace\"); attaching to it will likely fail\r\n Attaching 3 probes...\r\n cannot attach kprobe, probe entry may not exist\r\n WARNING: could not attach probe kprobe:swap_readpage, skipping.\r\n\r\nAs we could see above, kprobe:swap_readpage trigger a warning, and\r\nkprobe:swap_read_folio be attached.\r\n\r\nSigned-off-by: Rong Tao ","shortMessageHtmlLink":"tools/swapin: Support swap_read_folio() (#3209)"}},{"before":"bed4d2edff9e672cdcdca4dab8b4b87b108b94c0","after":"70452af2c8dd07b261b41715cc82e88ac5198d56","ref":"refs/heads/master","pushedAt":"2024-05-30T22:23:44.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"ci: Use latest nix installer/cache actions\n\nWe're seeing some flakiness in installer action. Maybe upgrading to\nlatest releases will help.","shortMessageHtmlLink":"ci: Use latest nix installer/cache actions"}},{"before":"c532239f4b42eda260fcc8aa9ece56fecc1d083e","after":"bed4d2edff9e672cdcdca4dab8b4b87b108b94c0","ref":"refs/heads/master","pushedAt":"2024-05-30T16:30:00.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"ci: Add LLVM 18 job\n\nStart testing against LLVM 18.","shortMessageHtmlLink":"ci: Add LLVM 18 job"}},{"before":"a11b9d8940e31bbab4aa9e1c7cd04c9bc16bd403","after":"c532239f4b42eda260fcc8aa9ece56fecc1d083e","ref":"refs/heads/master","pushedAt":"2024-05-28T14:04:38.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"viktormalik","name":"Viktor Malík","path":"/viktormalik","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7603704?s=80&v=4"},"commit":{"message":"Drop debug prints of ClangParser input\n\nThe input never changes, it always has the form:\n\n #include \n ... definitions from the script ...\n\nso it doesn't make much sense to print it.","shortMessageHtmlLink":"Drop debug prints of ClangParser input"}},{"before":"12e43c56a283bd19d5610745b8e5f9ada653f8d2","after":"a11b9d8940e31bbab4aa9e1c7cd04c9bc16bd403","ref":"refs/heads/master","pushedAt":"2024-05-27T14:37:25.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"aot: Give preference to local build shim\n\nThis helps with development such that we don't need to mess with $PATH\nwhen running --aot commands. Now we can just run it like a prod\ninvocation and it will \"just work\".","shortMessageHtmlLink":"aot: Give preference to local build shim"}},{"before":"d44a6bfbc357b63d630ec2c185efb0afb1a88256","after":"12e43c56a283bd19d5610745b8e5f9ada653f8d2","ref":"refs/heads/master","pushedAt":"2024-05-27T03:31:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"aot: Fix distro builds\n\nWe need to link aot.o against libelf if aot.cpp wants to actually use\nthe dependency.","shortMessageHtmlLink":"aot: Fix distro builds"}},{"before":"ccc6a9bae04deb62b35e450c93afb77de6bf156a","after":"d44a6bfbc357b63d630ec2c185efb0afb1a88256","ref":"refs/heads/master","pushedAt":"2024-05-26T15:11:18.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"Codegen: Don't emit lifetime.end for variables used as map keys\n\nPreviously a lifetime.end was always inserted for expressions used as\nmap keys. This is not correct if the expression is a variable which is\nused again later in the program.\n\n$blah should not be marked as dead after line 4, it should persist at\nleast until after line 5:\n 1 BEGIN\n 2 {\n 3 $blah = \"abc\";\n 4 @x[$blah] = 1;\n 5 @y[$blah] = 1;\n 6 }","shortMessageHtmlLink":"Codegen: Don't emit lifetime.end for variables used as map keys"}},{"before":"fc21380cc7f276138d475de78a8ac6737ab8cf91","after":"ccc6a9bae04deb62b35e450c93afb77de6bf156a","ref":"refs/heads/master","pushedAt":"2024-05-26T15:06:19.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"aot: Allow running aot binaries directly without calling runtime shim\n\nCurrently, even though we make a copy of the runtime shim and then\nembed the necessary metadata + bytecode into the binary, you still need\nto pass that binary as an argument to the runtime shim in order to run\nit (i.e. you need to do 'bpftrace-aotrt '). Since the binary\ncan fully function on its own, we don't need to do this anymore.\n\nThis commit makes the executable just look inside itself for the\nmetadata and bytecode, skipping the need to call bpftrace-aotrt. (i.e.\nyou can now run the binary with just ./.)","shortMessageHtmlLink":"aot: Allow running aot binaries directly without calling runtime shim"}},{"before":"c3169049b6cf96f6994a5e437cb14bafdb05e4bf","after":"fc21380cc7f276138d475de78a8ac6737ab8cf91","ref":"refs/heads/master","pushedAt":"2024-05-24T08:02:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"viktormalik","name":"Viktor Malík","path":"/viktormalik","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7603704?s=80&v=4"},"commit":{"message":"CMake: Re-generate codegen_includes.cpp when test files are added or removed\n\n- CONFIGURE_DEPENDS triggers re-generation of the list of source files\n as necessary\n- Pass list of source files through to the sub command so we only have a\n single glob to deal with\n- Correctly set up the custom command's OUTPUT parameter so that\n codegen_includes.cpp is re-generated before it is compiled into\n bpftrace_test","shortMessageHtmlLink":"CMake: Re-generate codegen_includes.cpp when test files are added or …"}},{"before":"faff4d87aa01acb5b6fc250181447948abd348c5","after":"c3169049b6cf96f6994a5e437cb14bafdb05e4bf","ref":"refs/heads/master","pushedAt":"2024-05-23T14:01:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jordalgo","name":"Jordan Rome","path":"/jordalgo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1537292?s=80&v=4"},"commit":{"message":"Remove LOG(FATAL) (#3164)\n\nReplace these with either LOG(BUG),\r\nLOG(ERROR) and exit(1) in main.cpp, or\r\n`throw FatalUserException`.\r\n\r\nThis is to avoid calling `abort` for user\r\nerrors and removes the confusion between\r\n`LOG(ERROR)` and `LOG(FATAL)`.\r\n\r\nIssue: https://github.com/bpftrace/bpftrace/issues/3163\r\n\r\nCo-authored-by: Jordan Rome ","shortMessageHtmlLink":"Remove LOG(FATAL) (#3164)"}},{"before":"4c8b262aed6399a04126d2f5199d0d588924e6d2","after":"faff4d87aa01acb5b6fc250181447948abd348c5","ref":"refs/heads/master","pushedAt":"2024-05-23T07:13:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"viktormalik","name":"Viktor Malík","path":"/viktormalik","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7603704?s=80&v=4"},"commit":{"message":"Refactor BPF load retry loop: Add logging and add: no BTF, no func_infos\n\nAlso handle the case where EM_BPF may not be defined on older systems.\n\nCo-authored-by: Viktor Malik \nSigned-off-by: Bernhard Kaindl ","shortMessageHtmlLink":"Refactor BPF load retry loop: Add logging and add: no BTF, no func_infos"}},{"before":"7041eaa912b0bf417f5a31ec4107eced31f58178","after":"093855092c5fe2c4099759da2ce85afb3187c049","ref":"refs/heads/release/0.20.x","pushedAt":"2024-05-21T07:06:56.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"viktormalik","name":"Viktor Malík","path":"/viktormalik","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7603704?s=80&v=4"},"commit":{"message":"v0.20.4 release\n\nFix CVE-2024-2313 by removing unpacking kernel headers or looking in tmp","shortMessageHtmlLink":"v0.20.4 release"}},{"before":"67629c1927f411758fe4da546eb57840d972b6e9","after":"4c8b262aed6399a04126d2f5199d0d588924e6d2","ref":"refs/heads/master","pushedAt":"2024-05-21T07:05:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"viktormalik","name":"Viktor Malík","path":"/viktormalik","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7603704?s=80&v=4"},"commit":{"message":"ClangParser: fix builtin includes\n\nCommit 14cb69defa added the \"/bpftrace/include\" prefix to headers\ngenerated by bpftrace (__btf_generated_header.h, clang_workarounds.h),\nhowever, commit bc73244963 (\"Don't unpack kernel headers or look in tmp\n(#3156)\") broke the latter when moving code around in main.cpp.\n\nReintroduce the prefix.","shortMessageHtmlLink":"ClangParser: fix builtin includes"}},{"before":"6d260edbec86a6ef58a118fdf0c936f90d79a84c","after":"67629c1927f411758fe4da546eb57840d972b6e9","ref":"refs/heads/master","pushedAt":"2024-05-20T11:16:09.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"viktormalik","name":"Viktor Malík","path":"/viktormalik","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7603704?s=80&v=4"},"commit":{"message":"Fix error in dereferencing kernel double pointers\n\nBPF verifier can detect safety of pointer accesses for BTF-based probes\n(k(ret)func, iter) and therefore it is not necessary to use\nbpf_probe_read_kernel inside such probes. This feature was enabled in\nbpftrace by commit c2c3ab96 (\"Support identifying btf type\").\n\nUnfortunately, the verifier is not able to track BTF information for\ndereferences and array accesses on double pointers so, e.g. the\nfollowing script fails to load:\n\n # bpftrace -e 'kfunc:__module_get { print(args.module->trace_events[0]->flags);' } -v\n INFO: node count: 13\n Attaching 1 probe...\n\n Error log:\n reg type unsupported for arg#0 function kfunc_vmlinux___module_get#22\n 0: R1=ctx(off=0,imm=0) R10=fp0\n 0: (79) r1 = *(u64 *)(r1 +0)\n func '__module_get' arg0 has btf_id 250 type STRUCT 'module'\n 1: R1_w=ptr_module(off=0,imm=0)\n 1: (79) r1 = *(u64 *)(r1 +1128) ; R1_w=scalar()\n 2: (79) r1 = *(u64 *)(r1 +0)\n R1 invalid mem access 'scalar'\n processed 3 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0\n\n ERROR: Error loading program: kfunc:vmlinux:__module_get\n\nA similar error happens when dereferencing the double pointer with `*`\n\n # bpftrace -e 'kfunc:__module_get { print((*args.module->trace_events)->flags);' } -v\n\nAn analogous program fails to load even when written using libbpf.\n\nWe need to use bpf_probe_read_kernel for such cases so do not propagate\nthe SizedType::is_btftype flag when observing a dereference or array\naccess of a double pointer in semantic analyser.","shortMessageHtmlLink":"Fix error in dereferencing kernel double pointers"}},{"before":"668174cc0ca0b68285b433b9b0f0e4523bcc933c","after":"6d260edbec86a6ef58a118fdf0c936f90d79a84c","ref":"refs/heads/master","pushedAt":"2024-05-18T19:02:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danobi","name":"Daniel Xu","path":"/danobi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/824615?s=80&v=4"},"commit":{"message":"man: Clarify ++/-- operators can lose updates\n\nWe already call this out in count() docs. Let's do it for ++/-- as well.","shortMessageHtmlLink":"man: Clarify ++/-- operators can lose updates"}},{"before":"0d06553e98833fa014b514bd620701623ea65607","after":"668174cc0ca0b68285b433b9b0f0e4523bcc933c","ref":"refs/heads/master","pushedAt":"2024-05-18T17:53:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jordalgo","name":"Jordan Rome","path":"/jordalgo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1537292?s=80&v=4"},"commit":{"message":"Fix build on aarch64 (#3184)\n\nThis fixes this error: \"impossible constraint in ‘asm’\"\r\nby removing the raw asm assembly call in inline_function.c.\r\n\r\nCo-authored-by: Jordan Rome ","shortMessageHtmlLink":"Fix build on aarch64 (#3184)"}},{"before":"e1e20b1dd5f62399ac85f16e5b4f0ba8afec5bc0","after":"0d06553e98833fa014b514bd620701623ea65607","ref":"refs/heads/master","pushedAt":"2024-05-18T13:45:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jordalgo","name":"Jordan Rome","path":"/jordalgo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1537292?s=80&v=4"},"commit":{"message":"config: Specify the type of str_trunc_trailer explicitly (#3183)\n\nBuilt bpftrace with LLVM/clang 16 and ran some random scripts,\r\nI got the following error:\r\n\r\n $ sudo bpftrace -e '...'\r\n Attaching 1 probe...\r\n terminate called after throwing an instance of 'std::runtime_error'\r\n what(): Type mismatch for config key\r\n [1] 1297304 abort sudo ./bpftrace -e\r\n\r\nThe coredump reveals a failed type deduction:\r\n\r\n (gdb) p config_map_\r\n ...\r\n [std::variant [index 2] = {bpftrace::ConfigKeyString::str_trunc_trailer}] = {source = bpftrace::ConfigSource::default_,\r\n value = std::variant [index 0] = {true}},\r\n ...\r\n\r\nLet's specify the type of str_trunc_trailer to avoid such error.\r\n\r\nSigned-off-by: Hengqi Chen ","shortMessageHtmlLink":"config: Specify the type of str_trunc_trailer explicitly (#3183)"}},{"before":"deee77a8804fee18374acf301dab096a75751fb1","after":"e1e20b1dd5f62399ac85f16e5b4f0ba8afec5bc0","ref":"refs/heads/master","pushedAt":"2024-05-17T16:17:03.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"viktormalik","name":"Viktor Malík","path":"/viktormalik","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7603704?s=80&v=4"},"commit":{"message":"Runtime tests: fix DWARF ustack test\n\nThe \"dwarf.uprobe inlined function - ustack\" runtime test seems to\nexpect ustacks of the following form:\n\n main+21\n 0x7fdff76fb14a\n\nHowever, on my local setup, I'm getting:\n\n main+21\n 0x7fdff76fb14a\n 0x7fdff76fb20b\n _start+37\n\nIMHO, the most important part is to check that the \"main+21\" call occurs\nat the top of the stack and everything below is not that important.\n\nUpdate the test accordingly.","shortMessageHtmlLink":"Runtime tests: fix DWARF ustack test"}},{"before":"47a5a30ca2bc490d291fef9c0d7711b757171c43","after":"deee77a8804fee18374acf301dab096a75751fb1","ref":"refs/heads/master","pushedAt":"2024-05-17T12:13:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ajor","name":"Alastair Robertson","path":"/ajor","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1007446?s=80&v=4"},"commit":{"message":"CollectNodes: Recurse into children of the target type\n\nThe test case `CollectNodes.nested` would have failed before this patch,\nwith `visitor.nodes()` returning an empty list.","shortMessageHtmlLink":"CollectNodes: Recurse into children of the target type"}},{"before":"d592be8fe65d7b49aa183eb1a05625df1743ed0c","after":"47a5a30ca2bc490d291fef9c0d7711b757171c43","ref":"refs/heads/master","pushedAt":"2024-05-17T09:01:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ajor","name":"Alastair Robertson","path":"/ajor","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1007446?s=80&v=4"},"commit":{"message":"Codegen: Memset(0) memory of variables if the data to be written is not full-size\n\n BEGIN\n {\n $x = \"xxxxx\";\n $x = \"a\";\n }\n\nThe value stored in $x at the end of the above script should be\n\"a\\0\\0\\0\\0\\0\". Previously $x would have held \"a\\0xxx\" as the second\nassignment did not overwrite all the data from the first.","shortMessageHtmlLink":"Codegen: Memset(0) memory of variables if the data to be written is n…"}},{"before":"d45aa54634731579efb514020be54c98fe5ce14d","after":"d592be8fe65d7b49aa183eb1a05625df1743ed0c","ref":"refs/heads/master","pushedAt":"2024-05-16T13:40:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ajor","name":"Alastair Robertson","path":"/ajor","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1007446?s=80&v=4"},"commit":{"message":"Fix intptrcast runtime tests\n\nExplicitly put numbers into an array on the stack instead of relying on\narchitecture-specific calling conventions for stack-passed parameters.\n\nThis removes the dependency on the stack pointer's value (which changed\nas of #3095) and makes the tests architecture independent.","shortMessageHtmlLink":"Fix intptrcast runtime tests"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEXymdnQA","startCursor":null,"endCursor":null}},"title":"Activity · bpftrace/bpftrace"}