On Sat, 3 Jun 2017 19:05:10 +0900Steven,
Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
On Wed, May 31, 2017 at 12:17:05PM -0500, Christopher Bostic wrote:From patch 16/23:
Hi Greg,Sorry for the delay. I just tried applying this to my tree, but got the
Are there any further changes you require for this patch set? This has been
extensively tested internally and all is working as expected. Would it be
possible to move forward with integration in the near future? Any input
would be appreciated.
following build warnings, and then errors:
In file included from ./include/trace/define_trace.h:95:0,
from ./include/trace/events/fsi.h:127,
from drivers/fsi/fsi-core.c:27:
./include/trace/events/fsi.h: In function âtrace_raw_output_fsi_master_writeâ:
./include/trace/events/fsi.h:58:12: warning: field width specifier â*â expects argument of type âintâ, but argument 8 has type âsize_t {aka long unsigned int}â [-Wformat=]
TP_printk("fsi%d:%02d:%02d %08x[%zd] <= {%*ph}",
+TRACE_EVENT(fsi_master_write,
+ TP_PROTO(const struct fsi_master *master, int link, int id,
+ uint32_t addr, size_t size, const void *data),
+ TP_ARGS(master, link, id, addr, size, data),
+ TP_STRUCT__entry(
+ __field(int, master_idx)
+ __field(int, link)
+ __field(int, id)
+ __field(__u32, addr)
+ __field(size_t, size)
+ __field(__u32, data)
+ ),
+ TP_fast_assign(
+ __entry->master_idx = master->idx;
+ __entry->link = link;
+ __entry->id = id;
+ __entry->addr = addr;
+ __entry->size = size;
+ __entry->data = 0;
+ memcpy(&__entry->data, data, size);
+ ),
+ TP_printk("fsi%d:%02d:%02d %08x[%zd] <= {%*ph}",
+ __entry->master_idx,
+ __entry->link,
+ __entry->id,
+ __entry->addr,
+ __entry->size,
+ __entry->size, &__entry->data
+ )
+);
Looks like the second __entry->size, probably needs a type cast.
Would something like:
__entry->size,
(int)__entry->size, &__entry->data
work?
I haven't looked at the others, but I'm guessing they are probably
similar issues.
-- Steve
^
./include/trace/trace_events.h:343:22: note: in definition of macro âDECLARE_EVENT_CLASSâ
trace_seq_printf(s, print); \
^~~~~
./include/trace/trace_events.h:65:9: note: in expansion of macro âPARAMSâ
PARAMS(print)); \
^~~~~~
./include/trace/events/fsi.h:37:1: note: in expansion of macro âTRACE_EVENTâ
TRACE_EVENT(fsi_master_write,
^~~~~~~~~~~
./include/trace/events/fsi.h:58:2: note: in expansion of macro âTP_printkâ
TP_printk("fsi%d:%02d:%02d %08x[%zd] <= {%*ph}",
^~~~~~~~~
In file included from ./include/trace/trace_events.h:377:0,
from ./include/trace/define_trace.h:95,
from ./include/trace/events/fsi.h:127,
from drivers/fsi/fsi-core.c:27:
./include/trace/events/fsi.h:58:44: note: format string is defined here
TP_printk("fsi%d:%02d:%02d %08x[%zd] <= {%*ph}",
~^~
In file included from ./include/trace/define_trace.h:95:0,
from ./include/trace/events/fsi.h:127,
from drivers/fsi/fsi-core.c:27:
./include/trace/events/fsi.h: In function âtrace_raw_output_fsi_master_rw_resul
â:
./include/trace/events/fsi.h:95:12: warning: field width specifier â*â expects argument of type âintâ, but argument 9 has type âsize_t {aka long unsigned int}â [-Wformat=]
TP_printk("fsi%d:%02d:%02d %08x[%zd] %s {%*ph} ret %d",
^
./include/trace/trace_events.h:343:22: note: in definition of macro âDECLARE_EVENT_CLASSâ
trace_seq_printf(s, print); \
^~~~~
./include/trace/trace_events.h:65:9: note: in expansion of macro âPARAMSâ
PARAMS(print)); \
^~~~~~
./include/trace/events/fsi.h:68:1: note: in expansion of macro âTRACE_EVENTâ
TRACE_EVENT(fsi_master_rw_result,
^~~~~~~~~~~
./include/trace/events/fsi.h:95:2: note: in expansion of macro âTP_printkâ
TP_printk("fsi%d:%02d:%02d %08x[%zd] %s {%*ph} ret %d",
^~~~~~~~~
In file included from ./include/trace/trace_events.h:377:0,
from ./include/trace/define_trace.h:95,
from ./include/trace/events/fsi.h:127,
from drivers/fsi/fsi-core.c:27:
./include/trace/events/fsi.h:95:44: note: format string is defined here
TP_printk("fsi%d:%02d:%02d %08x[%zd] %s {%*ph} ret %d",
~^~
CHK include/generated/uapi/linux/version.h
GEN .version
CHK include/generated/compile.h
UPD include/generated/compile.h
CC init/version.o
LD init/built-in.o
LD vmlinux.o
MODPOST vmlinux.o
KSYM .tmp_kallsyms1.o
KSYM .tmp_kallsyms2.o
LD vmlinux
SORTEX vmlinux
SYSMAP System.map
CC arch/x86/boot/version.o
Building modules, stage 2.
VOFFSET arch/x86/boot/compressed/../voffset.h
OBJCOPY arch/x86/boot/compressed/vmlinux.bin
RELOCS arch/x86/boot/compressed/vmlinux.relocs
CC arch/x86/boot/compressed/kaslr.o
GZIP arch/x86/boot/compressed/vmlinux.bin.gz
CC arch/x86/boot/compressed/misc.o
MODPOST 476 modules
WARNING: modpost: missing MODULE_LICENSE() in drivers/fsi/fsi-core.o
see include/linux/module.h for more information
MKPIGGY arch/x86/boot/compressed/piggy.S
AS arch/x86/boot/compressed/piggy.o
DATAREL arch/x86/boot/compressed/vmlinux
LD arch/x86/boot/compressed/vmlinux
ZOFFSET arch/x86/boot/zoffset.h
OBJCOPY arch/x86/boot/vmlinux.bin
AS arch/x86/boot/header.o
LD arch/x86/boot/setup.elf
OBJCOPY arch/x86/boot/setup.bin
BUILD arch/x86/boot/bzImage
Setup is 17532 bytes (padded to 17920 bytes).
System is 5445 kB
CRC 56d8089d
Kernel: arch/x86/boot/bzImage is ready (#387)
ERROR: "fsi_slave_claim_range" [drivers/fsi/fsi-master-hub.ko] undefined!
ERROR: "fsi_slave_read" [drivers/fsi/fsi-master-hub.ko] undefined!
ERROR: "fsi_slave_write" [drivers/fsi/fsi-master-hub.ko] undefined!
ERROR: "fsi_slave_release_range" [drivers/fsi/fsi-master-hub.ko] undefined!
make[1]: *** [scripts/Makefile.modpost:91: __modpost] Error 1
make: *** [Makefile:1214: modules] Error 2
Note, I'm using gcc 7.1.1, which might be what is showing the build warnings,
but that doesn't explain the build errors.
So obviously, I can't take this as is :(
thanks,
greg k-h