From ffd88ede3844aa66ca85ba3f2f69ee5d96e67e03 Mon Sep 17 00:00:00 2001 From: Yuchen Liang Date: Tue, 12 Nov 2024 15:59:24 +0000 Subject: [PATCH] fix clippy Signed-off-by: Yuchen Liang --- pageserver/src/tenant/ephemeral_file.rs | 2 +- .../owned_buffers_io/aligned_buffer/buffer_mut.rs | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pageserver/src/tenant/ephemeral_file.rs b/pageserver/src/tenant/ephemeral_file.rs index ffa37a587d..ea2b5809c1 100644 --- a/pageserver/src/tenant/ephemeral_file.rs +++ b/pageserver/src/tenant/ephemeral_file.rs @@ -410,7 +410,7 @@ mod tests { } let file_contents = std::fs::read(file.buffered_writer.as_inner().path()).unwrap(); - assert!(file_contents == &content[0..cap] || file_contents == &content[0..cap * 2]); + assert!(file_contents == content[0..cap] || file_contents == content[0..cap * 2]); let maybe_flushed_buffer_contents = file.buffered_writer.inspect_maybe_flushed().unwrap(); assert_eq!(maybe_flushed_buffer_contents, &content[cap..cap * 2]); diff --git a/pageserver/src/virtual_file/owned_buffers_io/aligned_buffer/buffer_mut.rs b/pageserver/src/virtual_file/owned_buffers_io/aligned_buffer/buffer_mut.rs index 08eafcb077..af8f463ba7 100644 --- a/pageserver/src/virtual_file/owned_buffers_io/aligned_buffer/buffer_mut.rs +++ b/pageserver/src/virtual_file/owned_buffers_io/aligned_buffer/buffer_mut.rs @@ -141,6 +141,7 @@ impl AlignedBufferMut { let cnt = extend.len(); self.reserve(cnt); + // SAFETY: we already reserved additional `cnt` bytes, safe to perform memcpy. unsafe { let dst = self.spare_capacity_mut(); // Reserved above @@ -148,7 +149,7 @@ impl AlignedBufferMut { core::ptr::copy_nonoverlapping(extend.as_ptr(), dst.as_mut_ptr().cast(), cnt); } - + // SAFETY: We do have at least `cnt` bytes remaining before advance. unsafe { bytes::BufMut::advance_mut(self, cnt); } @@ -156,6 +157,8 @@ impl AlignedBufferMut { #[inline] fn spare_capacity_mut(&mut self) -> &mut [MaybeUninit] { + // SAFETY: we guarantees that the `Self::capacity()` bytes from + // `Self::as_mut_ptr()` are allocated. unsafe { let ptr = self.as_mut_ptr().add(self.len()); let len = self.capacity() - self.len();