[roll] Roll fuchsia [libc] Temporarily disable ubsan on find_buildid_note

bringup.riscv64-asan is crashing with a stackoverflow in this function.
This function in particular uses a lot of stack for
-fsanitize=null,object-size,alignment checks. UBSan adds calls to
__ubsan_handle_type_mismatch_v1 which, on the failing case, accepts
pointers to globals containing type information. This function does a
lot of these checks and decides to store all these pointers onto the
stack at the start of the function which leads to the overflow.

In the long run, the new libc/dynamic linker may address some of this
and the instrumentation story will be different, but in the meantime, we
can selectively disable ubsan instrumentation on some early startup
code.

At the moment, it looks like just disabling ubsan on find_buildid_node
only seems to get us part the startup phase. I figure we can keep the
macro in case we may need to add it elsewhere in the future if a new
clang roll leads to different codegen which may use more stack.

Original-Bug: 130415, 130526
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/883574
Original-Revision: 65029c6c3777eb193739614d76a6a41fb1ed8684
GitOrigin-RevId: ab815223dfd5e4c3f324a415a9dd72cab3439669
Change-Id: Ib9297065c22d98d07199e0e2733f334da8eec2a4
1 file changed
tree: 0b468e7334cd4df374664e2cc2759301ecb78129
  1. git-hooks/
  2. infra/
  3. third_party/
  4. cts
  5. firmware
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
  14. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.