printf: Remove unused 'bprintf'
[drm/drm-misc.git] / samples / rust / rust_minimal.rs
blob4aaf117bf8e3c0cc77e188b1ad0708e3650a6654
1 // SPDX-License-Identifier: GPL-2.0
3 //! Rust minimal sample.
5 use kernel::prelude::*;
7 module! {
8     type: RustMinimal,
9     name: "rust_minimal",
10     author: "Rust for Linux Contributors",
11     description: "Rust minimal sample",
12     license: "GPL",
15 struct RustMinimal {
16     numbers: KVec<i32>,
19 impl kernel::Module for RustMinimal {
20     fn init(_module: &'static ThisModule) -> Result<Self> {
21         pr_info!("Rust minimal sample (init)\n");
22         pr_info!("Am I built-in? {}\n", !cfg!(MODULE));
24         let mut numbers = KVec::new();
25         numbers.push(72, GFP_KERNEL)?;
26         numbers.push(108, GFP_KERNEL)?;
27         numbers.push(200, GFP_KERNEL)?;
29         Ok(RustMinimal { numbers })
30     }
33 impl Drop for RustMinimal {
34     fn drop(&mut self) {
35         pr_info!("My numbers are {:?}\n", self.numbers);
36         pr_info!("Rust minimal sample (exit)\n");
37     }