Re: [PATCH] init/version.c: Define version_string only ifCONFIG_KALLSYMS is not defined.

From: Daniel Guilak
Date: Mon Jul 14 2008 - 17:21:40 EST


On Mon, 2008-07-14 at 12:38 -0700, Randy Dunlap wrote:
> On Mon, 14 Jul 2008 12:04:46 -0700 Daniel Guilak wrote:
>
> > int Version_* is only used with ksymoops, which is only needed (according to
> > README and Documentation/Changes) if CONFIG_KALLSYMS is NOT defined. Therefore
> > this patch defines version_string only if CONFIG_KALLSYMS is not defined.
> >
> > Signed-off-by: Daniel Guilak <daniel@xxxxxxxxxxxxxxxx>
> > ---
> > init/version.c | 2 ++
> > 1 files changed, 2 insertions(+), 0 deletions(-)
> >
> > Depends on "[PATCH] init/version.c: Silenced sparse warning by declaring the version string."
> >
> > diff --git a/init/version.c b/init/version.c
> > index 041fd82..52a8b98 100644
> > --- a/init/version.c
> > +++ b/init/version.c
> > @@ -13,11 +13,13 @@
> > #include <linux/utsrelease.h>
> > #include <linux/version.h>
> >
> > +#ifndef CONFIG_KALLSYMS
> > #define version(a) Version_ ## a
> > #define version_string(a) version(a)
> >
> > extern int version_string(LINUX_VERSION_CODE);
> > int version_string(LINUX_VERSION_CODE);
> > +#endif
> >
> > struct uts_namespace init_uts_ns = {
> > .kref = {
> > --
>
> Does not apply cleanly to linux-2.6.26, linux-next-20080714, or Linus-git-head.
>

Did you apply "[PATCH] init/version.c: Silenced sparse warning by
declaring the version string." beforehand? I just applied it on the most
recent tree and I didn't have any issues.

> and why do we ned both extern int version_string()
> and int version_string() ?
Because sparse was complaining that it wasn't prototyped or static.
There isn't a header file to put it in since it only exists to be a
kernel.
> ---
> ~Randy
> Linux Plumbers Conference, 17-19 September 2008, Portland, Oregon USA
> http://linuxplumbersconf.org/

--Daniel

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/