diff mbox series

[7/7] cxl/trace: Enclose a multiple statements macro in a do while loop

Message ID 20230921025110.3717583-8-jtp.park@samsung.com
State Superseded
Headers show
Series cxl: Fix checkpatch issues | expand

Commit Message

Jeongtae Park Sept. 21, 2023, 2:51 a.m. UTC
ERROR: Macros with complex values should be enclosed in parentheses

Signed-off-by: Jeongtae Park <jtp.park@samsung.com>
---
 drivers/cxl/core/trace.h | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

Comments

Dave Jiang Sept. 21, 2023, 10:58 p.m. UTC | #1
On 9/20/23 19:51, Jeongtae Park wrote:
> ERROR: Macros with complex values should be enclosed in parentheses
> 
> Signed-off-by: Jeongtae Park <jtp.park@samsung.com>

I think that goes against typical traceevent macros layout. I would ignore checkpatch warnings on traceevent stuff. 


> ---
>  drivers/cxl/core/trace.h | 24 +++++++++++++-----------
>  1 file changed, 13 insertions(+), 11 deletions(-)
> 
> diff --git a/drivers/cxl/core/trace.h b/drivers/cxl/core/trace.h
> index 7aee7fb008a5..e2338773dcd6 100644
> --- a/drivers/cxl/core/trace.h
> +++ b/drivers/cxl/core/trace.h
> @@ -199,17 +199,19 @@ TRACE_EVENT(cxl_overflow,
>  	__field(u8, hdr_maint_op_class)
>  
>  #define CXL_EVT_TP_fast_assign(cxlmd, l, hdr)					\
> -	__assign_str(memdev, dev_name(&(cxlmd)->dev));				\
> -	__assign_str(host, dev_name((cxlmd)->dev.parent));			\
> -	__entry->log = (l);							\
> -	__entry->serial = (cxlmd)->cxlds->serial;				\
> -	memcpy(&__entry->hdr_uuid, &(hdr).id, sizeof(uuid_t));			\
> -	__entry->hdr_length = (hdr).length;					\
> -	__entry->hdr_flags = get_unaligned_le24((hdr).flags);			\
> -	__entry->hdr_handle = le16_to_cpu((hdr).handle);			\
> -	__entry->hdr_related_handle = le16_to_cpu((hdr).related_handle);	\
> -	__entry->hdr_timestamp = le64_to_cpu((hdr).timestamp);			\
> -	__entry->hdr_maint_op_class = (hdr).maint_op_class
> +	do {									\
> +	    __assign_str(memdev, dev_name(&(cxlmd)->dev));			\
> +	    __assign_str(host, dev_name((cxlmd)->dev.parent));			\
> +	    __entry->log = (l);							\
> +	    __entry->serial = (cxlmd)->cxlds->serial;				\
> +	    memcpy(&__entry->hdr_uuid, &(hdr).id, sizeof(uuid_t));		\
> +	    __entry->hdr_length = (hdr).length;					\
> +	    __entry->hdr_flags = get_unaligned_le24((hdr).flags);		\
> +	    __entry->hdr_handle = le16_to_cpu((hdr).handle);			\
> +	    __entry->hdr_related_handle = le16_to_cpu((hdr).related_handle);	\
> +	    __entry->hdr_timestamp = le64_to_cpu((hdr).timestamp);		\
> +	    __entry->hdr_maint_op_class = (hdr).maint_op_class;			\
> +	} while (0)
>  
>  #define CXL_EVT_TP_printk(fmt, ...) \
>  	TP_printk("memdev=%s host=%s serial=%lld log=%s : time=%llu uuid=%pUb "	\
Jeongtae Park Sept. 22, 2023, 9:26 a.m. UTC | #2
On Thu, Sep 21, 2023 at 03:58:26PM -0700, Dave Jiang wrote:
> 
> 
> On 9/20/23 19:51, Jeongtae Park wrote:
> > ERROR: Macros with complex values should be enclosed in parentheses
> > 
> > Signed-off-by: Jeongtae Park <jtp.park@samsung.com>
> 
> I think that goes against typical traceevent macros layout. I would ignore checkpatch warnings on traceevent stuff. 
> 
>

Ok, I see, I will drop this change.

> > ---
> >  drivers/cxl/core/trace.h | 24 +++++++++++++-----------
> >  1 file changed, 13 insertions(+), 11 deletions(-)
> > 
> > diff --git a/drivers/cxl/core/trace.h b/drivers/cxl/core/trace.h
> > index 7aee7fb008a5..e2338773dcd6 100644
> > --- a/drivers/cxl/core/trace.h
> > +++ b/drivers/cxl/core/trace.h
> > @@ -199,17 +199,19 @@ TRACE_EVENT(cxl_overflow,
> >  	__field(u8, hdr_maint_op_class)
> >  
> >  #define CXL_EVT_TP_fast_assign(cxlmd, l, hdr)					\
> > -	__assign_str(memdev, dev_name(&(cxlmd)->dev));				\
> > -	__assign_str(host, dev_name((cxlmd)->dev.parent));			\
> > -	__entry->log = (l);							\
> > -	__entry->serial = (cxlmd)->cxlds->serial;				\
> > -	memcpy(&__entry->hdr_uuid, &(hdr).id, sizeof(uuid_t));			\
> > -	__entry->hdr_length = (hdr).length;					\
> > -	__entry->hdr_flags = get_unaligned_le24((hdr).flags);			\
> > -	__entry->hdr_handle = le16_to_cpu((hdr).handle);			\
> > -	__entry->hdr_related_handle = le16_to_cpu((hdr).related_handle);	\
> > -	__entry->hdr_timestamp = le64_to_cpu((hdr).timestamp);			\
> > -	__entry->hdr_maint_op_class = (hdr).maint_op_class
> > +	do {									\
> > +	    __assign_str(memdev, dev_name(&(cxlmd)->dev));			\
> > +	    __assign_str(host, dev_name((cxlmd)->dev.parent));			\
> > +	    __entry->log = (l);							\
> > +	    __entry->serial = (cxlmd)->cxlds->serial;				\
> > +	    memcpy(&__entry->hdr_uuid, &(hdr).id, sizeof(uuid_t));		\
> > +	    __entry->hdr_length = (hdr).length;					\
> > +	    __entry->hdr_flags = get_unaligned_le24((hdr).flags);		\
> > +	    __entry->hdr_handle = le16_to_cpu((hdr).handle);			\
> > +	    __entry->hdr_related_handle = le16_to_cpu((hdr).related_handle);	\
> > +	    __entry->hdr_timestamp = le64_to_cpu((hdr).timestamp);		\
> > +	    __entry->hdr_maint_op_class = (hdr).maint_op_class;			\
> > +	} while (0)
> >  
> >  #define CXL_EVT_TP_printk(fmt, ...) \
> >  	TP_printk("memdev=%s host=%s serial=%lld log=%s : time=%llu uuid=%pUb "	\
diff mbox series

Patch

diff --git a/drivers/cxl/core/trace.h b/drivers/cxl/core/trace.h
index 7aee7fb008a5..e2338773dcd6 100644
--- a/drivers/cxl/core/trace.h
+++ b/drivers/cxl/core/trace.h
@@ -199,17 +199,19 @@  TRACE_EVENT(cxl_overflow,
 	__field(u8, hdr_maint_op_class)
 
 #define CXL_EVT_TP_fast_assign(cxlmd, l, hdr)					\
-	__assign_str(memdev, dev_name(&(cxlmd)->dev));				\
-	__assign_str(host, dev_name((cxlmd)->dev.parent));			\
-	__entry->log = (l);							\
-	__entry->serial = (cxlmd)->cxlds->serial;				\
-	memcpy(&__entry->hdr_uuid, &(hdr).id, sizeof(uuid_t));			\
-	__entry->hdr_length = (hdr).length;					\
-	__entry->hdr_flags = get_unaligned_le24((hdr).flags);			\
-	__entry->hdr_handle = le16_to_cpu((hdr).handle);			\
-	__entry->hdr_related_handle = le16_to_cpu((hdr).related_handle);	\
-	__entry->hdr_timestamp = le64_to_cpu((hdr).timestamp);			\
-	__entry->hdr_maint_op_class = (hdr).maint_op_class
+	do {									\
+	    __assign_str(memdev, dev_name(&(cxlmd)->dev));			\
+	    __assign_str(host, dev_name((cxlmd)->dev.parent));			\
+	    __entry->log = (l);							\
+	    __entry->serial = (cxlmd)->cxlds->serial;				\
+	    memcpy(&__entry->hdr_uuid, &(hdr).id, sizeof(uuid_t));		\
+	    __entry->hdr_length = (hdr).length;					\
+	    __entry->hdr_flags = get_unaligned_le24((hdr).flags);		\
+	    __entry->hdr_handle = le16_to_cpu((hdr).handle);			\
+	    __entry->hdr_related_handle = le16_to_cpu((hdr).related_handle);	\
+	    __entry->hdr_timestamp = le64_to_cpu((hdr).timestamp);		\
+	    __entry->hdr_maint_op_class = (hdr).maint_op_class;			\
+	} while (0)
 
 #define CXL_EVT_TP_printk(fmt, ...) \
 	TP_printk("memdev=%s host=%s serial=%lld log=%s : time=%llu uuid=%pUb "	\