From: Miguel Ojeda <ojeda@kernel.org>
To: Miguel Ojeda <ojeda@kernel.org>,
Alex Gaynor <alex.gaynor@gmail.com>,
Wedson Almeida Filho <wedsonaf@gmail.com>
Cc: "Boqun Feng" <boqun.feng@gmail.com>,
"Gary Guo" <gary@garyguo.net>,
"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
"Benno Lossin" <benno.lossin@proton.me>,
"Andreas Hindborg" <a.hindborg@samsung.com>,
"Alice Ryhl" <aliceryhl@google.com>,
"Trevor Gross" <tmgross@umich.edu>,
rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org,
patches@lists.linux.dev
Subject: [PATCH 14/19] rust: provide proper code documentation titles
Date: Wed, 4 Sep 2024 22:43:42 +0200 [thread overview]
Message-ID: <20240904204347.168520-15-ojeda@kernel.org> (raw)
In-Reply-To: <20240904204347.168520-1-ojeda@kernel.org>
Rust 1.82.0's Clippy is introducing [1][2] a new warn-by-default lint,
`too_long_first_doc_paragraph` [3], which is intended to catch titles
of code documentation items that are too long (likely because no title
was provided and the item documentation starts with a paragraph).
This lint does not currently trigger anywhere, but it does detect a couple
cases we had in private cases if checking for private items gets enabled
(which we will do in the next commit):
error: first doc comment paragraph is too long
--> rust/kernel/init/__internal.rs:18:1
|
18 | / /// This is the module-internal type implementing `PinInit` and `Init`. It is unsafe to create this
19 | | /// type, since the closure needs to fulfill the same safety requirement as the
20 | | /// `__pinned_init`/`__init` functions.
| |_
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_long_first_doc_paragraph
= note: `-D clippy::too-long-first-doc-paragraph` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(clippy::too_long_first_doc_paragraph)]`
error: first doc comment paragraph is too long
--> rust/kernel/sync/arc/std_vendor.rs:3:1
|
3 | / //! The contents of this file come from the Rust standard library, hosted in
4 | | //! the <https://github.com/rust-lang/rust> repository, licensed under
5 | | //! "Apache-2.0 OR MIT" and adapted for kernel use. For copyright details,
6 | | //! see <https://github.com/rust-lang/rust/blob/master/COPYRIGHT>.
| |_
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_long_first_doc_paragraph
Thus clean the two instances we hit and enable the lint.
In addition, since we have a second `std_vendor.rs` file with a similar
header, do the same there too (even if that one does not trigger the lint,
because it is `doc(hidden)`).
Link: https://github.com/rust-lang/rust/pull/129531 [1]
Link: https://github.com/rust-lang/rust-clippy/pull/12993 [2]
Link: https://rust-lang.github.io/rust-clippy/master/index.html#/too_long_first_doc_paragraph [3]
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
---
rust/kernel/init/__internal.rs | 7 ++++---
rust/kernel/std_vendor.rs | 2 ++
rust/kernel/sync/arc/std_vendor.rs | 2 ++
3 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/rust/kernel/init/__internal.rs b/rust/kernel/init/__internal.rs
index 29f4fd00df3d..163eb072f296 100644
--- a/rust/kernel/init/__internal.rs
+++ b/rust/kernel/init/__internal.rs
@@ -15,9 +15,10 @@
/// [this table]: https://doc.rust-lang.org/nomicon/phantom-data.html#table-of-phantomdata-patterns
pub(super) type Invariant<T> = PhantomData<fn(*mut T) -> *mut T>;
-/// This is the module-internal type implementing `PinInit` and `Init`. It is unsafe to create this
-/// type, since the closure needs to fulfill the same safety requirement as the
-/// `__pinned_init`/`__init` functions.
+/// Module-internal type implementing `PinInit` and `Init`.
+///
+/// It is unsafe to create this type, since the closure needs to fulfill the same safety
+/// requirement as the `__pinned_init`/`__init` functions.
pub(crate) struct InitClosure<F, T: ?Sized, E>(pub(crate) F, pub(crate) Invariant<(E, T)>);
// SAFETY: While constructing the `InitClosure`, the user promised that it upholds the
diff --git a/rust/kernel/std_vendor.rs b/rust/kernel/std_vendor.rs
index 085b23312c65..d59e4cf4b252 100644
--- a/rust/kernel/std_vendor.rs
+++ b/rust/kernel/std_vendor.rs
@@ -1,5 +1,7 @@
// SPDX-License-Identifier: Apache-2.0 OR MIT
+//! Rust standard library vendored code.
+//!
//! The contents of this file come from the Rust standard library, hosted in
//! the <https://github.com/rust-lang/rust> repository, licensed under
//! "Apache-2.0 OR MIT" and adapted for kernel use. For copyright details,
diff --git a/rust/kernel/sync/arc/std_vendor.rs b/rust/kernel/sync/arc/std_vendor.rs
index a66a0c2831b3..11b3f4ecca5f 100644
--- a/rust/kernel/sync/arc/std_vendor.rs
+++ b/rust/kernel/sync/arc/std_vendor.rs
@@ -1,5 +1,7 @@
// SPDX-License-Identifier: Apache-2.0 OR MIT
+//! Rust standard library vendored code.
+//!
//! The contents of this file come from the Rust standard library, hosted in
//! the <https://github.com/rust-lang/rust> repository, licensed under
//! "Apache-2.0 OR MIT" and adapted for kernel use. For copyright details,
--
2.46.0
next prev parent reply other threads:[~2024-09-04 20:45 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-04 20:43 [PATCH 00/19] rust: lint improvements Miguel Ojeda
2024-09-04 20:43 ` [PATCH 01/19] rust: workqueue: remove unneeded ``#[allow(clippy::new_ret_no_self)]` Miguel Ojeda
2024-09-05 7:57 ` Alice Ryhl
2024-09-29 4:17 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 02/19] rust: sort global Rust flags Miguel Ojeda
2024-09-05 7:57 ` Alice Ryhl
2024-09-29 4:18 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 03/19] rust: types: avoid repetition in `{As,From}Bytes` impls Miguel Ojeda
2024-09-05 7:58 ` Alice Ryhl
2024-09-29 4:20 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 04/19] rust: enable `clippy::undocumented_unsafe_blocks` lint Miguel Ojeda
2024-09-05 8:04 ` Alice Ryhl
2024-09-29 4:33 ` Trevor Gross
2024-10-03 18:45 ` Miguel Ojeda
2024-09-04 20:43 ` [PATCH 05/19] rust: enable `clippy::unnecessary_safety_comment` lint Miguel Ojeda
2024-09-05 8:07 ` Alice Ryhl
2024-09-08 7:38 ` Vincenzo Palazzo
2024-09-29 4:35 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 06/19] rust: enable `clippy::unnecessary_safety_doc` lint Miguel Ojeda
2024-09-05 8:07 ` Alice Ryhl
2024-09-29 4:35 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 07/19] rust: enable `clippy::ignored_unit_patterns` lint Miguel Ojeda
2024-09-05 8:08 ` Alice Ryhl
2024-09-29 4:37 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 08/19] rust: enable `rustdoc::unescaped_backticks` lint Miguel Ojeda
2024-09-05 8:09 ` Alice Ryhl
2024-09-29 4:40 ` Trevor Gross
2024-10-01 17:06 ` Miguel Ojeda
2024-09-04 20:43 ` [PATCH 09/19] rust: init: remove unneeded `#[allow(clippy::disallowed_names)]` Miguel Ojeda
2024-09-05 8:10 ` Alice Ryhl
2024-09-29 4:41 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 10/19] rust: sync: remove unneeded `#[allow(clippy::non_send_fields_in_send_ty)]` Miguel Ojeda
2024-09-05 8:10 ` Alice Ryhl
2024-09-29 4:41 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 11/19] rust: introduce `.clippy.toml` Miguel Ojeda
2024-09-05 8:12 ` Alice Ryhl
2024-09-29 4:48 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 12/19] rust: replace `clippy::dbg_macro` with `disallowed_macros` Miguel Ojeda
2024-09-05 5:20 ` Geert Stappers
2024-09-14 23:10 ` Gary Guo
2024-10-03 18:43 ` Miguel Ojeda
2024-09-04 20:43 ` [PATCH 13/19] rust: rbtree: fix `SAFETY` comments that should be `# Safety` sections Miguel Ojeda
2024-09-05 8:12 ` Alice Ryhl
2024-09-29 4:51 ` Trevor Gross
2024-09-04 20:43 ` Miguel Ojeda [this message]
2024-09-05 8:13 ` [PATCH 14/19] rust: provide proper code documentation titles Alice Ryhl
2024-09-29 4:56 ` Trevor Gross
2024-10-03 18:44 ` Miguel Ojeda
2024-09-04 20:43 ` [PATCH 15/19] rust: enable Clippy's `check-private-items` Miguel Ojeda
2024-09-05 8:14 ` Alice Ryhl
2024-09-29 4:57 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 16/19] Documentation: rust: add coding guidelines on lints Miguel Ojeda
2024-09-05 8:15 ` Alice Ryhl
2024-09-05 9:45 ` Miguel Ojeda
2024-09-07 22:22 ` comex
2024-10-01 17:07 ` Miguel Ojeda
2024-10-03 20:00 ` Miguel Ojeda
2024-09-29 5:03 ` Trevor Gross
2024-10-03 18:47 ` Miguel Ojeda
2024-09-04 20:43 ` [PATCH 17/19] rust: start using the `#[expect(...)]` attribute Miguel Ojeda
2024-09-05 8:17 ` Alice Ryhl
2024-09-29 5:05 ` Trevor Gross
2024-09-04 20:43 ` [PATCH 18/19] Documentation: rust: discuss `#[expect(...)]` in the guidelines Miguel Ojeda
2024-09-29 5:10 ` Trevor Gross
2024-10-01 17:11 ` Miguel Ojeda
2024-09-04 20:43 ` [PATCH 19/19] rust: std_vendor: simplify `{ .. macro! .. }` with inner attributes Miguel Ojeda
2024-09-05 8:19 ` Alice Ryhl
2024-09-05 9:27 ` Miguel Ojeda
2024-09-05 9:41 ` Alice Ryhl
2024-09-08 8:50 ` Vincenzo Palazzo
2024-09-14 23:19 ` [PATCH 00/19] rust: lint improvements Gary Guo
2024-10-03 21:51 ` Miguel Ojeda
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240904204347.168520-15-ojeda@kernel.org \
--to=ojeda@kernel.org \
--cc=a.hindborg@samsung.com \
--cc=alex.gaynor@gmail.com \
--cc=aliceryhl@google.com \
--cc=benno.lossin@proton.me \
--cc=bjorn3_gh@protonmail.com \
--cc=boqun.feng@gmail.com \
--cc=gary@garyguo.net \
--cc=linux-kernel@vger.kernel.org \
--cc=patches@lists.linux.dev \
--cc=rust-for-linux@vger.kernel.org \
--cc=tmgross@umich.edu \
--cc=wedsonaf@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.