Re: [PATCH] rust: types: make `Opaque` be `!Unpin`

From: Alice Ryhl
Date: Fri Jun 30 2023 - 11:35:47 EST


On 6/30/23 17:03, Benno Lossin wrote:
Adds a `PhantomPinned` field to `Opaque<T>`. This removes the last Rust
guarantee: the assumption that the type `T` can be freely moved. This is
not the case for many types from the C side (e.g. if they contain a
`struct list_head`). This change removes the need to add a
`PhantomPinned` field manually to Rust structs that contain C structs
which must not be moved.

Signed-off-by: Benno Lossin <benno.lossin@xxxxxxxxx>

Reviewed-by: Alice Ryhl <aliceryhl@xxxxxxxxxx>