[lkml]   [2009]   [May]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject__setup_param(), unique_id and vdso_setup

just going through my outstanding list of kernel cleanup pedantry,
and i was reminded of this from include/linux/init.h:

#define __setup(str, fn) \
__setup_param(str, fn, fn, 0)

/* NOTE: fn is as per module_param, not __setup! Emits warning if fn
* returns non-zero. */
#define early_param(str, fn) \
__setup_param(str, fn, fn, 1)

in short, both invocations of __setup_param() use identical second
and third parameters, and a tree-wide grep shows:

$ grep -rw __setup_param *
arch/x86/vdso/vdso32-setup.c:__setup_param("vdso=", vdso32_setup, vdso_setup, 0);
include/linux/init.h:#define __setup_param(str, unique_id, fn, early) \
include/linux/init.h: __setup_param(str, fn, fn, 0)
include/linux/init.h: __setup_param(str, fn, fn, 1)
include/linux/init.h:#define __setup_param(str, unique_id, fn) /* nothing */

so apart from that single exception involving "vdso", that macro
could be simplified to just get rid of that third parameter. is there
something special about the vdso boot-time parm that *requires* it to
be the only boot-time parm in the entire kernel to have a different
unique id? just curious. or does that have to be preserved for
out-of-tree builds?


Robert P. J. Day Waterloo, Ontario, CANADA

Linux Consulting, Training and Annoying Kernel Pedantry.

Web page:
Linked In:

 \ /
  Last update: 2009-05-06 21:29    [W:0.034 / U:10.348 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site