Message ID | 20171221133139.1968427-1-arnd@arndb.de |
---|---|
State | New |
Headers | show |
Series | staging: ccree: fix type mismatch warning | expand |
On Thu, Dec 21, 2017 at 02:31:20PM +0100, Arnd Bergmann wrote: > __dump_byte_array used to be hidden, but is now visible to the compiler > and causes a harmless warning: > > drivers/staging/ccree/ssi_driver.c:82:6: error: conflicting types for '__dump_byte_array' > drivers/staging/ccree/ssi_driver.c: In function '__dump_byte_array': > drivers/staging/ccree/ssi_driver.c:89:41: error: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'size_t {aka unsigned int}' [-Werror=format=] > > This changes the prototype in the header to match that of the actual > function on all architectures, and the format string to match the > argument. > > Fixes: 3f268f5d6669 ("staging: ccree: turn compile time debug log to params") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/staging/ccree/ssi_driver.c | 2 +- > drivers/staging/ccree/ssi_driver.h | 4 ++-- > 2 files changed, 3 insertions(+), 3 deletions(-) Should already be fixed, sorry. greg k-h
diff --git a/drivers/staging/ccree/ssi_driver.c b/drivers/staging/ccree/ssi_driver.c index 56b5d45a205c..1254c6922d50 100644 --- a/drivers/staging/ccree/ssi_driver.c +++ b/drivers/staging/ccree/ssi_driver.c @@ -86,7 +86,7 @@ void __dump_byte_array(const char *name, const u8 *buf, size_t len) if (!buf) return; - snprintf(prefix, sizeof(prefix), "%s[%lu]: ", name, len); + snprintf(prefix, sizeof(prefix), "%s[%zu]: ", name, len); print_hex_dump(KERN_DEBUG, prefix, DUMP_PREFIX_ADDRESS, 16, 1, buf, len, false); diff --git a/drivers/staging/ccree/ssi_driver.h b/drivers/staging/ccree/ssi_driver.h index 5a56f7a76b71..e1406d6e1ab2 100644 --- a/drivers/staging/ccree/ssi_driver.h +++ b/drivers/staging/ccree/ssi_driver.h @@ -175,9 +175,9 @@ static inline struct device *drvdata_to_dev(struct cc_drvdata *drvdata) } void __dump_byte_array(const char *name, const u8 *the_array, - unsigned long size); + size_t size); static inline void dump_byte_array(const char *name, const u8 *the_array, - unsigned long size) + size_t size) { if (cc_dump_bytes) __dump_byte_array(name, the_array, size);
__dump_byte_array used to be hidden, but is now visible to the compiler and causes a harmless warning: drivers/staging/ccree/ssi_driver.c:82:6: error: conflicting types for '__dump_byte_array' drivers/staging/ccree/ssi_driver.c: In function '__dump_byte_array': drivers/staging/ccree/ssi_driver.c:89:41: error: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'size_t {aka unsigned int}' [-Werror=format=] This changes the prototype in the header to match that of the actual function on all architectures, and the format string to match the argument. Fixes: 3f268f5d6669 ("staging: ccree: turn compile time debug log to params") Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- drivers/staging/ccree/ssi_driver.c | 2 +- drivers/staging/ccree/ssi_driver.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) -- 2.9.0