From b9054f9aed96d0193e27407426488b8ed673b53b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20L=C3=B3pez?= Date: Thu, 23 Nov 2023 00:09:59 +0100 Subject: [PATCH] greq: use Self in various places for better readability MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Carlos López --- src/greq/msg.rs | 20 ++++++-------------- src/greq/pld_report.rs | 8 ++++---- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/src/greq/msg.rs b/src/greq/msg.rs index 06c986581..7c116bfc9 100644 --- a/src/greq/msg.rs +++ b/src/greq/msg.rs @@ -55,13 +55,9 @@ impl TryFrom for SnpGuestRequestMsgType { fn try_from(v: u8) -> Result { match v { - x if x == SnpGuestRequestMsgType::Invalid as u8 => Ok(SnpGuestRequestMsgType::Invalid), - x if x == SnpGuestRequestMsgType::ReportRequest as u8 => { - Ok(SnpGuestRequestMsgType::ReportRequest) - } - x if x == SnpGuestRequestMsgType::ReportResponse as u8 => { - Ok(SnpGuestRequestMsgType::ReportResponse) - } + x if x == Self::Invalid as u8 => Ok(Self::Invalid), + x if x == Self::ReportRequest as u8 => Ok(Self::ReportRequest), + x if x == Self::ReportResponse as u8 => Ok(Self::ReportResponse), _ => Err(SvsmReqError::invalid_parameter()), } } @@ -179,7 +175,7 @@ impl SnpGuestRequestMsgHdr { /// Get [`SnpGuestRequestMsgHdr`] as a mutable slice reference fn as_slice_mut(&mut self) -> &mut [u8] { - unsafe { from_raw_parts_mut(self as *mut _ as *mut u8, MSG_HDR_SIZE) } + unsafe { from_raw_parts_mut(self as *mut _ as *mut u8, size_of::()) } } } @@ -509,19 +505,15 @@ impl SnpGuestRequestExtData { /// before the object is dropped. Shared pages should not be freed /// (returned to the allocator) pub fn set_shared(&mut self) -> Result<(), SvsmReqError> { - const EXT_DATA_SIZE: usize = size_of::(); - let start = VirtAddr::from(self as *mut Self); - let end = start + EXT_DATA_SIZE; + let end = start + size_of::(); set_shared_region_4k(start, end) } /// Set the C-bit (memory encryption bit) for the Self pages pub fn set_encrypted(&mut self) -> Result<(), SvsmReqError> { - const EXT_DATA_SIZE: usize = size_of::(); - let start = VirtAddr::from(self as *mut Self); - let end = start + EXT_DATA_SIZE; + let end = start + size_of::(); set_encrypted_region_4k(start, end) } diff --git a/src/greq/pld_report.rs b/src/greq/pld_report.rs index fafa2ce09..2865ad8e4 100644 --- a/src/greq/pld_report.rs +++ b/src/greq/pld_report.rs @@ -39,10 +39,10 @@ impl SnpReportRequest { /// Take a slice and return a reference for Self pub fn try_from_as_ref(buffer: &[u8]) -> Result<&Self, SvsmReqError> { let buffer = buffer - .get(..size_of::()) + .get(..size_of::()) .ok_or_else(SvsmReqError::invalid_parameter)?; - let request = unsafe { &*buffer.as_ptr().cast::() }; + let request = unsafe { &*buffer.as_ptr().cast::() }; if !request.is_reserved_clear() { return Err(SvsmReqError::invalid_parameter()); @@ -86,10 +86,10 @@ pub enum SnpReportResponseStatus { impl SnpReportResponse { pub fn try_from_as_ref(buffer: &[u8]) -> Result<&Self, SvsmReqError> { let buffer = buffer - .get(..size_of::()) + .get(..size_of::()) .ok_or_else(SvsmReqError::invalid_parameter)?; - let response = unsafe { &*buffer.as_ptr().cast::() }; + let response = unsafe { &*buffer.as_ptr().cast::() }; Ok(response) }