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

From: Randy Dunlap
Date: Tue Jul 11 2023 - 23:45:27 EST




On 7/11/23 20:32, Akira Yokosawa wrote:
> 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

Ooooh, thanks for your assistance. Waiting.... :)

--
~Randy