Re: [Xen-devel] [PATCH 1/2] xen: Add __attribute__((format(printf... where appropriate

2011-06-13 Thread Joe Perches
On Mon, 2011-06-13 at 12:31 -0400, Konrad Rzeszutek Wilk wrote:
> On Sun, Jun 12, 2011 at 09:21:13AM -0700, Joe Perches wrote:
> > Use the compiler to verify printf formats and arguments.
> What compiler?

Any supported version of gcc.

>  If this is not included in 3.0 what is the fallout?

Nothing of any import.
nodename won't get printed on an unlikely error message.
I don't think it should go into 3.0.

> > err = xenbus_switch_state(dev, XenbusStateConnected);
> > if (err)
> > -   xenbus_dev_fatal(dev, err, "switching to Connected state",
> > +   xenbus_dev_fatal(dev, err, "%s: switching to Connected state",
> >  dev->nodename);


___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/virtualization


Re: [Xen-devel] [PATCH 1/2] xen: Add __attribute__((format(printf... where appropriate

2011-06-13 Thread Konrad Rzeszutek Wilk
On Sun, Jun 12, 2011 at 09:21:13AM -0700, Joe Perches wrote:
> Use the compiler to verify printf formats and arguments.
> 

What compiler? If this is not included in 3.0 what is the fallout?

> Fix fallout.
> 
> Signed-off-by: Joe Perches 
> ---
>  drivers/block/xen-blkback/xenbus.c |2 +-
>  include/xen/hvc-console.h  |4 +++-
>  include/xen/xenbus.h   |2 ++
>  3 files changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/block/xen-blkback/xenbus.c 
> b/drivers/block/xen-blkback/xenbus.c
> index 6cc0db1..3f129b4 100644
> --- a/drivers/block/xen-blkback/xenbus.c
> +++ b/drivers/block/xen-blkback/xenbus.c
> @@ -684,7 +684,7 @@ again:
>  
>   err = xenbus_switch_state(dev, XenbusStateConnected);
>   if (err)
> - xenbus_dev_fatal(dev, err, "switching to Connected state",
> + xenbus_dev_fatal(dev, err, "%s: switching to Connected state",
>dev->nodename);
>  
>   return;
> diff --git a/include/xen/hvc-console.h b/include/xen/hvc-console.h
> index c3adde3..901724d 100644
> --- a/include/xen/hvc-console.h
> +++ b/include/xen/hvc-console.h
> @@ -6,11 +6,13 @@ extern struct console xenboot_console;
>  #ifdef CONFIG_HVC_XEN
>  void xen_console_resume(void);
>  void xen_raw_console_write(const char *str);
> +__attribute__((format(printf, 1, 2)))
>  void xen_raw_printk(const char *fmt, ...);
>  #else
>  static inline void xen_console_resume(void) { }
>  static inline void xen_raw_console_write(const char *str) { }
> -static inline void xen_raw_printk(const char *fmt, ...) { }
> +static inline __attribute__((format(printf, 1, 2)))
> +void xen_raw_printk(const char *fmt, ...) { }
>  #endif
>  
>  #endif   /* XEN_HVC_CONSOLE_H */
> diff --git a/include/xen/xenbus.h b/include/xen/xenbus.h
> index 5467369..aceeca7 100644
> --- a/include/xen/xenbus.h
> +++ b/include/xen/xenbus.h
> @@ -223,7 +223,9 @@ int xenbus_free_evtchn(struct xenbus_device *dev, int 
> port);
>  
>  enum xenbus_state xenbus_read_driver_state(const char *path);
>  
> +__attribute__((format(printf, 3, 4)))
>  void xenbus_dev_error(struct xenbus_device *dev, int err, const char *fmt, 
> ...);
> +__attribute__((format(printf, 3, 4)))
>  void xenbus_dev_fatal(struct xenbus_device *dev, int err, const char *fmt, 
> ...);
>  
>  const char *xenbus_strstate(enum xenbus_state state);
> -- 
> 1.7.6.rc1
> 
> 
> ___
> Xen-devel mailing list
> xen-de...@lists.xensource.com
> http://lists.xensource.com/xen-devel
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/virtualization


[PATCH 1/2] xen: Add __attribute__((format(printf... where appropriate

2011-06-12 Thread Joe Perches
Use the compiler to verify printf formats and arguments.

Fix fallout.

Signed-off-by: Joe Perches 
---
 drivers/block/xen-blkback/xenbus.c |2 +-
 include/xen/hvc-console.h  |4 +++-
 include/xen/xenbus.h   |2 ++
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/block/xen-blkback/xenbus.c 
b/drivers/block/xen-blkback/xenbus.c
index 6cc0db1..3f129b4 100644
--- a/drivers/block/xen-blkback/xenbus.c
+++ b/drivers/block/xen-blkback/xenbus.c
@@ -684,7 +684,7 @@ again:
 
err = xenbus_switch_state(dev, XenbusStateConnected);
if (err)
-   xenbus_dev_fatal(dev, err, "switching to Connected state",
+   xenbus_dev_fatal(dev, err, "%s: switching to Connected state",
 dev->nodename);
 
return;
diff --git a/include/xen/hvc-console.h b/include/xen/hvc-console.h
index c3adde3..901724d 100644
--- a/include/xen/hvc-console.h
+++ b/include/xen/hvc-console.h
@@ -6,11 +6,13 @@ extern struct console xenboot_console;
 #ifdef CONFIG_HVC_XEN
 void xen_console_resume(void);
 void xen_raw_console_write(const char *str);
+__attribute__((format(printf, 1, 2)))
 void xen_raw_printk(const char *fmt, ...);
 #else
 static inline void xen_console_resume(void) { }
 static inline void xen_raw_console_write(const char *str) { }
-static inline void xen_raw_printk(const char *fmt, ...) { }
+static inline __attribute__((format(printf, 1, 2)))
+void xen_raw_printk(const char *fmt, ...) { }
 #endif
 
 #endif /* XEN_HVC_CONSOLE_H */
diff --git a/include/xen/xenbus.h b/include/xen/xenbus.h
index 5467369..aceeca7 100644
--- a/include/xen/xenbus.h
+++ b/include/xen/xenbus.h
@@ -223,7 +223,9 @@ int xenbus_free_evtchn(struct xenbus_device *dev, int port);
 
 enum xenbus_state xenbus_read_driver_state(const char *path);
 
+__attribute__((format(printf, 3, 4)))
 void xenbus_dev_error(struct xenbus_device *dev, int err, const char *fmt, 
...);
+__attribute__((format(printf, 3, 4)))
 void xenbus_dev_fatal(struct xenbus_device *dev, int err, const char *fmt, 
...);
 
 const char *xenbus_strstate(enum xenbus_state state);
-- 
1.7.6.rc1

___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/virtualization