• Richard Kennedy's avatar
    kernel-doc: fix function-pointer-parameter parsing · 00d62961
    Richard Kennedy authored
    When running "make htmldocs" I'm seeing some non-fatal perl errors caused
    by trying to parse the callback function definitions in blk-core.c.
    
    The errors are "Use of uninitialized value in concatenation (.)..."
    in combination with:
    Warning(linux-2.6.25-rc2/block/blk-core.c:1877): No description found for parameter ''
    
    The function pointers are defined without a * i.e.
    int (drv_callback)(struct request *)
    
    The compiler is happy with them, but kernel-doc isn't.
    
    This patch teaches create_parameterlist in kernel-doc to parse this type of
    function pointer definition, but is it the right way to fix the problem ?
    The problem only seems to occur in blk-core.c.
    
    However with the patch applied, kernel-doc finds the correct parameter
    description for the callback in blk_end_request_callback, which is doesn't
    normally.
    
    I thought it would be a bit odd to change to code to use the more normal
    form of function pointers just to get the documentation to work, so I fixed
    kernel-doc instead - even though this is teaching it to understand code
    that might go away (The comment for blk_end_request_callback says that it
    should not be used and will removed at some point).
    Signed-off-by: default avatarRichard Kennedy <richard@rsk.demon.co.uk>
    Signed-off-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    00d62961
kernel-doc 55.2 KB