Thread (1 message) 1 message, 1 author, 2025-12-22

Re: [External Mail]Re: [PATCH v8] dma-buf: add some tracepoints to debug.

From: Steven Rostedt <rostedt@goodmis.org>
Date: 2025-12-22 17:03:22
Also in: dri-devel, linux-media, lkml

On Mon, 22 Dec 2025 01:41:28 +0000
高翔 [off-list ref] wrote:
quoted
there was some whitespace issues with the macro.  
I check the patch with checkpatch.pl, couldn't find whitespace issues.
quoted
+DECLARE_EVENT_CLASS(dma_buf,
+
+     TP_PROTO(struct dma_buf *dmabuf),
+
+     TP_ARGS(dmabuf),
+
+     TP_STRUCT__entry(
+             __string(exp_name, dmabuf->exp_name)
+             __field(size_t, size)
+             __field(ino_t, ino)
+     ),
These don't follow checkpatch recommendations for whitespace, because they
are "special". Please update these to look more like a structure:

     TP_STRUCT__entry(
             __string(	exp_name,		dmabuf->exp_name)
             __field(	size_t,			size)
             __field(	ino_t,			ino)
     ),

quoted
+
+     TP_fast_assign(
+             __assign_str(exp_name);
+             __entry->size = dmabuf->size;
+             __entry->ino = dmabuf->file->f_inode->i_ino;
+     ),
+
+     TP_printk("exp_name=%s size=%zu ino=%lu",
+               __get_str(exp_name),
+               __entry->size,
+               __entry->ino)
+);
+
+DECLARE_EVENT_CLASS(dma_buf_attach_dev,
+
+     TP_PROTO(struct dma_buf *dmabuf, struct dma_buf_attachment *attach,
+             bool is_dynamic, struct device *dev),
+
+     TP_ARGS(dmabuf, attach, is_dynamic, dev),
+
+     TP_STRUCT__entry(
+             __string(dev_name, dev_name(dev))
+             __string(exp_name, dmabuf->exp_name)
+             __field(size_t, size)
+             __field(ino_t, ino)
+             __field(struct dma_buf_attachment *, attach)
+             __field(bool, is_dynamic)
+     ),
Same here too:

     TP_STRUCT__entry(
             __string(	dev_name,			dev_name(dev))
             __string(	exp_name,			dmabuf->exp_name)
             __field(	size_t,				size)
             __field(	ino_t,				ino)
             __field(	struct dma_buf_attachment *,	attach)
             __field(	bool,				is_dynamic)
     ),

quoted
+
+     TP_fast_assign(
+             __assign_str(dev_name);
+             __assign_str(exp_name);
+             __entry->size = dmabuf->size;
+             __entry->ino = dmabuf->file->f_inode->i_ino;
+             __entry->is_dynamic = is_dynamic;
+             __entry->attach = attach;
+     ),
+
+     TP_printk("exp_name=%s size=%zu ino=%lu attachment:%p is_dynamic=%d dev_name=%s",
+               __get_str(exp_name),
+               __entry->size,
+               __entry->ino,
+               __entry->attach,
+               __entry->is_dynamic,
+               __get_str(dev_name))
+);
+
+DECLARE_EVENT_CLASS(dma_buf_fd,
+
+     TP_PROTO(struct dma_buf *dmabuf, int fd),
+
+     TP_ARGS(dmabuf, fd),
+
+     TP_STRUCT__entry(
+             __string(exp_name, dmabuf->exp_name)
+             __field(size_t, size)
+             __field(ino_t, ino)
+             __field(int, fd)
+     ),
And the above.

-- Steve
quoted
+
+     TP_fast_assign(
+             __assign_str(exp_name);
+             __entry->size = dmabuf->size;
+             __entry->ino = dmabuf->file->f_inode->i_ino;
+             __entry->fd = fd;
+     ),
+
+     TP_printk("exp_name=%s size=%zu ino=%lu fd=%d",
+               __get_str(exp_name),
+               __entry->size,
+               __entry->ino,
+               __entry->fd)
+);
+
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help