Kaynağa Gözat

btf: enable ELF_T_WORD fix (0004) alongside emit+new pahole; add ldconfig after pahole install

- Re-enable 0004 (resolve_btfids ELF_T_WORD endian fix). Runs 1/2 each enabled
  only one of {BTF_TYPE_EMIT, ELF fix} and both failed; 5.10.66 passes because it
  has BOTH in-tree (ELF fix + natural xdp_buff emission). Enable both together.
- Add 'sudo ldconfig' after 'make install pahole': the 1.31 build installs to
  /usr/local/bin but libs land in /usr/local/lib, and the runner's dynamic-linker
  cache does not yet know that dir, so 'pahole --version' failed with
  'cannot open shared object file: libdwarves_emit.so.1'.
TheWildJames 1 ay önce
ebeveyn
işleme
59ea183b1c
1 değiştirilmiş dosya ile 4 ekleme ve 1 silme
  1. 4 1
      .github/actions/btf/action.yml

+ 4 - 1
.github/actions/btf/action.yml

@@ -51,7 +51,7 @@ runs:
     - name: Apply resolve_btfids ELF_T_WORD endian fix (android12-5.10)
       shell: bash
       working-directory: ${{ github.workspace }}/kernel/common
-      if: false
+      if: ${{ inputs.version == 'android12-5.10' }}
       run: |
         set -euo pipefail
         # Backport of upstream 61e8aeda9398 ("bpf: Fix libelf endian handling
@@ -121,6 +121,9 @@ runs:
         cmake -D__LIB=lib -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Release .. >/dev/null
         make -j"$(nproc)" pahole
         sudo make install pahole
+        # pahole links against libdwarves*.so installed under /usr/local/lib;
+        # regenerate the dynamic linker cache so the binary can find them.
+        sudo ldconfig
         command -v pahole
         pahole --version