• Mauro Carvalho Chehab's avatar
    scripts: kernel-doc: validate kernel-doc markup with the actual names · 52042e2d
    Mauro Carvalho Chehab authored
    Kernel-doc currently expects that the kernel-doc markup to come
    just before the function/enum/struct/union/typedef prototype.
    
    Yet, if it find things like:
    
    	/**
    	 * refcount_add - add a value to a refcount
    	 * @i: the value to add to the refcount
    	 * @r: the refcount
    	 */
    	static inline void __refcount_add(int i, refcount_t *r, int *oldp);
    	static inline void refcount_add(int i, refcount_t *r);
    
    Kernel-doc will do the wrong thing:
    
    	foobar.h:6: warning: Function parameter or member 'oldp' not described in '__refcount_add'
    	.. c:function:: void __refcount_add (int i, refcount_t *r, int *oldp)
    
    	   add a value to a refcount
    
    	**Parameters**
    
    	``int i``
    	  the value to add to the refcount
    
    	``refcount_t *r``
    	  the refcount
    
    	``int *oldp``
    	  *undescribed*
    
    Basically, it will document "__refcount_add" with the kernel-doc
    markup for refcount_add.
    
    If both functions have the same arguments, this won't even
    produce any warning!
    
    Add a logic to check if the kernel-doc identifier matches the actual
    name of the C function or data structure that will be documented.
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Link: https://lore.kernel.org/r/081546f141a496d6cabb99a4adc140444c705e93.1610610937.git.mchehab+huawei@kernel.orgSigned-off-by: default avatarJonathan Corbet <corbet@lwn.net>
    52042e2d
kernel-doc 67.4 KB