summaryrefslogtreecommitdiffstats
path: root/rust/Makefile
diff options
context:
space:
mode:
authorMiguel Ojeda <ojeda@kernel.org>2022-12-06 02:05:19 +0100
committerMiguel Ojeda <ojeda@kernel.org>2023-01-16 21:03:49 +0100
commit8909a80e3f684fb274a171489c16e8f10c482e83 (patch)
treeaa07f495d0a8439d6a3a5fbef53587606f2ff052 /rust/Makefile
parent5dc4c995db9eb45f6373a956eb1f69460e69e6d4 (diff)
downloadlinux-8909a80e3f684fb274a171489c16e8f10c482e83.tar.gz
linux-8909a80e3f684fb274a171489c16e8f10c482e83.tar.bz2
linux-8909a80e3f684fb274a171489c16e8f10c482e83.zip
rust: alloc: remove the `borrow` module (`ToOwned`, `Cow`)
The `Cow` type [1] requires that its generic parameter type implements the `ToOwned` trait [2], which provides a method to create owned data from borrowed data, usually by cloning. However, it is infallible, and thus in most cases it is not useful for the kernel. [3] Therefore, introduce `cfg(no_borrow)` to remove the `borrow` module (which contains `ToOwned` and `Cow`) from `alloc`. Link: https://doc.rust-lang.org/alloc/borrow/enum.Cow.html [1] Link: https://doc.rust-lang.org/alloc/borrow/trait.ToOwned.html [2] Link: https://lore.kernel.org/rust-for-linux/20221204103153.117675b1@GaryWorkstation/ [3] Cc: Gary Guo <gary@garyguo.net> Cc: Wedson Almeida Filho <wedsonaf@gmail.com> Cc: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Miguel Ojeda <ojeda@kernel.org> Reviewed-by: Wei Liu <wei.liu@kernel.org> Reviewed-by: Finn Behrens <fin@nyantec.com>
Diffstat (limited to 'rust/Makefile')
-rw-r--r--rust/Makefile1
1 files changed, 1 insertions, 0 deletions
diff --git a/rust/Makefile b/rust/Makefile
index ff70c4c916f8..d7621fad5b56 100644
--- a/rust/Makefile
+++ b/rust/Makefile
@@ -50,6 +50,7 @@ core-cfgs = \
--cfg no_fp_fmt_parse
alloc-cfgs = \
+ --cfg no_borrow \
--cfg no_fmt \
--cfg no_global_oom_handling \
--cfg no_macros \