Guilherme Giacomo Simoes
2025-Jun-09 12:22 UTC
[PATCH] rust: module: remove deprecated author key
Commit 38559da6afb2 ("rust: module: introduce `authors` key")
introduced
a new `authors` key to support multiple module authors, while keeping
the old `author` key for backward compatibility.
Now that all in-tree modules have migrated to `authors`, remove:
1. The deprecated `author` key support from the module macro
2. Legacy `author` entries from remaining modules
Signed-off-by: Guilherme Giacomo Simoes <trintaeoitogc at gmail.com>
---
drivers/cpufreq/rcpufreq_dt.rs | 2 +-
drivers/gpu/drm/nova/nova.rs | 2 +-
drivers/gpu/nova-core/nova_core.rs | 2 +-
rust/kernel/firmware.rs | 2 +-
rust/macros/module.rs | 6 ------
samples/rust/rust_configfs.rs | 2 +-
samples/rust/rust_driver_auxiliary.rs | 2 +-
7 files changed, 6 insertions(+), 12 deletions(-)
diff --git a/drivers/cpufreq/rcpufreq_dt.rs b/drivers/cpufreq/rcpufreq_dt.rs
index 94ed81644fe1..bdf4b844de42 100644
--- a/drivers/cpufreq/rcpufreq_dt.rs
+++ b/drivers/cpufreq/rcpufreq_dt.rs
@@ -220,7 +220,7 @@ fn probe(
module_platform_driver! {
type: CPUFreqDTDriver,
name: "cpufreq-dt",
- author: "Viresh Kumar <viresh.kumar at linaro.org>",
+ authors: ["Viresh Kumar <viresh.kumar at linaro.org>"],
description: "Generic CPUFreq DT driver",
license: "GPL v2",
}
diff --git a/drivers/gpu/drm/nova/nova.rs b/drivers/gpu/drm/nova/nova.rs
index 902876aa14d1..64fd670e99e1 100644
--- a/drivers/gpu/drm/nova/nova.rs
+++ b/drivers/gpu/drm/nova/nova.rs
@@ -12,7 +12,7 @@
kernel::module_auxiliary_driver! {
type: NovaDriver,
name: "Nova",
- author: "Danilo Krummrich",
+ authors: ["Danilo Krummrich"],
description: "Nova GPU driver",
license: "GPL v2",
}
diff --git a/drivers/gpu/nova-core/nova_core.rs
b/drivers/gpu/nova-core/nova_core.rs
index 618632f0abcc..f405d7a99c28 100644
--- a/drivers/gpu/nova-core/nova_core.rs
+++ b/drivers/gpu/nova-core/nova_core.rs
@@ -13,7 +13,7 @@
kernel::module_pci_driver! {
type: driver::NovaCore,
name: "NovaCore",
- author: "Danilo Krummrich",
+ authors: ["Danilo Krummrich"],
description: "Nova Core GPU driver",
license: "GPL v2",
firmware: [],
diff --git a/rust/kernel/firmware.rs b/rust/kernel/firmware.rs
index 2494c96e105f..ed2fc20cba9b 100644
--- a/rust/kernel/firmware.rs
+++ b/rust/kernel/firmware.rs
@@ -181,7 +181,7 @@ unsafe impl Sync for Firmware {}
/// module! {
/// type: MyModule,
/// name: "module_firmware_test",
-/// author: "Rust for Linux",
+/// authors: ["Rust for Linux"],
/// description: "module_firmware! test module",
/// license: "GPL",
/// }
diff --git a/rust/macros/module.rs b/rust/macros/module.rs
index 2ddd2eeb2852..5dd276a2e5cb 100644
--- a/rust/macros/module.rs
+++ b/rust/macros/module.rs
@@ -94,7 +94,6 @@ struct ModuleInfo {
type_: String,
license: String,
name: String,
- author: Option<String>,
authors: Option<Vec<String>>,
description: Option<String>,
alias: Option<Vec<String>>,
@@ -108,7 +107,6 @@ fn parse(it: &mut token_stream::IntoIter) -> Self {
const EXPECTED_KEYS: &[&str] = &[
"type",
"name",
- "author",
"authors",
"description",
"license",
@@ -134,7 +132,6 @@ fn parse(it: &mut token_stream::IntoIter) -> Self {
match key.as_str() {
"type" => info.type_ = expect_ident(it),
"name" => info.name = expect_string_ascii(it),
- "author" => info.author = Some(expect_string(it)),
"authors" => info.authors =
Some(expect_string_array(it)),
"description" => info.description =
Some(expect_string(it)),
"license" => info.license =
expect_string_ascii(it),
@@ -179,9 +176,6 @@ pub(crate) fn module(ts: TokenStream) -> TokenStream {
// Rust does not allow hyphens in identifiers, use underscore instead.
let ident = info.name.replace('-', "_");
let mut modinfo = ModInfoBuilder::new(ident.as_ref());
- if let Some(author) = info.author {
- modinfo.emit("author", &author);
- }
if let Some(authors) = info.authors {
for author in authors {
modinfo.emit("author", &author);
diff --git a/samples/rust/rust_configfs.rs b/samples/rust/rust_configfs.rs
index 60ddbe62cda3..af04bfa35cb2 100644
--- a/samples/rust/rust_configfs.rs
+++ b/samples/rust/rust_configfs.rs
@@ -14,7 +14,7 @@
module! {
type: RustConfigfs,
name: "rust_configfs",
- author: "Rust for Linux Contributors",
+ authors: ["Rust for Linux Contributors"],
description: "Rust configfs sample",
license: "GPL",
}
diff --git a/samples/rust/rust_driver_auxiliary.rs
b/samples/rust/rust_driver_auxiliary.rs
index 3e15e6d002bb..abf3d55ed249 100644
--- a/samples/rust/rust_driver_auxiliary.rs
+++ b/samples/rust/rust_driver_auxiliary.rs
@@ -114,7 +114,7 @@ fn init(module: &'static kernel::ThisModule) ->
impl PinInit<Self, Error> {
module! {
type: SampleModule,
name: "rust_driver_auxiliary",
- author: "Danilo Krummrich",
+ authors: ["Danilo Krummrich"],
description: "Rust auxiliary driver",
license: "GPL v2",
}
--
2.34.1
On Mon, Jun 9, 2025 at 2:22?PM Guilherme Giacomo Simoes <trintaeoitogc at gmail.com> wrote:> > Now that all in-tree modules have migrated to `authors`, remove:Nit: I would have said "most modules", since we have new/remaining ones (no need for a new version for this). I think this patch is OK -- we could wait to do this more cycles, but if we are doing it, then probably the sooner we do it, the simpler.> drivers/cpufreq/rcpufreq_dt.rs | 2 +- > drivers/gpu/drm/nova/nova.rs | 2 +- > drivers/gpu/nova-core/nova_core.rs | 2 +- > rust/kernel/firmware.rs | 2 +- > samples/rust/rust_configfs.rs | 2 +- > samples/rust/rust_driver_auxiliary.rs | 2 +-Andreas, Danilo, Greg, Viresh: if nobody is against it, I will apply it this cycle. Acked-by's for your bits appreciated, of course. Thanks! Cheers, Miguel
On 09-06-25, 09:22, Guilherme Giacomo Simoes wrote:> Commit 38559da6afb2 ("rust: module: introduce `authors` key") introduced > a new `authors` key to support multiple module authors, while keeping > the old `author` key for backward compatibility. > > Now that all in-tree modules have migrated to `authors`, remove: > 1. The deprecated `author` key support from the module macro > 2. Legacy `author` entries from remaining modules > > Signed-off-by: Guilherme Giacomo Simoes <trintaeoitogc at gmail.com> > --- > drivers/cpufreq/rcpufreq_dt.rs | 2 +-> diff --git a/drivers/cpufreq/rcpufreq_dt.rs b/drivers/cpufreq/rcpufreq_dt.rs > index 94ed81644fe1..bdf4b844de42 100644 > --- a/drivers/cpufreq/rcpufreq_dt.rs > +++ b/drivers/cpufreq/rcpufreq_dt.rs > @@ -220,7 +220,7 @@ fn probe( > module_platform_driver! { > type: CPUFreqDTDriver, > name: "cpufreq-dt", > - author: "Viresh Kumar <viresh.kumar at linaro.org>", > + authors: ["Viresh Kumar <viresh.kumar at linaro.org>"], > description: "Generic CPUFreq DT driver", > license: "GPL v2", > }Acked-by: Viresh Kumar <viresh.kumar at linaro.org> -- viresh
"Guilherme Giacomo Simoes" <trintaeoitogc at gmail.com> writes:> Commit 38559da6afb2 ("rust: module: introduce `authors` key") introduced > a new `authors` key to support multiple module authors, while keeping > the old `author` key for backward compatibility. > > Now that all in-tree modules have migrated to `authors`, remove: > 1. The deprecated `author` key support from the module macro > 2. Legacy `author` entries from remaining modules > > Signed-off-by: Guilherme Giacomo Simoes <trintaeoitogc at gmail.com>Acked-by: Andreas Hindborg <a.hindborg at kernel.org> Best regards, Andreas Hindborg
On Mon Jun 9, 2025 at 2:22 PM CEST, Guilherme Giacomo Simoes wrote:> Commit 38559da6afb2 ("rust: module: introduce `authors` key") introduced > a new `authors` key to support multiple module authors, while keeping > the old `author` key for backward compatibility. > > Now that all in-tree modules have migrated to `authors`, remove: > 1. The deprecated `author` key support from the module macro > 2. Legacy `author` entries from remaining modules > > Signed-off-by: Guilherme Giacomo Simoes <trintaeoitogc at gmail.com> > --- > drivers/cpufreq/rcpufreq_dt.rs | 2 +- > drivers/gpu/drm/nova/nova.rs | 2 +- > drivers/gpu/nova-core/nova_core.rs | 2 +- > rust/kernel/firmware.rs | 2 +- > rust/macros/module.rs | 6 ------ > samples/rust/rust_configfs.rs | 2 +- > samples/rust/rust_driver_auxiliary.rs | 2 +- > 7 files changed, 6 insertions(+), 12 deletions(-)Reviewed-by: Benno Lossin <lossin at kernel.org> --- Cheers, Benno
On Mon Jun 9, 2025 at 2:22 PM CEST, Guilherme Giacomo Simoes wrote:> diff --git a/drivers/gpu/nova-core/nova_core.rs b/drivers/gpu/nova-core/nova_core.rs > index 618632f0abcc..f405d7a99c28 100644 > --- a/drivers/gpu/nova-core/nova_core.rs > +++ b/drivers/gpu/nova-core/nova_core.rs > @@ -13,7 +13,7 @@ > kernel::module_pci_driver! { > type: driver::NovaCore, > name: "NovaCore", > - author: "Danilo Krummrich", > + authors: ["Danilo Krummrich"],Unrelated to this change, I think we should add email addresses to people in authors. Possibly enforce it by scanning each author element and checking if there is an email address.> description: "Nova Core GPU driver", > license: "GPL v2", > firmware: [], > diff --git a/rust/kernel/firmware.rs b/rust/kernel/firmware.rs > index 2494c96e105f..ed2fc20cba9b 100644 > --- a/rust/kernel/firmware.rs > +++ b/rust/kernel/firmware.rs > @@ -181,7 +181,7 @@ unsafe impl Sync for Firmware {} > /// module! { > /// type: MyModule, > /// name: "module_firmware_test", > -/// author: "Rust for Linux", > +/// authors: ["Rust for Linux"],We would need to special case "Rust for Linux Developers" or something similar. But in several cases -- such as this one, we should just name the actual authors. What do you guys think? --- Cheers, Benno
On Mon, Jun 9, 2025 at 2:22?PM Guilherme Giacomo Simoes <trintaeoitogc at gmail.com> wrote:> > Commit 38559da6afb2 ("rust: module: introduce `authors` key") introduced > a new `authors` key to support multiple module authors, while keeping > the old `author` key for backward compatibility. > > Now that all in-tree modules have migrated to `authors`, remove: > 1. The deprecated `author` key support from the module macro > 2. Legacy `author` entries from remaining modules > > Signed-off-by: Guilherme Giacomo Simoes <trintaeoitogc at gmail.com>Applied to `rust-next` -- thanks everyone! [ Reworded slightly. - Miguel ] I don't see any new/missing ones in -next, so this should be clean. Let's see... Cheers, Miguel