Commit 156b5f17 authored by Steven Rostedt's avatar Steven Rostedt

tracing: typecast sizeof and offsetof to unsigned int

Impact: fix compiler warnings

On x86_64 sizeof and offsetof are treated as long, where as on x86_32
they are int. This patch typecasts them to unsigned int to avoid
one arch giving warnings while the other does not.
Reported-by: default avatarIngo Molnar <mingo@elte.hu>
Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
parent 7bffc23e
...@@ -448,8 +448,9 @@ event_available_types_read(struct file *filp, char __user *ubuf, size_t cnt, ...@@ -448,8 +448,9 @@ event_available_types_read(struct file *filp, char __user *ubuf, size_t cnt,
} }
#undef FIELD #undef FIELD
#define FIELD(type, name) \ #define FIELD(type, name) \
#type, #name, offsetof(typeof(field), name), sizeof(field.name) #type, #name, (unsigned int)offsetof(typeof(field), name), \
(unsigned int)sizeof(field.name)
static int trace_write_header(struct trace_seq *s) static int trace_write_header(struct trace_seq *s)
{ {
...@@ -457,11 +458,11 @@ static int trace_write_header(struct trace_seq *s) ...@@ -457,11 +458,11 @@ static int trace_write_header(struct trace_seq *s)
/* struct trace_entry */ /* struct trace_entry */
return trace_seq_printf(s, return trace_seq_printf(s,
"\tfield:%s %s;\toffset:%lu;\tsize:%lu;\n" "\tfield:%s %s;\toffset:%u;\tsize:%u;\n"
"\tfield:%s %s;\toffset:%lu;\tsize:%lu;\n" "\tfield:%s %s;\toffset:%u;\tsize:%u;\n"
"\tfield:%s %s;\toffset:%lu;\tsize:%lu;\n" "\tfield:%s %s;\toffset:%u;\tsize:%u;\n"
"\tfield:%s %s;\toffset:%lu;\tsize:%lu;\n" "\tfield:%s %s;\toffset:%u;\tsize:%u;\n"
"\tfield:%s %s;\toffset:%lu;\tsize:%lu;\n" "\tfield:%s %s;\toffset:%u;\tsize:%u;\n"
"\n", "\n",
FIELD(unsigned char, type), FIELD(unsigned char, type),
FIELD(unsigned char, flags), FIELD(unsigned char, flags),
......
...@@ -18,11 +18,11 @@ ...@@ -18,11 +18,11 @@
#include "trace_format.h" #include "trace_format.h"
#undef TRACE_FIELD_ZERO_CHAR #undef TRACE_FIELD_ZERO_CHAR
#define TRACE_FIELD_ZERO_CHAR(item) \ #define TRACE_FIELD_ZERO_CHAR(item) \
ret = trace_seq_printf(s, "\tfield: char " #item ";\t" \ ret = trace_seq_printf(s, "\tfield: char " #item ";\t" \
"offset:%lu;\tsize:0;\n", \ "offset:%u;\tsize:0;\n", \
offsetof(typeof(field), item)); \ (unsigned int)offsetof(typeof(field), item)); \
if (!ret) \ if (!ret) \
return 0; return 0;
......
...@@ -22,9 +22,9 @@ ...@@ -22,9 +22,9 @@
#undef TRACE_FIELD #undef TRACE_FIELD
#define TRACE_FIELD(type, item, assign) \ #define TRACE_FIELD(type, item, assign) \
ret = trace_seq_printf(s, "\tfield:" #type " " #item ";\t" \ ret = trace_seq_printf(s, "\tfield:" #type " " #item ";\t" \
"offset:%lu;\tsize:%lu;\n", \ "offset:%u;\tsize:%u;\n", \
offsetof(typeof(field), item), \ (unsigned int)offsetof(typeof(field), item), \
sizeof(field.item)); \ (unsigned int)sizeof(field.item)); \
if (!ret) \ if (!ret) \
return 0; return 0;
...@@ -32,9 +32,9 @@ ...@@ -32,9 +32,9 @@
#undef TRACE_FIELD_SPECIAL #undef TRACE_FIELD_SPECIAL
#define TRACE_FIELD_SPECIAL(type_item, item, cmd) \ #define TRACE_FIELD_SPECIAL(type_item, item, cmd) \
ret = trace_seq_printf(s, "\tfield special:" #type_item ";\t" \ ret = trace_seq_printf(s, "\tfield special:" #type_item ";\t" \
"offset:%lu;\tsize:%lu;\n", \ "offset:%u;\tsize:%u;\n", \
offsetof(typeof(field), item), \ (unsigned int)offsetof(typeof(field), item), \
sizeof(field.item)); \ (unsigned int)sizeof(field.item)); \
if (!ret) \ if (!ret) \
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment