While reviewing the bindings for thread-safety, I realized that the bindings did not properly model the lifetimes of non-owned line_info instances. This fixes that. It might be a bit might bending. I tried to provide lengthy comments to clarify what happens. To: Linux-GPIO <linux-gpio@xxxxxxxxxxxxxxx> Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx> Cc: Manos Pitsidianakis <manos.pitsidianakis@xxxxxxxxxx> Signed-off-by: Erik Schilling <erik.schilling@xxxxxxxxxx> --- Erik Schilling (3): bindings: rust: fix soundness of line_info modeling bindings: rust: allow cloning line::Info -> line::OwnedInfo bindings: rust: bump major for libgpiod crate bindings/rust/libgpiod/Cargo.toml | 2 +- bindings/rust/libgpiod/src/chip.rs | 16 +++- bindings/rust/libgpiod/src/info_event.rs | 6 +- bindings/rust/libgpiod/src/lib.rs | 1 + bindings/rust/libgpiod/src/line_info.rs | 138 ++++++++++++++++++++++-------- bindings/rust/libgpiod/tests/line_info.rs | 53 ++++++++++++ 6 files changed, 171 insertions(+), 45 deletions(-) --- base-commit: ced90e79217793957b11414f47f8aa8a77c7a2d5 change-id: 20230927-rust-line-info-soundness-14c08e0d26e9 Best regards, -- Erik Schilling <erik.schilling@xxxxxxxxxx>