Skip to main content

Module reuse_pool

Module reuse_pool 

Source
Expand description

Manages a pool of addresses that can be reused.

Re-exportsยง

use rand::Rng; ๐Ÿ”’
use rand::RngExt; ๐Ÿ”’
use rustc_abi::Align; ๐Ÿ”’
use rustc_abi::Size; ๐Ÿ”’
use crate::concurrency::VClock; ๐Ÿ”’
use crate::helpers::ToUsize as _; ๐Ÿ”’
use crate::MemoryKind; ๐Ÿ”’
use crate::MiriConfig; ๐Ÿ”’
use crate::ThreadId; ๐Ÿ”’

Structsยง

ReusePool
The pool strikes a balance between exploring more possible executions and making it more likely to find bugs. The hypothesis is that bugs are more likely to occur when reuse happens for allocations with the same layout, since that can trigger e.g. ABA issues in a concurrent data structure. Therefore we only reuse allocations when size and alignment match exactly.

Constantsยง

MAX_POOL_SIZE ๐Ÿ”’