* [PATCH/RFC] KVM: fix sparse warning in include/trace/events/kvm.h
@ 2015-01-15 14:21 Christian Borntraeger
2015-01-19 8:54 ` Christian Borntraeger
2015-01-19 10:07 ` Paolo Bonzini
0 siblings, 2 replies; 4+ messages in thread
From: Christian Borntraeger @ 2015-01-15 14:21 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: KVM, Christian Borntraeger
sparse complains about
include/trace/events/kvm.h:163:1: error: directive in argument list
include/trace/events/kvm.h:167:1: error: directive in argument list
include/trace/events/kvm.h:169:1: error: directive in argument list
and sparse is right. Preprocessing directives in an argument of a
macro are undefined behaviour as of C99 6.10.3p11.
Lets use an indirection to fix this.
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
---
include/trace/events/kvm.h | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/include/trace/events/kvm.h b/include/trace/events/kvm.h
index 6edf1f2..86b399c 100644
--- a/include/trace/events/kvm.h
+++ b/include/trace/events/kvm.h
@@ -146,6 +146,14 @@ TRACE_EVENT(kvm_msi_set_irq,
#if defined(CONFIG_HAVE_KVM_IRQFD)
+#ifdef kvm_irqchips
+#define kvm_ack_irq_string "irqchip %s pin %u"
+#define kvm_ack_irq_parm __print_symbolic(__entry->irqchip, kvm_irqchips), __entry->pin
+#else
+#define kvm_ack_irq_string "irqchip %d pin %u"
+#define kvm_ack_irq_parm __entry->irqchip, __entry->pin
+#endif
+
TRACE_EVENT(kvm_ack_irq,
TP_PROTO(unsigned int irqchip, unsigned int pin),
TP_ARGS(irqchip, pin),
@@ -160,13 +168,7 @@ TRACE_EVENT(kvm_ack_irq,
__entry->pin = pin;
),
-#ifdef kvm_irqchips
- TP_printk("irqchip %s pin %u",
- __print_symbolic(__entry->irqchip, kvm_irqchips),
- __entry->pin)
-#else
- TP_printk("irqchip %d pin %u", __entry->irqchip, __entry->pin)
-#endif
+ TP_printk(kvm_ack_irq_string, kvm_ack_irq_parm)
);
#endif /* defined(CONFIG_HAVE_KVM_IRQFD) */
--
1.9.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH/RFC] KVM: fix sparse warning in include/trace/events/kvm.h
2015-01-15 14:21 [PATCH/RFC] KVM: fix sparse warning in include/trace/events/kvm.h Christian Borntraeger
@ 2015-01-19 8:54 ` Christian Borntraeger
2015-01-19 14:46 ` Marcelo Tosatti
2015-01-19 10:07 ` Paolo Bonzini
1 sibling, 1 reply; 4+ messages in thread
From: Christian Borntraeger @ 2015-01-19 8:54 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: KVM, Alexander Graf, Marcelo Tosatti
Adding Alex and Marcelo CC as git blame gives them authorship to that piece of code.
Paolo, I assume that you will pick that up without a git tree if Alex/Marcelo ack that change.
Christian
Am 15.01.2015 um 15:21 schrieb Christian Borntraeger:
> sparse complains about
> include/trace/events/kvm.h:163:1: error: directive in argument list
> include/trace/events/kvm.h:167:1: error: directive in argument list
> include/trace/events/kvm.h:169:1: error: directive in argument list
> and sparse is right. Preprocessing directives in an argument of a
> macro are undefined behaviour as of C99 6.10.3p11.
>
> Lets use an indirection to fix this.
>
> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
> ---
> include/trace/events/kvm.h | 16 +++++++++-------
> 1 file changed, 9 insertions(+), 7 deletions(-)
>
> diff --git a/include/trace/events/kvm.h b/include/trace/events/kvm.h
> index 6edf1f2..86b399c 100644
> --- a/include/trace/events/kvm.h
> +++ b/include/trace/events/kvm.h
> @@ -146,6 +146,14 @@ TRACE_EVENT(kvm_msi_set_irq,
>
> #if defined(CONFIG_HAVE_KVM_IRQFD)
>
> +#ifdef kvm_irqchips
> +#define kvm_ack_irq_string "irqchip %s pin %u"
> +#define kvm_ack_irq_parm __print_symbolic(__entry->irqchip, kvm_irqchips), __entry->pin
> +#else
> +#define kvm_ack_irq_string "irqchip %d pin %u"
> +#define kvm_ack_irq_parm __entry->irqchip, __entry->pin
> +#endif
> +
> TRACE_EVENT(kvm_ack_irq,
> TP_PROTO(unsigned int irqchip, unsigned int pin),
> TP_ARGS(irqchip, pin),
> @@ -160,13 +168,7 @@ TRACE_EVENT(kvm_ack_irq,
> __entry->pin = pin;
> ),
>
> -#ifdef kvm_irqchips
> - TP_printk("irqchip %s pin %u",
> - __print_symbolic(__entry->irqchip, kvm_irqchips),
> - __entry->pin)
> -#else
> - TP_printk("irqchip %d pin %u", __entry->irqchip, __entry->pin)
> -#endif
> + TP_printk(kvm_ack_irq_string, kvm_ack_irq_parm)
> );
>
> #endif /* defined(CONFIG_HAVE_KVM_IRQFD) */
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH/RFC] KVM: fix sparse warning in include/trace/events/kvm.h
2015-01-15 14:21 [PATCH/RFC] KVM: fix sparse warning in include/trace/events/kvm.h Christian Borntraeger
2015-01-19 8:54 ` Christian Borntraeger
@ 2015-01-19 10:07 ` Paolo Bonzini
1 sibling, 0 replies; 4+ messages in thread
From: Paolo Bonzini @ 2015-01-19 10:07 UTC (permalink / raw)
To: Christian Borntraeger; +Cc: KVM
On 15/01/2015 15:21, Christian Borntraeger wrote:
> sparse complains about
> include/trace/events/kvm.h:163:1: error: directive in argument list
> include/trace/events/kvm.h:167:1: error: directive in argument list
> include/trace/events/kvm.h:169:1: error: directive in argument list
> and sparse is right. Preprocessing directives in an argument of a
> macro are undefined behaviour as of C99 6.10.3p11.
>
> Lets use an indirection to fix this.
>
> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Applied to kvm/master, thanks.
Paolo
> ---
> include/trace/events/kvm.h | 16 +++++++++-------
> 1 file changed, 9 insertions(+), 7 deletions(-)
>
> diff --git a/include/trace/events/kvm.h b/include/trace/events/kvm.h
> index 6edf1f2..86b399c 100644
> --- a/include/trace/events/kvm.h
> +++ b/include/trace/events/kvm.h
> @@ -146,6 +146,14 @@ TRACE_EVENT(kvm_msi_set_irq,
>
> #if defined(CONFIG_HAVE_KVM_IRQFD)
>
> +#ifdef kvm_irqchips
> +#define kvm_ack_irq_string "irqchip %s pin %u"
> +#define kvm_ack_irq_parm __print_symbolic(__entry->irqchip, kvm_irqchips), __entry->pin
> +#else
> +#define kvm_ack_irq_string "irqchip %d pin %u"
> +#define kvm_ack_irq_parm __entry->irqchip, __entry->pin
> +#endif
> +
> TRACE_EVENT(kvm_ack_irq,
> TP_PROTO(unsigned int irqchip, unsigned int pin),
> TP_ARGS(irqchip, pin),
> @@ -160,13 +168,7 @@ TRACE_EVENT(kvm_ack_irq,
> __entry->pin = pin;
> ),
>
> -#ifdef kvm_irqchips
> - TP_printk("irqchip %s pin %u",
> - __print_symbolic(__entry->irqchip, kvm_irqchips),
> - __entry->pin)
> -#else
> - TP_printk("irqchip %d pin %u", __entry->irqchip, __entry->pin)
> -#endif
> + TP_printk(kvm_ack_irq_string, kvm_ack_irq_parm)
> );
>
> #endif /* defined(CONFIG_HAVE_KVM_IRQFD) */
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH/RFC] KVM: fix sparse warning in include/trace/events/kvm.h
2015-01-19 8:54 ` Christian Borntraeger
@ 2015-01-19 14:46 ` Marcelo Tosatti
0 siblings, 0 replies; 4+ messages in thread
From: Marcelo Tosatti @ 2015-01-19 14:46 UTC (permalink / raw)
To: Christian Borntraeger; +Cc: Paolo Bonzini, KVM, Alexander Graf
On Mon, Jan 19, 2015 at 09:54:53AM +0100, Christian Borntraeger wrote:
> Adding Alex and Marcelo CC as git blame gives them authorship to that piece of code.
>
> Paolo, I assume that you will pick that up without a git tree if Alex/Marcelo ack that change.
>
> Christian
Looks good to me.
>
>
>
> Am 15.01.2015 um 15:21 schrieb Christian Borntraeger:
> > sparse complains about
> > include/trace/events/kvm.h:163:1: error: directive in argument list
> > include/trace/events/kvm.h:167:1: error: directive in argument list
> > include/trace/events/kvm.h:169:1: error: directive in argument list
> > and sparse is right. Preprocessing directives in an argument of a
> > macro are undefined behaviour as of C99 6.10.3p11.
> >
> > Lets use an indirection to fix this.
> >
> > Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
> > ---
> > include/trace/events/kvm.h | 16 +++++++++-------
> > 1 file changed, 9 insertions(+), 7 deletions(-)
> >
> > diff --git a/include/trace/events/kvm.h b/include/trace/events/kvm.h
> > index 6edf1f2..86b399c 100644
> > --- a/include/trace/events/kvm.h
> > +++ b/include/trace/events/kvm.h
> > @@ -146,6 +146,14 @@ TRACE_EVENT(kvm_msi_set_irq,
> >
> > #if defined(CONFIG_HAVE_KVM_IRQFD)
> >
> > +#ifdef kvm_irqchips
> > +#define kvm_ack_irq_string "irqchip %s pin %u"
> > +#define kvm_ack_irq_parm __print_symbolic(__entry->irqchip, kvm_irqchips), __entry->pin
> > +#else
> > +#define kvm_ack_irq_string "irqchip %d pin %u"
> > +#define kvm_ack_irq_parm __entry->irqchip, __entry->pin
> > +#endif
> > +
> > TRACE_EVENT(kvm_ack_irq,
> > TP_PROTO(unsigned int irqchip, unsigned int pin),
> > TP_ARGS(irqchip, pin),
> > @@ -160,13 +168,7 @@ TRACE_EVENT(kvm_ack_irq,
> > __entry->pin = pin;
> > ),
> >
> > -#ifdef kvm_irqchips
> > - TP_printk("irqchip %s pin %u",
> > - __print_symbolic(__entry->irqchip, kvm_irqchips),
> > - __entry->pin)
> > -#else
> > - TP_printk("irqchip %d pin %u", __entry->irqchip, __entry->pin)
> > -#endif
> > + TP_printk(kvm_ack_irq_string, kvm_ack_irq_parm)
> > );
> >
> > #endif /* defined(CONFIG_HAVE_KVM_IRQFD) */
> >
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-01-19 14:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-15 14:21 [PATCH/RFC] KVM: fix sparse warning in include/trace/events/kvm.h Christian Borntraeger
2015-01-19 8:54 ` Christian Borntraeger
2015-01-19 14:46 ` Marcelo Tosatti
2015-01-19 10:07 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).