Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8298705

Instrument Arena and ResourceArea for ASan

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Won't Fix
    • Icon: P4 P4
    • tbd
    • 21
    • hotspot

      ASan is "Address Sanitizer". See https://github.com/google/sanitizers/wiki/AddressSanitizer

      Arena, and by extension ResourceArea, are custom allocators. They allocate chunks of malloc-based memory and allocate objects in them, one after another. As far as ASan is concerned, the entire malloc-based chunk is valid until free. In reality the subregions of the chunks are not valid until handed out by the arena.

      ASan supports user-specified poisoning/unpoisoning. This allows ASan to detect unexpected usage of memory, effectively allowing us to detect use-after-free in the Arena.

      This enhancement will instrument Arena and ResouceArena for ASan using poisoning/unpoisoning.

      Additionally JDK-8298445 will be able to make use of poisoning/unpoisoning information by not looking for pointers in poisoned memory. This makes it much more accurate and determenistic.

            jcking Justin King
            jcking Justin King
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: