pub fn take_foreign(seg: &Segment) -> *mut u8
Take the whole foreign-free list, leaving it empty. Only the owning shard may call this — that exclusivity is what makes the structure ABA-free (see [push_foreign]).
push_foreign