Em Wed, 12 Jul 2023 18:03:00 +0300 Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx> escreveu: > On Wed, 12 Jul 2023, Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> wrote: > > diff --git a/drivers/gpu/drm/tests/drm_buddy_test.c b/drivers/gpu/drm/tests/drm_buddy_test.c > > index 09ee6f6af896..dd6c5afd6cd6 100644 > > --- a/drivers/gpu/drm/tests/drm_buddy_test.c > > +++ b/drivers/gpu/drm/tests/drm_buddy_test.c > > @@ -737,6 +737,18 @@ static int drm_buddy_suite_init(struct kunit_suite *suite) > > return 0; > > } > > > > +/** > > + * KTEST_SUITE: set of tests for drm buddy alloc > > + * Scope: drm subsystem > > + * Mega feature: drm > > + * Feature: buddy_alloc > > + * > > + * KTEST_TEST: drm_test_buddy_alloc_%s > > + * Description: Run DRM buddy allocation %arg[1] test > > + * > > + * arg[1].values: limit, range, optimistic, smoke, pathological > > + */ > > + > > "/**" indicates a kernel-doc comment, and this is not a kernel-doc > comment. > > $ scripts/kernel-doc -none drivers/gpu/drm/tests/drm_buddy_test.c > drivers/gpu/drm/tests/drm_buddy_test.c:752: warning: cannot understand > function prototype: 'struct kunit_case drm_buddy_tests[] = ' > > Nowadays kernel-doc is part of W=1 builds. True. I already told it at patch 0. I opted to not add a patch for it on this RFC series, to make it simpler. A simple logic at kernel-doc is enough to tell its state machine to ignore blocks that contain the KTEST_\w+: pattern: diff --git a/scripts/kernel-doc b/scripts/kernel-doc index d0116c6939dc..bf386460691f 100755 --- a/scripts/kernel-doc +++ b/scripts/kernel-doc @@ -259,6 +259,7 @@ my $doc_sect = $doc_com . '\s*(\@[.\w]+|\@\.\.\.|description|context|returns?|notes?|examples?)\s*:([^:].*)?$'; my $doc_content = $doc_com_body . '(.*)'; my $doc_block = $doc_com . 'DOC:\s*(.*)?'; +my $ktest_block = $doc_com . 'KTEST_\w+:\s*(.*)?'; my $doc_inline_start = '^\s*/\*\*\s*$'; my $doc_inline_sect = '\s*\*\s*(@\s*[\w][\w\.]*\s*):(.*)'; my $doc_inline_end = '^\s*\*/\s*$'; @@ -2015,6 +2016,10 @@ sub process_name($$) { my $file = shift; my $descr; + if (/$ktest_block/o) { + $state = STATE_NORMAL; + return; + } if (/$doc_block/o) { $state = STATE_DOCBLOCK; $contents = ""; Thanks, Mauro