lkml.org 
[lkml]   [2007]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 6/4] [-mm patch] use the existing offsetof().


On Thu, 20 Sep 2007, Ken'ichi Ohmichi wrote:
>
> [PATCH 6/4] [-mm patch] use the existing offsetof().
> It is better that offsetof() is used for VMCOREINFO_OFFSET().
> This idea is Joe Perches's.
>
>
>
> Thanks
> Ken'ichi Ohmichi
>
> ---
> Signed-off-by: Joe Perches <joe@perches.com>

Same deal here ...


> Signed-off-by: Ken'ichi Ohmichi <oomichi@mxs.nes.nec.co.jp>
> ---
> diff -rpuN a/include/linux/kexec.h b/include/linux/kexec.h
> --- a/include/linux/kexec.h 2007-09-18 15:23:22.000000000 +0900
> +++ b/include/linux/kexec.h 2007-09-18 15:27:29.000000000 +0900
> @@ -137,7 +137,7 @@ unsigned long paddr_vmcoreinfo_note(void
> (unsigned long)sizeof(struct name))
> #define VMCOREINFO_OFFSET(name, field) \
> vmcoreinfo_append_str("OFFSET(%s.%s)=%lu\n", #name, #field, \
> - (unsigned long)&(((struct name *)0)->field))
> + (unsigned long)offsetof(struct name, field))
> #define VMCOREINFO_LENGTH(name, value) \
> vmcoreinfo_append_str("LENGTH(%s)=%lu\n", #name, (unsigned long)value)

... and here. Use %zu and lose the casts.

BTW I don't think these macros are such a big win in readability or
code clarity anyway. And I noticed that there are still some open
calls to vmcoreinfo_append_str() in kexec.c (such as for the OS_RELEASE
case) which you haven't macro-ized ... we end up having code that looks
like:

vmcoreinfo_append_str(...);
...

...
VMCOREINFO_OFFSET(...);
...

and it's not even obvious (unless you follow on to the definition of the
later macro) that the above two are *exactly* the same. So you could also
consider just losing the macros altogether.


Satyam
-
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: 2007-09-20 14:29    [W:0.075 / U:0.128 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site