Demonstrate the preferred syntax of index projection in DMA documentation and examples. A few `[i]?` cases are converted to demonstrate the new variant.
Reviewed-by: Alice Ryhl <[email protected]> Reviewed-by: Andreas Hindborg <[email protected]> Reviewed-by: Alexandre Courbot <[email protected]> Signed-off-by: Gary Guo <[email protected]> --- rust/kernel/dma.rs | 8 ++++---- samples/rust/rust_dma.rs | 12 +++++------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/rust/kernel/dma.rs b/rust/kernel/dma.rs index ff69739eae35..79125ee012a9 100644 --- a/rust/kernel/dma.rs +++ b/rust/kernel/dma.rs @@ -1152,8 +1152,8 @@ unsafe impl Sync for CoherentHandle {} /// unsafe impl kernel::transmute::AsBytes for MyStruct{}; /// /// # fn test(alloc: &kernel::dma::Coherent<[MyStruct]>) -> Result { -/// let whole = kernel::dma_read!(alloc, [2]?); -/// let field = kernel::dma_read!(alloc, [1]?.field); +/// let whole = kernel::dma_read!(alloc, [try: 2]); +/// let field = kernel::dma_read!(alloc, [panic: 1].field); /// # Ok::<(), Error>(()) } /// ``` #[macro_export] @@ -1189,8 +1189,8 @@ macro_rules! dma_read { /// unsafe impl kernel::transmute::AsBytes for MyStruct{}; /// /// # fn test(alloc: &kernel::dma::Coherent<[MyStruct]>) -> Result { -/// kernel::dma_write!(alloc, [2]?.member, 0xf); -/// kernel::dma_write!(alloc, [1]?, MyStruct { member: 0xf }); +/// kernel::dma_write!(alloc, [try: 2].member, 0xf); +/// kernel::dma_write!(alloc, [panic: 1], MyStruct { member: 0xf }); /// # Ok::<(), Error>(()) } /// ``` #[macro_export] diff --git a/samples/rust/rust_dma.rs b/samples/rust/rust_dma.rs index c4d2d36602af..5046b4628d0e 100644 --- a/samples/rust/rust_dma.rs +++ b/samples/rust/rust_dma.rs @@ -77,7 +77,7 @@ fn probe<'bound>( Coherent::zeroed_slice(pdev.as_ref(), TEST_VALUES.len(), GFP_KERNEL)?; for (i, value) in TEST_VALUES.into_iter().enumerate() { - kernel::dma_write!(ca, [i]?, MyStruct::new(value.0, value.1)); + kernel::dma_write!(ca, [try: i], MyStruct::new(value.0, value.1)); } let size = 4 * page::PAGE_SIZE; @@ -95,16 +95,14 @@ fn probe<'bound>( } impl DmaSampleDriver { - fn check_dma(&self) -> Result { + fn check_dma(&self) { for (i, value) in TEST_VALUES.into_iter().enumerate() { - let val0 = kernel::dma_read!(self.ca, [i]?.h); - let val1 = kernel::dma_read!(self.ca, [i]?.b); + let val0 = kernel::dma_read!(self.ca, [panic: i].h); + let val1 = kernel::dma_read!(self.ca, [panic: i].b); assert_eq!(val0, value.0); assert_eq!(val1, value.1); } - - Ok(()) } } @@ -113,7 +111,7 @@ impl PinnedDrop for DmaSampleDriver { fn drop(self: Pin<&mut Self>) { dev_info!(self.pdev, "Unload DMA test driver.\n"); - assert!(self.check_dma().is_ok()); + self.check_dma(); for (i, entry) in self.sgt.iter().enumerate() { dev_info!( -- 2.54.0
