Re: kernel/trace/trace_kprobe.c:952: warning: Excess function parameter 'args' description in '__kprobe_event_gen_cmd_start'

From: Yujie Liu
Date: Fri Oct 27 2023 - 01:24:15 EST


On Thu, Oct 19, 2023 at 09:22:07AM -0400, Steven Rostedt wrote:
> On Thu, 19 Oct 2023 04:33:41 +0800
> kernel test robot <lkp@xxxxxxxxx> wrote:
>
> > All warnings (new ones prefixed by >>):
> >
> > >> kernel/trace/trace_kprobe.c:952: warning: Excess function parameter 'args' description in '__kprobe_event_gen_cmd_start'
> > >> kernel/trace/trace_kprobe.c:1017: warning: Excess function parameter 'args' description in '__kprobe_event_add_fields'
> >
> >
> > vim +952 kernel/trace/trace_kprobe.c
> >
> > 929
> > 930 /**
> > 931 * __kprobe_event_gen_cmd_start - Generate a kprobe event command from arg list
> > 932 * @cmd: A pointer to the dynevent_cmd struct representing the new event
> > 933 * @name: The name of the kprobe event
> > 934 * @loc: The location of the kprobe event
> > 935 * @kretprobe: Is this a return probe?
> > 936 * @args: Variable number of arg (pairs), one pair for each field
> > 937 *
> > 938 * NOTE: Users normally won't want to call this function directly, but
> > 939 * rather use the kprobe_event_gen_cmd_start() wrapper, which automatically
> > 940 * adds a NULL to the end of the arg list. If this function is used
> > 941 * directly, make sure the last arg in the variable arg list is NULL.
> > 942 *
> > 943 * Generate a kprobe event command to be executed by
> > 944 * kprobe_event_gen_cmd_end(). This function can be used to generate the
> > 945 * complete command or only the first part of it; in the latter case,
> > 946 * kprobe_event_add_fields() can be used to add more fields following this.
> > 947 *
> > 948 * Return: 0 if successful, error otherwise.
> > 949 */
> > 950 int __kprobe_event_gen_cmd_start(struct dynevent_cmd *cmd, bool kretprobe,
> > 951 const char *name, const char *loc, ...)
> > > 952 {
>
> So what is the proper kerneldoc way to express variable length arguments?

Hi Steven, the fix patch is sent at [1] to fix this kernel-doc warning.

[1] https://lore.kernel.org/all/20231027041315.2613166-1-yujie.liu@xxxxxxxxx/

Best Regards,
Yujie