CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
63 lines
2.7 KiB
C++
63 lines
2.7 KiB
C++
//===-- flags.inc -----------------------------------------------*- C++ -*-===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef SCUDO_FLAG
|
|
#error "Define SCUDO_FLAG prior to including this file!"
|
|
#endif
|
|
|
|
SCUDO_FLAG(int, quarantine_size_kb, 0,
|
|
"Size (in kilobytes) of quarantine used to delay the actual "
|
|
"deallocation of chunks. Lower value may reduce memory usage but "
|
|
"decrease the effectiveness of the mitigation.")
|
|
|
|
SCUDO_FLAG(int, thread_local_quarantine_size_kb, 0,
|
|
"Size (in kilobytes) of per-thread cache used to offload the global "
|
|
"quarantine. Lower value may reduce memory usage but might increase "
|
|
"the contention on the global quarantine.")
|
|
|
|
SCUDO_FLAG(int, quarantine_max_chunk_size, 0,
|
|
"Size (in bytes) up to which chunks will be quarantined (if lower "
|
|
"than or equal to).")
|
|
|
|
SCUDO_FLAG(bool, dealloc_type_mismatch, false,
|
|
"Terminate on a type mismatch in allocation-deallocation functions, "
|
|
"eg: malloc/delete, new/free, new/delete[], etc.")
|
|
|
|
SCUDO_FLAG(bool, delete_size_mismatch, true,
|
|
"Terminate on a size mismatch between a sized-delete and the actual "
|
|
"size of a chunk (as provided to new/new[]).")
|
|
|
|
SCUDO_FLAG(
|
|
bool, dealloc_align_mismatch, true,
|
|
"Terminate on an alignment mismatch in allocation-deallocation functions, "
|
|
"eg: memalign/free_aligned_sized, etc.")
|
|
|
|
#if SCUDO_FUCHSIA
|
|
SCUDO_FLAG(int, zero_on_dealloc_max_size, 0,
|
|
"Only chunks smaller or equal to this threshold will be zeroed on "
|
|
"deallocation. Requires zero on dealloc to be enabled.")
|
|
#endif
|
|
|
|
SCUDO_FLAG(bool, zero_contents, false, "Zero chunk contents on allocation.")
|
|
|
|
SCUDO_FLAG(bool, pattern_fill_contents, false,
|
|
"Pattern fill chunk contents on allocation.")
|
|
|
|
SCUDO_FLAG(bool, may_return_null, true,
|
|
"Indicate whether the allocator should terminate instead of "
|
|
"returning NULL in otherwise non-fatal error scenarios, eg: OOM, "
|
|
"invalid allocation alignments, etc.")
|
|
|
|
SCUDO_FLAG(int, release_to_os_interval_ms, 5000,
|
|
"Interval (in milliseconds) at which to attempt release of unused "
|
|
"memory to the OS. Negative values disable the feature.")
|
|
|
|
SCUDO_FLAG(int, allocation_ring_buffer_size, 32768,
|
|
"Entries to keep in the allocation ring buffer for scudo. "
|
|
"Values less or equal to zero disable the buffer.")
|