scripts/kernel-doc does not handle duplicate struct & function names (e.g., in amdgpu)

Akira Yokosawa akiyks at gmail.com
Wed Jul 12 03:32:10 UTC 2023


Hi Randy,

> [just documenting this for posterity or in case someone wants to fix it.]
> 
> In drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c, one can find both
> 
> struct amdgpu_vm_tlb_seq_cb {...};
> 
> and
> static void amdgpu_vm_tlb_seq_cb(...)
> 
> Of course C has no problem with this, but kernel-doc reports:
> 
> drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c:833: WARNING: Duplicate C declaration, also defined at gpu/amdgpu/driver-core:115.
> 
> And of course, if the name of one of them is changed, kernel-doc is all happy...
> not that I am suggesting that one of them should be changed.
> 
> I just want to make people aware of this. (or maybe people are already aware of this?)

The duplicate warning is emitted from Sphinx, not kernel-doc.

This is a bug of Sphinx >=3.1, first reported by Mauro back in September 2020 at:

    https://github.com/sphinx-doc/sphinx/issues/8241

It was closed when a local fix was presented.  Unfortunately, it was not
merged at the time and a subsequent pull request was opened at:

    https://github.com/sphinx-doc/sphinx/pull/8313

It is not merged yet and carries a milestone of Sphinx 7.x.

Looks like we need to wait patiently.

        Thanks, Akira

> 
> -- 
> ~Randy



More information about the dri-devel mailing list