lkml.org 
[lkml]   [2006]   [Sep]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH] Linux Kernel Markers 0.2 for Linux 2.6.17
Hi Randy,

Thanks for the comments, see below :

* Randy.Dunlap (rdunlap@xenotime.net) wrote:
> > +static inline void __mark_check_format(const char *fmt, ...)
> > + __attribute__ ((format (printf, 1, 2)));
> > +void __mark_check_format(const char *fmt, ...) { }
>
> That last line is confusing (to me). What's it for?
> Is it just an empty (inline) function definition?
> If so, why repeat the void + function name?
>

The goal of this "empty" function is just to have to compiler check the string
format consistency.

I separated the function declaration and implementation because I have seen some
compilers complain about having the two merged together.

I will change it to

static inline __attribute__ ((format (printf, 1, 2)))
void __mark_check_format(const char *fmt, ...)
{ }

And hope every compiler will like it.

The empty implementation is because the function is called (must therefore be
implemented), but I expect the compiler to completely optimize it away.

> > --- /dev/null
> > +++ b/kernel/Kconfig.marker
> > @@ -0,0 +1,75 @@
> > +# Code markers configuration
> > +
> > +menu "Marker configuration"
> > +
> > +
> > +config MARK
> > + bool "Enable MARK code markers"
> > + default y
> Please justify using 'y' as the default value.
>

It has to be debated. The default for markers will put a symbol for all the
markers, so that kprobe can easily attach to it. It has no impact that I am
aware of except to boost the number of symbols.

Mathieu

OpenPGP public key: http://krystal.dyndns.org:8080/key/compudj.gpg
Key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-09-19 21:15    [W:0.063 / U:1.336 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site