Message ID | 20230524145444.32820-1-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | checkpatch: Prefer DEFINE_TYPES() over type_init / type_register_static | expand |
On 5/24/23 07:54, Philippe Mathieu-Daudé wrote: > When multiple QOM types are registered in the same file, it > is clearer and simpler to use the the DEFINE_TYPES() macro. > > Add a rule to checkpatch.pl to suggest using DEFINE_TYPES() > instead of type_init() / type_register_static(). > > Suggested-by: Daniel Henrique Barboza<dbarboza@ventanamicro.com> > Signed-off-by: Philippe Mathieu-Daudé<philmd@linaro.org> > --- > scripts/checkpatch.pl | 6 ++++++ > 1 file changed, 6 insertions(+) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
On 5/24/23 11:54, Philippe Mathieu-Daudé wrote: > When multiple QOM types are registered in the same file, it > is clearer and simpler to use the the DEFINE_TYPES() macro. > > Add a rule to checkpatch.pl to suggest using DEFINE_TYPES() > instead of type_init() / type_register_static(). > Nice! > Suggested-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> > scripts/checkpatch.pl | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > index eeaec436eb..db8029635c 100755 > --- a/scripts/checkpatch.pl > +++ b/scripts/checkpatch.pl > @@ -2877,6 +2877,12 @@ sub process { > if ($line =~ /^module_init\s*\(/) { > ERROR("please use block_init(), type_init() etc. instead of module_init()\n" . $herecurr); > } > + > +# recommend DEFINE_TYPES() over type_init()/type_register_static() > + if ($line =~ /\b(type_init|type_register_static)\(/) { > + WARN("consider using DEFINE_TYPES() in preference to type_init()\n" . $herecurr); > + } > + > # check for various ops structs, ensure they are const. > my $struct_ops = qr{AIOCBInfo| > BdrvActionOps|
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index eeaec436eb..db8029635c 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -2877,6 +2877,12 @@ sub process { if ($line =~ /^module_init\s*\(/) { ERROR("please use block_init(), type_init() etc. instead of module_init()\n" . $herecurr); } + +# recommend DEFINE_TYPES() over type_init()/type_register_static() + if ($line =~ /\b(type_init|type_register_static)\(/) { + WARN("consider using DEFINE_TYPES() in preference to type_init()\n" . $herecurr); + } + # check for various ops structs, ensure they are const. my $struct_ops = qr{AIOCBInfo| BdrvActionOps|
When multiple QOM types are registered in the same file, it is clearer and simpler to use the the DEFINE_TYPES() macro. Add a rule to checkpatch.pl to suggest using DEFINE_TYPES() instead of type_init() / type_register_static(). Suggested-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- scripts/checkpatch.pl | 6 ++++++ 1 file changed, 6 insertions(+)