On Wed, Aug 27, 2025 at 06:20:01PM +1000, Alistair Popple wrote: > From: Joel Fernandes <joelagn...@nvidia.com> > > A data structure that can be used to write across multiple slices which > may be out of order in memory. This lets SBuffer user correctly and > safely write out of memory order, without error-prone tracking of > pointers/offsets. > > let mut buf1 = [0u8; 3]; > let mut buf2 = [0u8; 5]; > let mut sbuffer = SBuffer::new([&mut buf1[..], &mut buf2[..]]); > > let data = b"hellowo"; > let result = sbuffer.write(data); > > An internal conversion of gsp.rs to use this resulted in a nice -ve delta: > gsp.rs: 37 insertions(+), 99 deletions(-) > > Co-developed-by: Alistair Popple <apop...@nvidia.com> > Signed-off-by: Alistair Popple <apop...@nvidia.com> > Signed-off-by: Joel Fernandes <joelagn...@nvidia.com>
This seems like duplication of the logic in rust/kernel/iov_iter.rs [1]. Alice [1]: https://lore.kernel.org/r/20250822-iov-iter-v5-0-6ce4819c2...@google.com