linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] Add gpu memory tracepoints
@ 2020-02-13  0:32 zzyiwei
  2020-02-13  0:39 ` Yiwei Zhang
                   ` (3 more replies)
  0 siblings, 4 replies; 27+ messages in thread
From: zzyiwei @ 2020-02-13  0:32 UTC (permalink / raw)
  To: rostedt, mingo, gregkh, elder, federico.vaga, tony.luck,
	vilhelm.gray, linus.walleij, tglx, yamada.masahiro,
	paul.walmsley, linux-kernel
  Cc: prahladk, joelaf, android-kernel, Yiwei Zhang

From: Yiwei Zhang <zzyiwei@google.com>

This change adds the below gpu memory tracepoint:
gpu_mem/gpu_mem_total: track global or process gpu memory total counters

Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
---
 drivers/Kconfig                   |  2 +
 drivers/gpu/Makefile              |  1 +
 drivers/gpu/trace/Kconfig         |  4 ++
 drivers/gpu/trace/Makefile        |  3 ++
 drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
 include/trace/events/gpu_mem.h    | 64 +++++++++++++++++++++++++++++++
 6 files changed, 87 insertions(+)
 create mode 100644 drivers/gpu/trace/Kconfig
 create mode 100644 drivers/gpu/trace/Makefile
 create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
 create mode 100644 include/trace/events/gpu_mem.h

diff --git a/drivers/Kconfig b/drivers/Kconfig
index 8befa53f43be..e0eda1a5c3f9 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
 
 source "drivers/android/Kconfig"
 
+source "drivers/gpu/trace/Kconfig"
+
 source "drivers/nvdimm/Kconfig"
 
 source "drivers/dax/Kconfig"
diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
index f17d01f076c7..835c88318cec 100644
--- a/drivers/gpu/Makefile
+++ b/drivers/gpu/Makefile
@@ -5,3 +5,4 @@
 obj-$(CONFIG_TEGRA_HOST1X)	+= host1x/
 obj-y			+= drm/ vga/
 obj-$(CONFIG_IMX_IPUV3_CORE)	+= ipu-v3/
+obj-$(CONFIG_TRACE_GPU_MEM)		+= trace/
diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
new file mode 100644
index 000000000000..c24e9edd022e
--- /dev/null
+++ b/drivers/gpu/trace/Kconfig
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+config TRACE_GPU_MEM
+	bool
diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
new file mode 100644
index 000000000000..b70fbdc5847f
--- /dev/null
+++ b/drivers/gpu/trace/Makefile
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0
+
+obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
new file mode 100644
index 000000000000..01e855897b6d
--- /dev/null
+++ b/drivers/gpu/trace/trace_gpu_mem.c
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#include <linux/module.h>
+
+#define CREATE_TRACE_POINTS
+#include <trace/events/gpu_mem.h>
+
+EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
new file mode 100644
index 000000000000..3b632a2b5100
--- /dev/null
+++ b/include/trace/events/gpu_mem.h
@@ -0,0 +1,64 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#undef TRACE_SYSTEM
+#define TRACE_SYSTEM gpu_mem
+
+#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
+#define _TRACE_GPU_MEM_H
+
+#include <linux/tracepoint.h>
+
+/*
+ * The gpu_memory_total event indicates that there's an update to either the
+ * global or process total gpu memory counters.
+ *
+ * This event should be emitted whenever the kernel device driver allocates,
+ * frees, imports, unimports memory in the GPU addressable space.
+ *
+ * @gpu_id: This is the gpu id.
+ *
+ * @pid: Put 0 for global total, while positive pid for process total.
+ *
+ * @size: Virtual size of the allocation in bytes.
+ *
+ */
+TRACE_EVENT(gpu_mem_total,
+	TP_PROTO(
+		uint32_t gpu_id,
+		uint32_t pid,
+		uint64_t size
+	),
+	TP_ARGS(
+		gpu_id,
+		pid,
+		size
+	),
+	TP_STRUCT__entry(
+		__field(uint32_t, gpu_id)
+		__field(uint32_t, pid)
+		__field(uint64_t, size)
+	),
+	TP_fast_assign(
+		__entry->gpu_id = gpu_id;
+		__entry->pid = pid;
+		__entry->size = size;
+	),
+	TP_printk(
+		"gpu_id=%u "
+		"pid=%u "
+		"size=%llu",
+		__entry->gpu_id,
+		__entry->pid,
+		__entry->size
+	)
+);
+
+#endif /* _TRACE_GPU_MEM_H */
+
+/* This part must be outside protection */
+#include <trace/define_trace.h>
-- 
2.25.0.225.g125e21ebc7-goog


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v2] Add gpu memory tracepoints
  2020-02-13  0:32 [PATCH v2] Add gpu memory tracepoints zzyiwei
@ 2020-02-13  0:39 ` Yiwei Zhang
  2020-02-13  0:40 ` Greg KH
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 27+ messages in thread
From: Yiwei Zhang @ 2020-02-13  0:39 UTC (permalink / raw)
  To: Steven Rostedt, mingo, gregkh, elder, federico.vaga, tony.luck,
	vilhelm.gray, linus.walleij, tglx, yamada.masahiro,
	paul.walmsley, linux-kernel
  Cc: Prahlad Kilambi, Joel Fernandes, android-kernel

The context is here: https://lkml.org/lkml/2020/2/10/1903 and
https://lkml.org/lkml/2020/2/12/997

On Wed, Feb 12, 2020 at 4:33 PM <zzyiwei@google.com> wrote:
>
> From: Yiwei Zhang <zzyiwei@google.com>
>
> This change adds the below gpu memory tracepoint:
> gpu_mem/gpu_mem_total: track global or process gpu memory total counters
>
> Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
> ---
>  drivers/Kconfig                   |  2 +
>  drivers/gpu/Makefile              |  1 +
>  drivers/gpu/trace/Kconfig         |  4 ++
>  drivers/gpu/trace/Makefile        |  3 ++
>  drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
>  include/trace/events/gpu_mem.h    | 64 +++++++++++++++++++++++++++++++
>  6 files changed, 87 insertions(+)
>  create mode 100644 drivers/gpu/trace/Kconfig
>  create mode 100644 drivers/gpu/trace/Makefile
>  create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
>  create mode 100644 include/trace/events/gpu_mem.h
>
> diff --git a/drivers/Kconfig b/drivers/Kconfig
> index 8befa53f43be..e0eda1a5c3f9 100644
> --- a/drivers/Kconfig
> +++ b/drivers/Kconfig
> @@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
>
>  source "drivers/android/Kconfig"
>
> +source "drivers/gpu/trace/Kconfig"
> +
>  source "drivers/nvdimm/Kconfig"
>
>  source "drivers/dax/Kconfig"
> diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
> index f17d01f076c7..835c88318cec 100644
> --- a/drivers/gpu/Makefile
> +++ b/drivers/gpu/Makefile
> @@ -5,3 +5,4 @@
>  obj-$(CONFIG_TEGRA_HOST1X)     += host1x/
>  obj-y                  += drm/ vga/
>  obj-$(CONFIG_IMX_IPUV3_CORE)   += ipu-v3/
> +obj-$(CONFIG_TRACE_GPU_MEM)            += trace/
> diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
> new file mode 100644
> index 000000000000..c24e9edd022e
> --- /dev/null
> +++ b/drivers/gpu/trace/Kconfig
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +
> +config TRACE_GPU_MEM
> +       bool
> diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
> new file mode 100644
> index 000000000000..b70fbdc5847f
> --- /dev/null
> +++ b/drivers/gpu/trace/Makefile
> @@ -0,0 +1,3 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
> diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
> new file mode 100644
> index 000000000000..01e855897b6d
> --- /dev/null
> +++ b/drivers/gpu/trace/trace_gpu_mem.c
> @@ -0,0 +1,13 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#include <linux/module.h>
> +
> +#define CREATE_TRACE_POINTS
> +#include <trace/events/gpu_mem.h>
> +
> +EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
> diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> new file mode 100644
> index 000000000000..3b632a2b5100
> --- /dev/null
> +++ b/include/trace/events/gpu_mem.h
> @@ -0,0 +1,64 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM gpu_mem
> +
> +#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_GPU_MEM_H
> +
> +#include <linux/tracepoint.h>
> +
> +/*
> + * The gpu_memory_total event indicates that there's an update to either the
> + * global or process total gpu memory counters.
> + *
> + * This event should be emitted whenever the kernel device driver allocates,
> + * frees, imports, unimports memory in the GPU addressable space.
> + *
> + * @gpu_id: This is the gpu id.
> + *
> + * @pid: Put 0 for global total, while positive pid for process total.
> + *
> + * @size: Virtual size of the allocation in bytes.
> + *
> + */
> +TRACE_EVENT(gpu_mem_total,
> +       TP_PROTO(
> +               uint32_t gpu_id,
> +               uint32_t pid,
> +               uint64_t size
> +       ),
> +       TP_ARGS(
> +               gpu_id,
> +               pid,
> +               size
> +       ),
> +       TP_STRUCT__entry(
> +               __field(uint32_t, gpu_id)
> +               __field(uint32_t, pid)
> +               __field(uint64_t, size)
> +       ),
> +       TP_fast_assign(
> +               __entry->gpu_id = gpu_id;
> +               __entry->pid = pid;
> +               __entry->size = size;
> +       ),
> +       TP_printk(
> +               "gpu_id=%u "
> +               "pid=%u "
> +               "size=%llu",
> +               __entry->gpu_id,
> +               __entry->pid,
> +               __entry->size
> +       )
> +);
> +
> +#endif /* _TRACE_GPU_MEM_H */
> +
> +/* This part must be outside protection */
> +#include <trace/define_trace.h>
> --
> 2.25.0.225.g125e21ebc7-goog
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v2] Add gpu memory tracepoints
  2020-02-13  0:32 [PATCH v2] Add gpu memory tracepoints zzyiwei
  2020-02-13  0:39 ` Yiwei Zhang
@ 2020-02-13  0:40 ` Greg KH
  2020-02-13  1:23   ` Yiwei Zhang
  2020-02-13  1:48 ` Steven Rostedt
  2020-02-13  2:20 ` zzyiwei
  3 siblings, 1 reply; 27+ messages in thread
From: Greg KH @ 2020-02-13  0:40 UTC (permalink / raw)
  To: zzyiwei
  Cc: rostedt, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	linus.walleij, tglx, yamada.masahiro, paul.walmsley,
	linux-kernel, prahladk, joelaf, android-kernel

On Wed, Feb 12, 2020 at 04:32:59PM -0800, zzyiwei@google.com wrote:
> From: Yiwei Zhang <zzyiwei@google.com>
> 
> This change adds the below gpu memory tracepoint:
> gpu_mem/gpu_mem_total: track global or process gpu memory total counters
> 
> Signed-off-by: Yiwei Zhang <zzyiwei@google.com>

If this helps gpu drivers wean themselves off of debugfs, I am all for
it:
	Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Thanks for doing this.

greg k-h

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v2] Add gpu memory tracepoints
  2020-02-13  0:40 ` Greg KH
@ 2020-02-13  1:23   ` Yiwei Zhang
  0 siblings, 0 replies; 27+ messages in thread
From: Yiwei Zhang @ 2020-02-13  1:23 UTC (permalink / raw)
  To: Greg KH
  Cc: Steven Rostedt, mingo, elder, federico.vaga, tony.luck,
	vilhelm.gray, linus.walleij, tglx, yamada.masahiro,
	paul.walmsley, linux-kernel, Prahlad Kilambi, Joel Fernandes,
	android-kernel

Hi Greg,

Thanks for your prompt response!

For upstream drm gem based gfx drivers, the lower level device driver
layer is able to implement such per-process gpu memory total counters
but the common drm gem layer is probably not. At least the global
total gpu memory counter is fairly easy to implement, and then this
tracepoint can still be useful right away.

For Android, the debugfs has already been forced to be deprecated in
the coming Android 11 release. We have asked Android GPU vendors to
implement such global and per-process total memory counters. So they
can easily use this tracepoint inside the driver. This is mainly to
serve the profiling needs as well as the runtime query needs(by
attaching a eBPF program from userspace), and this patch helps
standardize the tracepoint in the kernel.

Many thanks!
Yiwei


On Wed, Feb 12, 2020 at 4:40 PM Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Wed, Feb 12, 2020 at 04:32:59PM -0800, zzyiwei@google.com wrote:
> > From: Yiwei Zhang <zzyiwei@google.com>
> >
> > This change adds the below gpu memory tracepoint:
> > gpu_mem/gpu_mem_total: track global or process gpu memory total counters
> >
> > Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
>
> If this helps gpu drivers wean themselves off of debugfs, I am all for
> it:
>         Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>
> Thanks for doing this.
>
> greg k-h

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v2] Add gpu memory tracepoints
  2020-02-13  0:32 [PATCH v2] Add gpu memory tracepoints zzyiwei
  2020-02-13  0:39 ` Yiwei Zhang
  2020-02-13  0:40 ` Greg KH
@ 2020-02-13  1:48 ` Steven Rostedt
  2020-02-13  2:20 ` zzyiwei
  3 siblings, 0 replies; 27+ messages in thread
From: Steven Rostedt @ 2020-02-13  1:48 UTC (permalink / raw)
  To: zzyiwei
  Cc: mingo, gregkh, elder, federico.vaga, tony.luck, vilhelm.gray,
	linus.walleij, tglx, yamada.masahiro, paul.walmsley,
	linux-kernel, prahladk, joelaf, android-kernel

On Wed, 12 Feb 2020 16:32:59 -0800
zzyiwei@google.com wrote:

> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM gpu_mem
> +
> +#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_GPU_MEM_H
> +
> +#include <linux/tracepoint.h>
> +
> +/*
> + * The gpu_memory_total event indicates that there's an update to either the
> + * global or process total gpu memory counters.
> + *
> + * This event should be emitted whenever the kernel device driver allocates,
> + * frees, imports, unimports memory in the GPU addressable space.
> + *
> + * @gpu_id: This is the gpu id.
> + *
> + * @pid: Put 0 for global total, while positive pid for process total.
> + *
> + * @size: Virtual size of the allocation in bytes.
> + *
> + */
> +TRACE_EVENT(gpu_mem_total,
> +	TP_PROTO(
> +		uint32_t gpu_id,
> +		uint32_t pid,
> +		uint64_t size
> +	),
> +	TP_ARGS(
> +		gpu_id,
> +		pid,
> +		size
> +	),

This is unique whitespace parsing. Usually, this would be:

	TP_PROTO(uint32_t gpu_id, unint32_t pid, uint64_t size),

	TP_ARGS(gpu_id, pid, size),

> +	TP_STRUCT__entry(
> +		__field(uint32_t, gpu_id)
> +		__field(uint32_t, pid)
> +		__field(uint64_t, size)
> +	),
> +	TP_fast_assign(
> +		__entry->gpu_id = gpu_id;
> +		__entry->pid = pid;
> +		__entry->size = size;
> +	),
> +	TP_printk(
> +		"gpu_id=%u "
> +		"pid=%u "
> +		"size=%llu",

Breaking up a string is frowned upon.

	TP_print("gpu_id=%u pid=$u size=%llu",
		 __entry->gpu_id,
		 __entry->pid,
		 __entry->size)

-- Steve

> +		__entry->gpu_id,
> +		__entry->pid,
> +		__entry->size
> +	)
> +);
> +
> +#endif /* _TRACE_GPU_MEM_H */
> +
> +/* This part must be outside protection */
> +#include <trace/define_trace.h>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v2] Add gpu memory tracepoints
  2020-02-13  0:32 [PATCH v2] Add gpu memory tracepoints zzyiwei
                   ` (2 preceding siblings ...)
  2020-02-13  1:48 ` Steven Rostedt
@ 2020-02-13  2:20 ` zzyiwei
  2020-02-13  2:24   ` Yiwei Zhang
  3 siblings, 1 reply; 27+ messages in thread
From: zzyiwei @ 2020-02-13  2:20 UTC (permalink / raw)
  To: rostedt, mingo, gregkh, elder, federico.vaga, tony.luck,
	vilhelm.gray, linus.walleij, tglx, yamada.masahiro,
	paul.walmsley, linux-kernel
  Cc: prahladk, joelaf, android-kernel, Yiwei Zhang

From: Yiwei Zhang <zzyiwei@google.com>

This change adds the below gpu memory tracepoint:
gpu_mem/gpu_mem_total: track global or process gpu memory total counters

Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
---
 drivers/Kconfig                   |  2 ++
 drivers/gpu/Makefile              |  1 +
 drivers/gpu/trace/Kconfig         |  4 +++
 drivers/gpu/trace/Makefile        |  3 ++
 drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
 include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
 6 files changed, 80 insertions(+)
 create mode 100644 drivers/gpu/trace/Kconfig
 create mode 100644 drivers/gpu/trace/Makefile
 create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
 create mode 100644 include/trace/events/gpu_mem.h

diff --git a/drivers/Kconfig b/drivers/Kconfig
index 8befa53f43be..e0eda1a5c3f9 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
 
 source "drivers/android/Kconfig"
 
+source "drivers/gpu/trace/Kconfig"
+
 source "drivers/nvdimm/Kconfig"
 
 source "drivers/dax/Kconfig"
diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
index f17d01f076c7..835c88318cec 100644
--- a/drivers/gpu/Makefile
+++ b/drivers/gpu/Makefile
@@ -5,3 +5,4 @@
 obj-$(CONFIG_TEGRA_HOST1X)	+= host1x/
 obj-y			+= drm/ vga/
 obj-$(CONFIG_IMX_IPUV3_CORE)	+= ipu-v3/
+obj-$(CONFIG_TRACE_GPU_MEM)		+= trace/
diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
new file mode 100644
index 000000000000..c24e9edd022e
--- /dev/null
+++ b/drivers/gpu/trace/Kconfig
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+config TRACE_GPU_MEM
+	bool
diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
new file mode 100644
index 000000000000..b70fbdc5847f
--- /dev/null
+++ b/drivers/gpu/trace/Makefile
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0
+
+obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
new file mode 100644
index 000000000000..01e855897b6d
--- /dev/null
+++ b/drivers/gpu/trace/trace_gpu_mem.c
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#include <linux/module.h>
+
+#define CREATE_TRACE_POINTS
+#include <trace/events/gpu_mem.h>
+
+EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
new file mode 100644
index 000000000000..1897822a9150
--- /dev/null
+++ b/include/trace/events/gpu_mem.h
@@ -0,0 +1,57 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#undef TRACE_SYSTEM
+#define TRACE_SYSTEM gpu_mem
+
+#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
+#define _TRACE_GPU_MEM_H
+
+#include <linux/tracepoint.h>
+
+/*
+ * The gpu_memory_total event indicates that there's an update to either the
+ * global or process total gpu memory counters.
+ *
+ * This event should be emitted whenever the kernel device driver allocates,
+ * frees, imports, unimports memory in the GPU addressable space.
+ *
+ * @gpu_id: This is the gpu id.
+ *
+ * @pid: Put 0 for global total, while positive pid for process total.
+ *
+ * @size: Virtual size of the allocation in bytes.
+ *
+ */
+TRACE_EVENT(gpu_mem_total,
+
+	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
+
+	TP_ARGS(gpu_id, pid, size),
+
+	TP_STRUCT__entry(
+		__field(uint32_t, gpu_id)
+		__field(uint32_t, pid)
+		__field(uint64_t, size)
+	),
+
+	TP_fast_assign(
+		__entry->gpu_id = gpu_id;
+		__entry->pid = pid;
+		__entry->size = size;
+	),
+
+	TP_printk("gpu_id=%u pid=%u size=%llu",
+		__entry->gpu_id,
+		__entry->pid,
+		__entry->size)
+);
+
+#endif /* _TRACE_GPU_MEM_H */
+
+/* This part must be outside protection */
+#include <trace/define_trace.h>
-- 
2.25.0.225.g125e21ebc7-goog


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v2] Add gpu memory tracepoints
  2020-02-13  2:20 ` zzyiwei
@ 2020-02-13  2:24   ` Yiwei Zhang
  2020-02-13  3:29     ` Steven Rostedt
  0 siblings, 1 reply; 27+ messages in thread
From: Yiwei Zhang @ 2020-02-13  2:24 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: Prahlad Kilambi, Joel Fernandes, android-kernel, yamada.masahiro,
	tglx, vilhelm.gray, tony.luck, federico.vaga, paul.walmsley,
	linux-kernel, elder, mingo, Greg KH, Linus Walleij

Hi Steven,

I'm not sure if my use of "in-reply-to" is correct. I can only find
the Message-Id of my original email from cmdline. but looks like the
diff shows up right.

Best,
Yiwei

On Wed, Feb 12, 2020 at 6:20 PM <zzyiwei@google.com> wrote:
>
> From: Yiwei Zhang <zzyiwei@google.com>
>
> This change adds the below gpu memory tracepoint:
> gpu_mem/gpu_mem_total: track global or process gpu memory total counters
>
> Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
> ---
>  drivers/Kconfig                   |  2 ++
>  drivers/gpu/Makefile              |  1 +
>  drivers/gpu/trace/Kconfig         |  4 +++
>  drivers/gpu/trace/Makefile        |  3 ++
>  drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
>  include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
>  6 files changed, 80 insertions(+)
>  create mode 100644 drivers/gpu/trace/Kconfig
>  create mode 100644 drivers/gpu/trace/Makefile
>  create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
>  create mode 100644 include/trace/events/gpu_mem.h
>
> diff --git a/drivers/Kconfig b/drivers/Kconfig
> index 8befa53f43be..e0eda1a5c3f9 100644
> --- a/drivers/Kconfig
> +++ b/drivers/Kconfig
> @@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
>
>  source "drivers/android/Kconfig"
>
> +source "drivers/gpu/trace/Kconfig"
> +
>  source "drivers/nvdimm/Kconfig"
>
>  source "drivers/dax/Kconfig"
> diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
> index f17d01f076c7..835c88318cec 100644
> --- a/drivers/gpu/Makefile
> +++ b/drivers/gpu/Makefile
> @@ -5,3 +5,4 @@
>  obj-$(CONFIG_TEGRA_HOST1X)     += host1x/
>  obj-y                  += drm/ vga/
>  obj-$(CONFIG_IMX_IPUV3_CORE)   += ipu-v3/
> +obj-$(CONFIG_TRACE_GPU_MEM)            += trace/
> diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
> new file mode 100644
> index 000000000000..c24e9edd022e
> --- /dev/null
> +++ b/drivers/gpu/trace/Kconfig
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +
> +config TRACE_GPU_MEM
> +       bool
> diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
> new file mode 100644
> index 000000000000..b70fbdc5847f
> --- /dev/null
> +++ b/drivers/gpu/trace/Makefile
> @@ -0,0 +1,3 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
> diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
> new file mode 100644
> index 000000000000..01e855897b6d
> --- /dev/null
> +++ b/drivers/gpu/trace/trace_gpu_mem.c
> @@ -0,0 +1,13 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#include <linux/module.h>
> +
> +#define CREATE_TRACE_POINTS
> +#include <trace/events/gpu_mem.h>
> +
> +EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
> diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> new file mode 100644
> index 000000000000..1897822a9150
> --- /dev/null
> +++ b/include/trace/events/gpu_mem.h
> @@ -0,0 +1,57 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM gpu_mem
> +
> +#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_GPU_MEM_H
> +
> +#include <linux/tracepoint.h>
> +
> +/*
> + * The gpu_memory_total event indicates that there's an update to either the
> + * global or process total gpu memory counters.
> + *
> + * This event should be emitted whenever the kernel device driver allocates,
> + * frees, imports, unimports memory in the GPU addressable space.
> + *
> + * @gpu_id: This is the gpu id.
> + *
> + * @pid: Put 0 for global total, while positive pid for process total.
> + *
> + * @size: Virtual size of the allocation in bytes.
> + *
> + */
> +TRACE_EVENT(gpu_mem_total,
> +
> +       TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
> +
> +       TP_ARGS(gpu_id, pid, size),
> +
> +       TP_STRUCT__entry(
> +               __field(uint32_t, gpu_id)
> +               __field(uint32_t, pid)
> +               __field(uint64_t, size)
> +       ),
> +
> +       TP_fast_assign(
> +               __entry->gpu_id = gpu_id;
> +               __entry->pid = pid;
> +               __entry->size = size;
> +       ),
> +
> +       TP_printk("gpu_id=%u pid=%u size=%llu",
> +               __entry->gpu_id,
> +               __entry->pid,
> +               __entry->size)
> +);
> +
> +#endif /* _TRACE_GPU_MEM_H */
> +
> +/* This part must be outside protection */
> +#include <trace/define_trace.h>
> --
> 2.25.0.225.g125e21ebc7-goog
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v2] Add gpu memory tracepoints
  2020-02-13  2:24   ` Yiwei Zhang
@ 2020-02-13  3:29     ` Steven Rostedt
  2020-02-13  4:23       ` [PATCH v3] gpu/trace: add " zzyiwei
  0 siblings, 1 reply; 27+ messages in thread
From: Steven Rostedt @ 2020-02-13  3:29 UTC (permalink / raw)
  To: Yiwei Zhang
  Cc: Prahlad Kilambi, Joel Fernandes, android-kernel, yamada.masahiro,
	tglx, vilhelm.gray, tony.luck, federico.vaga, paul.walmsley,
	linux-kernel, elder, mingo, Greg KH, Linus Walleij

On Wed, 12 Feb 2020 18:24:32 -0800
Yiwei Zhang <zzyiwei@google.com> wrote:

> Hi Steven,
> 
> I'm not sure if my use of "in-reply-to" is correct. I can only find
> the Message-Id of my original email from cmdline. but looks like the
> diff shows up right.

You mean this one?

  https://lore.kernel.org/lkml/20200213022020.142379-1-zzyiwei@google.com/

Looks fine, except I think you meant to make this v3. Also you may have
wanted to add a topic, "gpu/trace: "? to the subject. 

-- Steve

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v3] gpu/trace: add gpu memory tracepoints
  2020-02-13  3:29     ` Steven Rostedt
@ 2020-02-13  4:23       ` zzyiwei
  2020-02-13  4:27         ` Yiwei Zhang
  2020-02-13 14:03         ` Steven Rostedt
  0 siblings, 2 replies; 27+ messages in thread
From: zzyiwei @ 2020-02-13  4:23 UTC (permalink / raw)
  To: rostedt, linux-kernel; +Cc: prahladk, joelaf, android-kernel, Yiwei Zhang

From: Yiwei Zhang <zzyiwei@google.com>

This change adds the below gpu memory tracepoint:
gpu_mem/gpu_mem_total: track global or process gpu memory total counters

Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
---
 drivers/Kconfig                   |  2 ++
 drivers/gpu/Makefile              |  1 +
 drivers/gpu/trace/Kconfig         |  4 +++
 drivers/gpu/trace/Makefile        |  3 ++
 drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
 include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
 6 files changed, 80 insertions(+)
 create mode 100644 drivers/gpu/trace/Kconfig
 create mode 100644 drivers/gpu/trace/Makefile
 create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
 create mode 100644 include/trace/events/gpu_mem.h

diff --git a/drivers/Kconfig b/drivers/Kconfig
index 8befa53f43be..e0eda1a5c3f9 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
 
 source "drivers/android/Kconfig"
 
+source "drivers/gpu/trace/Kconfig"
+
 source "drivers/nvdimm/Kconfig"
 
 source "drivers/dax/Kconfig"
diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
index f17d01f076c7..835c88318cec 100644
--- a/drivers/gpu/Makefile
+++ b/drivers/gpu/Makefile
@@ -5,3 +5,4 @@
 obj-$(CONFIG_TEGRA_HOST1X)	+= host1x/
 obj-y			+= drm/ vga/
 obj-$(CONFIG_IMX_IPUV3_CORE)	+= ipu-v3/
+obj-$(CONFIG_TRACE_GPU_MEM)		+= trace/
diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
new file mode 100644
index 000000000000..c24e9edd022e
--- /dev/null
+++ b/drivers/gpu/trace/Kconfig
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+config TRACE_GPU_MEM
+	bool
diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
new file mode 100644
index 000000000000..b70fbdc5847f
--- /dev/null
+++ b/drivers/gpu/trace/Makefile
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0
+
+obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
new file mode 100644
index 000000000000..01e855897b6d
--- /dev/null
+++ b/drivers/gpu/trace/trace_gpu_mem.c
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#include <linux/module.h>
+
+#define CREATE_TRACE_POINTS
+#include <trace/events/gpu_mem.h>
+
+EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
new file mode 100644
index 000000000000..1897822a9150
--- /dev/null
+++ b/include/trace/events/gpu_mem.h
@@ -0,0 +1,57 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#undef TRACE_SYSTEM
+#define TRACE_SYSTEM gpu_mem
+
+#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
+#define _TRACE_GPU_MEM_H
+
+#include <linux/tracepoint.h>
+
+/*
+ * The gpu_memory_total event indicates that there's an update to either the
+ * global or process total gpu memory counters.
+ *
+ * This event should be emitted whenever the kernel device driver allocates,
+ * frees, imports, unimports memory in the GPU addressable space.
+ *
+ * @gpu_id: This is the gpu id.
+ *
+ * @pid: Put 0 for global total, while positive pid for process total.
+ *
+ * @size: Virtual size of the allocation in bytes.
+ *
+ */
+TRACE_EVENT(gpu_mem_total,
+
+	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
+
+	TP_ARGS(gpu_id, pid, size),
+
+	TP_STRUCT__entry(
+		__field(uint32_t, gpu_id)
+		__field(uint32_t, pid)
+		__field(uint64_t, size)
+	),
+
+	TP_fast_assign(
+		__entry->gpu_id = gpu_id;
+		__entry->pid = pid;
+		__entry->size = size;
+	),
+
+	TP_printk("gpu_id=%u pid=%u size=%llu",
+		__entry->gpu_id,
+		__entry->pid,
+		__entry->size)
+);
+
+#endif /* _TRACE_GPU_MEM_H */
+
+/* This part must be outside protection */
+#include <trace/define_trace.h>
-- 
2.25.0.225.g125e21ebc7-goog


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v3] gpu/trace: add gpu memory tracepoints
  2020-02-13  4:23       ` [PATCH v3] gpu/trace: add " zzyiwei
@ 2020-02-13  4:27         ` Yiwei Zhang
  2020-02-13 14:03         ` Steven Rostedt
  1 sibling, 0 replies; 27+ messages in thread
From: Yiwei Zhang @ 2020-02-13  4:27 UTC (permalink / raw)
  To: Steven Rostedt, linux-kernel
  Cc: Prahlad Kilambi, Joel Fernandes, android-kernel

Hi Steven,

Just update a v3 here with the gpu/trace: included in the subject
line. You might have received a spam v3 previously, which I forgot to
include linux-kernel@vger.kernel.org...sorry for the confusion.

Best,
Yiwei

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v3] gpu/trace: add gpu memory tracepoints
  2020-02-13  4:23       ` [PATCH v3] gpu/trace: add " zzyiwei
  2020-02-13  4:27         ` Yiwei Zhang
@ 2020-02-13 14:03         ` Steven Rostedt
  2020-02-13 17:49           ` Yiwei Zhang
  1 sibling, 1 reply; 27+ messages in thread
From: Steven Rostedt @ 2020-02-13 14:03 UTC (permalink / raw)
  To: zzyiwei; +Cc: linux-kernel, prahladk, joelaf, android-kernel


Hi Yiwei,

You left off a lot of people that you Cc'd for the previous versions.
You'll need at least Greg's acked-by on this, and perhaps even others
that own the gpu directory.

-- Steve


On Wed, 12 Feb 2020 20:23:31 -0800
zzyiwei@google.com wrote:

> From: Yiwei Zhang <zzyiwei@google.com>
> 
> This change adds the below gpu memory tracepoint:
> gpu_mem/gpu_mem_total: track global or process gpu memory total counters
> 
> Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
> ---
>  drivers/Kconfig                   |  2 ++
>  drivers/gpu/Makefile              |  1 +
>  drivers/gpu/trace/Kconfig         |  4 +++
>  drivers/gpu/trace/Makefile        |  3 ++
>  drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
>  include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
>  6 files changed, 80 insertions(+)
>  create mode 100644 drivers/gpu/trace/Kconfig
>  create mode 100644 drivers/gpu/trace/Makefile
>  create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
>  create mode 100644 include/trace/events/gpu_mem.h
> 
> diff --git a/drivers/Kconfig b/drivers/Kconfig
> index 8befa53f43be..e0eda1a5c3f9 100644
> --- a/drivers/Kconfig
> +++ b/drivers/Kconfig
> @@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
>  
>  source "drivers/android/Kconfig"
>  
> +source "drivers/gpu/trace/Kconfig"
> +
>  source "drivers/nvdimm/Kconfig"
>  
>  source "drivers/dax/Kconfig"
> diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
> index f17d01f076c7..835c88318cec 100644
> --- a/drivers/gpu/Makefile
> +++ b/drivers/gpu/Makefile
> @@ -5,3 +5,4 @@
>  obj-$(CONFIG_TEGRA_HOST1X)	+= host1x/
>  obj-y			+= drm/ vga/
>  obj-$(CONFIG_IMX_IPUV3_CORE)	+= ipu-v3/
> +obj-$(CONFIG_TRACE_GPU_MEM)		+= trace/
> diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
> new file mode 100644
> index 000000000000..c24e9edd022e
> --- /dev/null
> +++ b/drivers/gpu/trace/Kconfig
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +
> +config TRACE_GPU_MEM
> +	bool
> diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
> new file mode 100644
> index 000000000000..b70fbdc5847f
> --- /dev/null
> +++ b/drivers/gpu/trace/Makefile
> @@ -0,0 +1,3 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
> diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
> new file mode 100644
> index 000000000000..01e855897b6d
> --- /dev/null
> +++ b/drivers/gpu/trace/trace_gpu_mem.c
> @@ -0,0 +1,13 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#include <linux/module.h>
> +
> +#define CREATE_TRACE_POINTS
> +#include <trace/events/gpu_mem.h>
> +
> +EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
> diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> new file mode 100644
> index 000000000000..1897822a9150
> --- /dev/null
> +++ b/include/trace/events/gpu_mem.h
> @@ -0,0 +1,57 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM gpu_mem
> +
> +#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_GPU_MEM_H
> +
> +#include <linux/tracepoint.h>
> +
> +/*
> + * The gpu_memory_total event indicates that there's an update to either the
> + * global or process total gpu memory counters.
> + *
> + * This event should be emitted whenever the kernel device driver allocates,
> + * frees, imports, unimports memory in the GPU addressable space.
> + *
> + * @gpu_id: This is the gpu id.
> + *
> + * @pid: Put 0 for global total, while positive pid for process total.
> + *
> + * @size: Virtual size of the allocation in bytes.
> + *
> + */
> +TRACE_EVENT(gpu_mem_total,
> +
> +	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
> +
> +	TP_ARGS(gpu_id, pid, size),
> +
> +	TP_STRUCT__entry(
> +		__field(uint32_t, gpu_id)
> +		__field(uint32_t, pid)
> +		__field(uint64_t, size)
> +	),
> +
> +	TP_fast_assign(
> +		__entry->gpu_id = gpu_id;
> +		__entry->pid = pid;
> +		__entry->size = size;
> +	),
> +
> +	TP_printk("gpu_id=%u pid=%u size=%llu",
> +		__entry->gpu_id,
> +		__entry->pid,
> +		__entry->size)
> +);
> +
> +#endif /* _TRACE_GPU_MEM_H */
> +
> +/* This part must be outside protection */
> +#include <trace/define_trace.h>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v3] gpu/trace: add gpu memory tracepoints
  2020-02-13 14:03         ` Steven Rostedt
@ 2020-02-13 17:49           ` Yiwei Zhang
  2020-02-24  6:31             ` Yiwei Zhang
  0 siblings, 1 reply; 27+ messages in thread
From: Yiwei Zhang @ 2020-02-13 17:49 UTC (permalink / raw)
  To: Steven Rostedt, mingo, Greg KH, elder, federico.vaga, tony.luck,
	vilhelm.gray, Linus Walleij, tglx, yamada.masahiro,
	paul.walmsley
  Cc: linux-kernel, Prahlad Kilambi, Joel Fernandes, android-kernel

Hi folks,

This [PATCH v3] just re-format the tracepoint definition and update
the subject line. Please take another look. Many thanks!

Best,
Yiwei

On Thu, Feb 13, 2020 at 6:03 AM Steven Rostedt <rostedt@goodmis.org> wrote:
>
>
> Hi Yiwei,
>
> You left off a lot of people that you Cc'd for the previous versions.
> You'll need at least Greg's acked-by on this, and perhaps even others
> that own the gpu directory.
>
> -- Steve
>
>
> On Wed, 12 Feb 2020 20:23:31 -0800
> zzyiwei@google.com wrote:
>
> > From: Yiwei Zhang <zzyiwei@google.com>
> >
> > This change adds the below gpu memory tracepoint:
> > gpu_mem/gpu_mem_total: track global or process gpu memory total counters
> >
> > Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
> > ---
> >  drivers/Kconfig                   |  2 ++
> >  drivers/gpu/Makefile              |  1 +
> >  drivers/gpu/trace/Kconfig         |  4 +++
> >  drivers/gpu/trace/Makefile        |  3 ++
> >  drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
> >  include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
> >  6 files changed, 80 insertions(+)
> >  create mode 100644 drivers/gpu/trace/Kconfig
> >  create mode 100644 drivers/gpu/trace/Makefile
> >  create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
> >  create mode 100644 include/trace/events/gpu_mem.h
> >
> > diff --git a/drivers/Kconfig b/drivers/Kconfig
> > index 8befa53f43be..e0eda1a5c3f9 100644
> > --- a/drivers/Kconfig
> > +++ b/drivers/Kconfig
> > @@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
> >
> >  source "drivers/android/Kconfig"
> >
> > +source "drivers/gpu/trace/Kconfig"
> > +
> >  source "drivers/nvdimm/Kconfig"
> >
> >  source "drivers/dax/Kconfig"
> > diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
> > index f17d01f076c7..835c88318cec 100644
> > --- a/drivers/gpu/Makefile
> > +++ b/drivers/gpu/Makefile
> > @@ -5,3 +5,4 @@
> >  obj-$(CONFIG_TEGRA_HOST1X)   += host1x/
> >  obj-y                        += drm/ vga/
> >  obj-$(CONFIG_IMX_IPUV3_CORE) += ipu-v3/
> > +obj-$(CONFIG_TRACE_GPU_MEM)          += trace/
> > diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
> > new file mode 100644
> > index 000000000000..c24e9edd022e
> > --- /dev/null
> > +++ b/drivers/gpu/trace/Kconfig
> > @@ -0,0 +1,4 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > +
> > +config TRACE_GPU_MEM
> > +     bool
> > diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
> > new file mode 100644
> > index 000000000000..b70fbdc5847f
> > --- /dev/null
> > +++ b/drivers/gpu/trace/Makefile
> > @@ -0,0 +1,3 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +
> > +obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
> > diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
> > new file mode 100644
> > index 000000000000..01e855897b6d
> > --- /dev/null
> > +++ b/drivers/gpu/trace/trace_gpu_mem.c
> > @@ -0,0 +1,13 @@
> > +// SPDX-License-Identifier: GPL-2.0
> > +/*
> > + * GPU memory trace points
> > + *
> > + * Copyright (C) 2020 Google, Inc.
> > + */
> > +
> > +#include <linux/module.h>
> > +
> > +#define CREATE_TRACE_POINTS
> > +#include <trace/events/gpu_mem.h>
> > +
> > +EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
> > diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> > new file mode 100644
> > index 000000000000..1897822a9150
> > --- /dev/null
> > +++ b/include/trace/events/gpu_mem.h
> > @@ -0,0 +1,57 @@
> > +/* SPDX-License-Identifier: GPL-2.0 */
> > +/*
> > + * GPU memory trace points
> > + *
> > + * Copyright (C) 2020 Google, Inc.
> > + */
> > +
> > +#undef TRACE_SYSTEM
> > +#define TRACE_SYSTEM gpu_mem
> > +
> > +#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
> > +#define _TRACE_GPU_MEM_H
> > +
> > +#include <linux/tracepoint.h>
> > +
> > +/*
> > + * The gpu_memory_total event indicates that there's an update to either the
> > + * global or process total gpu memory counters.
> > + *
> > + * This event should be emitted whenever the kernel device driver allocates,
> > + * frees, imports, unimports memory in the GPU addressable space.
> > + *
> > + * @gpu_id: This is the gpu id.
> > + *
> > + * @pid: Put 0 for global total, while positive pid for process total.
> > + *
> > + * @size: Virtual size of the allocation in bytes.
> > + *
> > + */
> > +TRACE_EVENT(gpu_mem_total,
> > +
> > +     TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
> > +
> > +     TP_ARGS(gpu_id, pid, size),
> > +
> > +     TP_STRUCT__entry(
> > +             __field(uint32_t, gpu_id)
> > +             __field(uint32_t, pid)
> > +             __field(uint64_t, size)
> > +     ),
> > +
> > +     TP_fast_assign(
> > +             __entry->gpu_id = gpu_id;
> > +             __entry->pid = pid;
> > +             __entry->size = size;
> > +     ),
> > +
> > +     TP_printk("gpu_id=%u pid=%u size=%llu",
> > +             __entry->gpu_id,
> > +             __entry->pid,
> > +             __entry->size)
> > +);
> > +
> > +#endif /* _TRACE_GPU_MEM_H */
> > +
> > +/* This part must be outside protection */
> > +#include <trace/define_trace.h>
>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v3] gpu/trace: add gpu memory tracepoints
  2020-02-13 17:49           ` Yiwei Zhang
@ 2020-02-24  6:31             ` Yiwei Zhang
  2020-02-24 16:38               ` Steven Rostedt
  0 siblings, 1 reply; 27+ messages in thread
From: Yiwei Zhang @ 2020-02-24  6:31 UTC (permalink / raw)
  To: Steven Rostedt, mingo, Greg KH, elder, federico.vaga, tony.luck,
	vilhelm.gray, Linus Walleij, tglx, yamada.masahiro,
	paul.walmsley
  Cc: linux-kernel, Prahlad Kilambi, Joel Fernandes, android-kernel

Dear gpu and tracing owners,

It's been a while and this is just a gentle and friendly re-ping for
review of this small patch.

Many many thanks!
Yiwei

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v3] gpu/trace: add gpu memory tracepoints
  2020-02-24  6:31             ` Yiwei Zhang
@ 2020-02-24 16:38               ` Steven Rostedt
  2020-03-01  0:53                 ` Yiwei Zhang
  0 siblings, 1 reply; 27+ messages in thread
From: Steven Rostedt @ 2020-02-24 16:38 UTC (permalink / raw)
  To: Yiwei Zhang
  Cc: mingo, Greg KH, elder, federico.vaga, tony.luck, vilhelm.gray,
	Linus Walleij, tglx, yamada.masahiro, paul.walmsley,
	linux-kernel, Prahlad Kilambi, Joel Fernandes, android-kernel

On Sun, 23 Feb 2020 22:31:11 -0800
Yiwei Zhang <zzyiwei@google.com> wrote:

> Dear gpu and tracing owners,
> 
> It's been a while and this is just a gentle and friendly re-ping for
> review of this small patch.

I guess the question is what tree should this go through. I usually
only take tracing infrastructure changes and leave topic specific
tracing for those that maintain the topics.

I'm fine with taking this through my tree if I get a bunch of
acked/reviewed by from other maintainers.

-- Steve


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v3] gpu/trace: add gpu memory tracepoints
  2020-02-24 16:38               ` Steven Rostedt
@ 2020-03-01  0:53                 ` Yiwei Zhang
  2020-03-02 23:48                   ` [PATCH] [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint zzyiwei
  2020-03-02 23:50                   ` zzyiwei
  0 siblings, 2 replies; 27+ messages in thread
From: Yiwei Zhang @ 2020-03-01  0:53 UTC (permalink / raw)
  To: Greg KH, yamada.masahiro, elder, federico.vaga, tony.luck,
	vilhelm.gray, Linus Walleij, tglx, paul.walmsley, linux-kernel
  Cc: Steven Rostedt, mingo, Prahlad Kilambi, Joel Fernandes, android-kernel

On Mon, Feb 24, 2020 at 8:38 AM Steven Rostedt <rostedt@goodmis.org> wrote:
>
> On Sun, 23 Feb 2020 22:31:11 -0800
> Yiwei Zhang <zzyiwei@google.com> wrote:
>
> > Dear gpu and tracing owners,
> >
> > It's been a while and this is just a gentle and friendly re-ping for
> > review of this small patch.
>
> I guess the question is what tree should this go through. I usually
> only take tracing infrastructure changes and leave topic specific
> tracing for those that maintain the topics.
>
> I'm fine with taking this through my tree if I get a bunch of
> acked/reviewed by from other maintainers.
>
> -- Steve
>

Hi GPU directory owners/maintainers,

Given Steve's reply, could you guys help review and ack this tiny
patch? This is a friendly re-ping since it's been more than 2 weeks
without any response from gpu directory folks. The patchset v2 was
ack'ed by Greg(gregkh@), and this v3 patch only has format updates.
Please take another look. Many many thanks!

Best regards,
Yiwei

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH] [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-01  0:53                 ` Yiwei Zhang
@ 2020-03-02 23:48                   ` zzyiwei
  2020-03-02 23:56                     ` Yiwei Zhang
  2020-03-02 23:50                   ` zzyiwei
  1 sibling, 1 reply; 27+ messages in thread
From: zzyiwei @ 2020-03-02 23:48 UTC (permalink / raw)
  To: rostedt, mingo, gregkh, elder, federico.vaga, tony.luck,
	vilhelm.gray, linus.walleij, tglx, yamada.masahiro,
	paul.walmsley, bhelgaas, darekm, ndesaulniers, joelaf,
	linux-kernel
  Cc: prahladk, android-kernel, Yiwei Zhang

From: Yiwei Zhang <zzyiwei@google.com>

This change adds the below gpu memory tracepoint:
gpu_mem/gpu_mem_total: track global or proc gpu memory total usages

Per process tracking of total gpu memory usage in the gem layer is not
appropriate and hard to implement with trivial overhead. So for the gfx
device driver layer to track total gpu memory usage both globally and
per process in an easy and uniform way is to integrate the tracepoint in
this patch to the underlying varied implementations of gpu memory
tracking system from vendors.

Putting this tracepoint in the common trace events can not only help
wean the gfx drivers off of debugfs but also greatly help the downstream
Android gpu vendors because debugfs is to be deprecated in the upcoming
Android release. Then the gpu memory tracking of both Android kernel and
the upstream linux kernel can stay closely, which can benefit the whole
kernel eco-system in the long term.

Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
---
 drivers/Kconfig                   |  2 ++
 drivers/gpu/Makefile              |  1 +
 drivers/gpu/trace/Kconfig         |  4 +++
 drivers/gpu/trace/Makefile        |  3 ++
 drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
 include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
 6 files changed, 80 insertions(+)
 create mode 100644 drivers/gpu/trace/Kconfig
 create mode 100644 drivers/gpu/trace/Makefile
 create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
 create mode 100644 include/trace/events/gpu_mem.h

diff --git a/drivers/Kconfig b/drivers/Kconfig
index 8befa53f43be..e0eda1a5c3f9 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
 
 source "drivers/android/Kconfig"
 
+source "drivers/gpu/trace/Kconfig"
+
 source "drivers/nvdimm/Kconfig"
 
 source "drivers/dax/Kconfig"
diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
index f17d01f076c7..835c88318cec 100644
--- a/drivers/gpu/Makefile
+++ b/drivers/gpu/Makefile
@@ -5,3 +5,4 @@
 obj-$(CONFIG_TEGRA_HOST1X)	+= host1x/
 obj-y			+= drm/ vga/
 obj-$(CONFIG_IMX_IPUV3_CORE)	+= ipu-v3/
+obj-$(CONFIG_TRACE_GPU_MEM)		+= trace/
diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
new file mode 100644
index 000000000000..c24e9edd022e
--- /dev/null
+++ b/drivers/gpu/trace/Kconfig
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+config TRACE_GPU_MEM
+	bool
diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
new file mode 100644
index 000000000000..b70fbdc5847f
--- /dev/null
+++ b/drivers/gpu/trace/Makefile
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0
+
+obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
new file mode 100644
index 000000000000..01e855897b6d
--- /dev/null
+++ b/drivers/gpu/trace/trace_gpu_mem.c
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#include <linux/module.h>
+
+#define CREATE_TRACE_POINTS
+#include <trace/events/gpu_mem.h>
+
+EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
new file mode 100644
index 000000000000..1897822a9150
--- /dev/null
+++ b/include/trace/events/gpu_mem.h
@@ -0,0 +1,57 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#undef TRACE_SYSTEM
+#define TRACE_SYSTEM gpu_mem
+
+#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
+#define _TRACE_GPU_MEM_H
+
+#include <linux/tracepoint.h>
+
+/*
+ * The gpu_memory_total event indicates that there's an update to either the
+ * global or process total gpu memory counters.
+ *
+ * This event should be emitted whenever the kernel device driver allocates,
+ * frees, imports, unimports memory in the GPU addressable space.
+ *
+ * @gpu_id: This is the gpu id.
+ *
+ * @pid: Put 0 for global total, while positive pid for process total.
+ *
+ * @size: Virtual size of the allocation in bytes.
+ *
+ */
+TRACE_EVENT(gpu_mem_total,
+
+	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
+
+	TP_ARGS(gpu_id, pid, size),
+
+	TP_STRUCT__entry(
+		__field(uint32_t, gpu_id)
+		__field(uint32_t, pid)
+		__field(uint64_t, size)
+	),
+
+	TP_fast_assign(
+		__entry->gpu_id = gpu_id;
+		__entry->pid = pid;
+		__entry->size = size;
+	),
+
+	TP_printk("gpu_id=%u pid=%u size=%llu",
+		__entry->gpu_id,
+		__entry->pid,
+		__entry->size)
+);
+
+#endif /* _TRACE_GPU_MEM_H */
+
+/* This part must be outside protection */
+#include <trace/define_trace.h>
-- 
2.25.0.265.gbab2e86ba0-goog


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-01  0:53                 ` Yiwei Zhang
  2020-03-02 23:48                   ` [PATCH] [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint zzyiwei
@ 2020-03-02 23:50                   ` zzyiwei
  2020-03-03 14:07                     ` Steven Rostedt
  1 sibling, 1 reply; 27+ messages in thread
From: zzyiwei @ 2020-03-02 23:50 UTC (permalink / raw)
  To: rostedt, mingo, gregkh, elder, federico.vaga, tony.luck,
	vilhelm.gray, linus.walleij, tglx, yamada.masahiro,
	paul.walmsley, bhelgaas, darekm, ndesaulniers, joelaf,
	linux-kernel
  Cc: prahladk, android-kernel, Yiwei Zhang

From: Yiwei Zhang <zzyiwei@google.com>

This change adds the below gpu memory tracepoint:
gpu_mem/gpu_mem_total: track global or proc gpu memory total usages

Per process tracking of total gpu memory usage in the gem layer is not
appropriate and hard to implement with trivial overhead. So for the gfx
device driver layer to track total gpu memory usage both globally and
per process in an easy and uniform way is to integrate the tracepoint in
this patch to the underlying varied implementations of gpu memory
tracking system from vendors.

Putting this tracepoint in the common trace events can not only help
wean the gfx drivers off of debugfs but also greatly help the downstream
Android gpu vendors because debugfs is to be deprecated in the upcoming
Android release. Then the gpu memory tracking of both Android kernel and
the upstream linux kernel can stay closely, which can benefit the whole
kernel eco-system in the long term.

Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
---
 drivers/Kconfig                   |  2 ++
 drivers/gpu/Makefile              |  1 +
 drivers/gpu/trace/Kconfig         |  4 +++
 drivers/gpu/trace/Makefile        |  3 ++
 drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
 include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
 6 files changed, 80 insertions(+)
 create mode 100644 drivers/gpu/trace/Kconfig
 create mode 100644 drivers/gpu/trace/Makefile
 create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
 create mode 100644 include/trace/events/gpu_mem.h

diff --git a/drivers/Kconfig b/drivers/Kconfig
index 8befa53f43be..e0eda1a5c3f9 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
 
 source "drivers/android/Kconfig"
 
+source "drivers/gpu/trace/Kconfig"
+
 source "drivers/nvdimm/Kconfig"
 
 source "drivers/dax/Kconfig"
diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
index f17d01f076c7..835c88318cec 100644
--- a/drivers/gpu/Makefile
+++ b/drivers/gpu/Makefile
@@ -5,3 +5,4 @@
 obj-$(CONFIG_TEGRA_HOST1X)	+= host1x/
 obj-y			+= drm/ vga/
 obj-$(CONFIG_IMX_IPUV3_CORE)	+= ipu-v3/
+obj-$(CONFIG_TRACE_GPU_MEM)		+= trace/
diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
new file mode 100644
index 000000000000..c24e9edd022e
--- /dev/null
+++ b/drivers/gpu/trace/Kconfig
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+config TRACE_GPU_MEM
+	bool
diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
new file mode 100644
index 000000000000..b70fbdc5847f
--- /dev/null
+++ b/drivers/gpu/trace/Makefile
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0
+
+obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
new file mode 100644
index 000000000000..01e855897b6d
--- /dev/null
+++ b/drivers/gpu/trace/trace_gpu_mem.c
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#include <linux/module.h>
+
+#define CREATE_TRACE_POINTS
+#include <trace/events/gpu_mem.h>
+
+EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
new file mode 100644
index 000000000000..1897822a9150
--- /dev/null
+++ b/include/trace/events/gpu_mem.h
@@ -0,0 +1,57 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * GPU memory trace points
+ *
+ * Copyright (C) 2020 Google, Inc.
+ */
+
+#undef TRACE_SYSTEM
+#define TRACE_SYSTEM gpu_mem
+
+#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
+#define _TRACE_GPU_MEM_H
+
+#include <linux/tracepoint.h>
+
+/*
+ * The gpu_memory_total event indicates that there's an update to either the
+ * global or process total gpu memory counters.
+ *
+ * This event should be emitted whenever the kernel device driver allocates,
+ * frees, imports, unimports memory in the GPU addressable space.
+ *
+ * @gpu_id: This is the gpu id.
+ *
+ * @pid: Put 0 for global total, while positive pid for process total.
+ *
+ * @size: Virtual size of the allocation in bytes.
+ *
+ */
+TRACE_EVENT(gpu_mem_total,
+
+	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
+
+	TP_ARGS(gpu_id, pid, size),
+
+	TP_STRUCT__entry(
+		__field(uint32_t, gpu_id)
+		__field(uint32_t, pid)
+		__field(uint64_t, size)
+	),
+
+	TP_fast_assign(
+		__entry->gpu_id = gpu_id;
+		__entry->pid = pid;
+		__entry->size = size;
+	),
+
+	TP_printk("gpu_id=%u pid=%u size=%llu",
+		__entry->gpu_id,
+		__entry->pid,
+		__entry->size)
+);
+
+#endif /* _TRACE_GPU_MEM_H */
+
+/* This part must be outside protection */
+#include <trace/define_trace.h>
-- 
2.25.0.265.gbab2e86ba0-goog


^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH] [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-02 23:48                   ` [PATCH] [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint zzyiwei
@ 2020-03-02 23:56                     ` Yiwei Zhang
  0 siblings, 0 replies; 27+ messages in thread
From: Yiwei Zhang @ 2020-03-02 23:56 UTC (permalink / raw)
  To: Steven Rostedt, mingo, Greg KH, elder, federico.vaga, tony.luck,
	vilhelm.gray, Linus Walleij, tglx, yamada.masahiro,
	paul.walmsley, bhelgaas, darekm, Nick Desaulniers,
	Joel Fernandes, linux-kernel
  Cc: Prahlad Kilambi, android-kernel

Sorry for the noise here, there's a duplicate "[PATCH]" in the subject
line. Please refer to this one instead:
https://lkml.org/lkml/2020/3/2/1181

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-02 23:50                   ` zzyiwei
@ 2020-03-03 14:07                     ` Steven Rostedt
  2020-03-03 14:15                       ` Greg KH
  0 siblings, 1 reply; 27+ messages in thread
From: Steven Rostedt @ 2020-03-03 14:07 UTC (permalink / raw)
  To: gregkh
  Cc: zzyiwei, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	linus.walleij, tglx, yamada.masahiro, paul.walmsley, bhelgaas,
	darekm, ndesaulniers, joelaf, linux-kernel, prahladk,
	android-kernel


Greg,

You acked this patch before, did you want to ack it again, and I'll take it
in my tree?

-- Steve

On Mon,  2 Mar 2020 15:50:44 -0800
zzyiwei@google.com wrote:

> From: Yiwei Zhang <zzyiwei@google.com>
> 
> This change adds the below gpu memory tracepoint:
> gpu_mem/gpu_mem_total: track global or proc gpu memory total usages
> 
> Per process tracking of total gpu memory usage in the gem layer is not
> appropriate and hard to implement with trivial overhead. So for the gfx
> device driver layer to track total gpu memory usage both globally and
> per process in an easy and uniform way is to integrate the tracepoint in
> this patch to the underlying varied implementations of gpu memory
> tracking system from vendors.
> 
> Putting this tracepoint in the common trace events can not only help
> wean the gfx drivers off of debugfs but also greatly help the downstream
> Android gpu vendors because debugfs is to be deprecated in the upcoming
> Android release. Then the gpu memory tracking of both Android kernel and
> the upstream linux kernel can stay closely, which can benefit the whole
> kernel eco-system in the long term.
> 
> Signed-off-by: Yiwei Zhang <zzyiwei@google.com>
> ---
>  drivers/Kconfig                   |  2 ++
>  drivers/gpu/Makefile              |  1 +
>  drivers/gpu/trace/Kconfig         |  4 +++
>  drivers/gpu/trace/Makefile        |  3 ++
>  drivers/gpu/trace/trace_gpu_mem.c | 13 +++++++
>  include/trace/events/gpu_mem.h    | 57 +++++++++++++++++++++++++++++++
>  6 files changed, 80 insertions(+)
>  create mode 100644 drivers/gpu/trace/Kconfig
>  create mode 100644 drivers/gpu/trace/Makefile
>  create mode 100644 drivers/gpu/trace/trace_gpu_mem.c
>  create mode 100644 include/trace/events/gpu_mem.h
> 
> diff --git a/drivers/Kconfig b/drivers/Kconfig
> index 8befa53f43be..e0eda1a5c3f9 100644
> --- a/drivers/Kconfig
> +++ b/drivers/Kconfig
> @@ -200,6 +200,8 @@ source "drivers/thunderbolt/Kconfig"
>  
>  source "drivers/android/Kconfig"
>  
> +source "drivers/gpu/trace/Kconfig"
> +
>  source "drivers/nvdimm/Kconfig"
>  
>  source "drivers/dax/Kconfig"
> diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
> index f17d01f076c7..835c88318cec 100644
> --- a/drivers/gpu/Makefile
> +++ b/drivers/gpu/Makefile
> @@ -5,3 +5,4 @@
>  obj-$(CONFIG_TEGRA_HOST1X)	+= host1x/
>  obj-y			+= drm/ vga/
>  obj-$(CONFIG_IMX_IPUV3_CORE)	+= ipu-v3/
> +obj-$(CONFIG_TRACE_GPU_MEM)		+= trace/
> diff --git a/drivers/gpu/trace/Kconfig b/drivers/gpu/trace/Kconfig
> new file mode 100644
> index 000000000000..c24e9edd022e
> --- /dev/null
> +++ b/drivers/gpu/trace/Kconfig
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +
> +config TRACE_GPU_MEM
> +	bool
> diff --git a/drivers/gpu/trace/Makefile b/drivers/gpu/trace/Makefile
> new file mode 100644
> index 000000000000..b70fbdc5847f
> --- /dev/null
> +++ b/drivers/gpu/trace/Makefile
> @@ -0,0 +1,3 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +obj-$(CONFIG_TRACE_GPU_MEM) += trace_gpu_mem.o
> diff --git a/drivers/gpu/trace/trace_gpu_mem.c b/drivers/gpu/trace/trace_gpu_mem.c
> new file mode 100644
> index 000000000000..01e855897b6d
> --- /dev/null
> +++ b/drivers/gpu/trace/trace_gpu_mem.c
> @@ -0,0 +1,13 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#include <linux/module.h>
> +
> +#define CREATE_TRACE_POINTS
> +#include <trace/events/gpu_mem.h>
> +
> +EXPORT_TRACEPOINT_SYMBOL(gpu_mem_total);
> diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> new file mode 100644
> index 000000000000..1897822a9150
> --- /dev/null
> +++ b/include/trace/events/gpu_mem.h
> @@ -0,0 +1,57 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * GPU memory trace points
> + *
> + * Copyright (C) 2020 Google, Inc.
> + */
> +
> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM gpu_mem
> +
> +#if !defined(_TRACE_GPU_MEM_H) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_GPU_MEM_H
> +
> +#include <linux/tracepoint.h>
> +
> +/*
> + * The gpu_memory_total event indicates that there's an update to either the
> + * global or process total gpu memory counters.
> + *
> + * This event should be emitted whenever the kernel device driver allocates,
> + * frees, imports, unimports memory in the GPU addressable space.
> + *
> + * @gpu_id: This is the gpu id.
> + *
> + * @pid: Put 0 for global total, while positive pid for process total.
> + *
> + * @size: Virtual size of the allocation in bytes.
> + *
> + */
> +TRACE_EVENT(gpu_mem_total,
> +
> +	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
> +
> +	TP_ARGS(gpu_id, pid, size),
> +
> +	TP_STRUCT__entry(
> +		__field(uint32_t, gpu_id)
> +		__field(uint32_t, pid)
> +		__field(uint64_t, size)
> +	),
> +
> +	TP_fast_assign(
> +		__entry->gpu_id = gpu_id;
> +		__entry->pid = pid;
> +		__entry->size = size;
> +	),
> +
> +	TP_printk("gpu_id=%u pid=%u size=%llu",
> +		__entry->gpu_id,
> +		__entry->pid,
> +		__entry->size)
> +);
> +
> +#endif /* _TRACE_GPU_MEM_H */
> +
> +/* This part must be outside protection */
> +#include <trace/define_trace.h>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-03 14:07                     ` Steven Rostedt
@ 2020-03-03 14:15                       ` Greg KH
  2020-03-03 14:31                         ` Steven Rostedt
  0 siblings, 1 reply; 27+ messages in thread
From: Greg KH @ 2020-03-03 14:15 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: zzyiwei, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	linus.walleij, tglx, yamada.masahiro, paul.walmsley, bhelgaas,
	darekm, ndesaulniers, joelaf, linux-kernel, prahladk,
	android-kernel

On Tue, Mar 03, 2020 at 09:07:03AM -0500, Steven Rostedt wrote:
> 
> Greg,
> 
> You acked this patch before, did you want to ack it again, and I'll take it
> in my tree?

Sure, but where did my ack go?  What changed from previous versions???

Anyway, the patch seems sane enough to me:

Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-03 14:15                       ` Greg KH
@ 2020-03-03 14:31                         ` Steven Rostedt
  2020-03-03 15:15                           ` Yiwei Zhang
  2020-03-03 15:56                           ` Greg KH
  0 siblings, 2 replies; 27+ messages in thread
From: Steven Rostedt @ 2020-03-03 14:31 UTC (permalink / raw)
  To: Greg KH
  Cc: zzyiwei, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	linus.walleij, tglx, yamada.masahiro, paul.walmsley, bhelgaas,
	darekm, ndesaulniers, joelaf, linux-kernel, prahladk,
	android-kernel

On Tue, 3 Mar 2020 15:15:05 +0100
Greg KH <gregkh@linuxfoundation.org> wrote:

> On Tue, Mar 03, 2020 at 09:07:03AM -0500, Steven Rostedt wrote:
> > 
> > Greg,
> > 
> > You acked this patch before, did you want to ack it again, and I'll take it
> > in my tree?  
> 
> Sure, but where did my ack go?  What changed from previous versions???
> 
> Anyway, the patch seems sane enough to me:
> 
> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Your previous ack was was here:

  https://lore.kernel.org/lkml/20200213004029.GA2500609@kroah.com/

And the patch changed since then (although, only cosmetically), so your ack
was removed. The diff between this patch and the patch you acked is this:

-- Steve

diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
index 3b632a2b5100..1897822a9150 100644
--- a/include/trace/events/gpu_mem.h
+++ b/include/trace/events/gpu_mem.h
@@ -28,34 +28,27 @@
  *
  */
 TRACE_EVENT(gpu_mem_total,
-	TP_PROTO(
-		uint32_t gpu_id,
-		uint32_t pid,
-		uint64_t size
-	),
-	TP_ARGS(
-		gpu_id,
-		pid,
-		size
-	),
+
+	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
+
+	TP_ARGS(gpu_id, pid, size),
+
 	TP_STRUCT__entry(
 		__field(uint32_t, gpu_id)
 		__field(uint32_t, pid)
 		__field(uint64_t, size)
 	),
+
 	TP_fast_assign(
 		__entry->gpu_id = gpu_id;
 		__entry->pid = pid;
 		__entry->size = size;
 	),
-	TP_printk(
-		"gpu_id=%u "
-		"pid=%u "
-		"size=%llu",
+
+	TP_printk("gpu_id=%u pid=%u size=%llu",
 		__entry->gpu_id,
 		__entry->pid,
-		__entry->size
-	)
+		__entry->size)
 );
 
 #endif /* _TRACE_GPU_MEM_H */

^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-03 14:31                         ` Steven Rostedt
@ 2020-03-03 15:15                           ` Yiwei Zhang
  2020-03-03 15:48                             ` Steven Rostedt
  2020-03-03 15:56                           ` Greg KH
  1 sibling, 1 reply; 27+ messages in thread
From: Yiwei Zhang @ 2020-03-03 15:15 UTC (permalink / raw)
  To: Greg KH, Steven Rostedt
  Cc: mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	Linus Walleij, tglx, yamada.masahiro, paul.walmsley, bhelgaas,
	darekm, Nick Desaulniers, Joel Fernandes, linux-kernel,
	Prahlad Kilambi, android-kernel

On Tue, Mar 3, 2020 at 6:31 AM Steven Rostedt <rostedt@goodmis.org> wrote:
>
> On Tue, 3 Mar 2020 15:15:05 +0100
> Greg KH <gregkh@linuxfoundation.org> wrote:
>
> > On Tue, Mar 03, 2020 at 09:07:03AM -0500, Steven Rostedt wrote:
> > >
> > > Greg,
> > >
> > > You acked this patch before, did you want to ack it again, and I'll take it
> > > in my tree?
> >
> > Sure, but where did my ack go?  What changed from previous versions???
> >
> > Anyway, the patch seems sane enough to me:
> >
> > Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>
> Your previous ack was was here:
>
>   https://lore.kernel.org/lkml/20200213004029.GA2500609@kroah.com/
>
> And the patch changed since then (although, only cosmetically), so your ack
> was removed. The diff between this patch and the patch you acked is this:
>
> -- Steve
>
> diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> index 3b632a2b5100..1897822a9150 100644
> --- a/include/trace/events/gpu_mem.h
> +++ b/include/trace/events/gpu_mem.h
> @@ -28,34 +28,27 @@
>   *
>   */
>  TRACE_EVENT(gpu_mem_total,
> -       TP_PROTO(
> -               uint32_t gpu_id,
> -               uint32_t pid,
> -               uint64_t size
> -       ),
> -       TP_ARGS(
> -               gpu_id,
> -               pid,
> -               size
> -       ),
> +
> +       TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
> +
> +       TP_ARGS(gpu_id, pid, size),
> +
>         TP_STRUCT__entry(
>                 __field(uint32_t, gpu_id)
>                 __field(uint32_t, pid)
>                 __field(uint64_t, size)
>         ),
> +
>         TP_fast_assign(
>                 __entry->gpu_id = gpu_id;
>                 __entry->pid = pid;
>                 __entry->size = size;
>         ),
> -       TP_printk(
> -               "gpu_id=%u "
> -               "pid=%u "
> -               "size=%llu",
> +
> +       TP_printk("gpu_id=%u pid=%u size=%llu",
>                 __entry->gpu_id,
>                 __entry->pid,
> -               __entry->size
> -       )
> +               __entry->size)
>  );
>
>  #endif /* _TRACE_GPU_MEM_H */

Hi Steve, since Greg has acknowledged again on the latest patch v4,
will you help merge from your tree?

Thanks for all the help!
Yiwei

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-03 15:15                           ` Yiwei Zhang
@ 2020-03-03 15:48                             ` Steven Rostedt
  0 siblings, 0 replies; 27+ messages in thread
From: Steven Rostedt @ 2020-03-03 15:48 UTC (permalink / raw)
  To: Yiwei Zhang
  Cc: Greg KH, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	Linus Walleij, tglx, yamada.masahiro, paul.walmsley, bhelgaas,
	darekm, Nick Desaulniers, Joel Fernandes, linux-kernel,
	Prahlad Kilambi, android-kernel

On Tue, 3 Mar 2020 07:15:46 -0800
Yiwei Zhang <zzyiwei@google.com> wrote:


> Hi Steve, since Greg has acknowledged again on the latest patch v4,
> will you help merge from your tree?

Yes, I can add it to my queue for the next merge window.

-- Steve

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-03 14:31                         ` Steven Rostedt
  2020-03-03 15:15                           ` Yiwei Zhang
@ 2020-03-03 15:56                           ` Greg KH
  2020-03-13 22:59                             ` Yiwei Zhang
  1 sibling, 1 reply; 27+ messages in thread
From: Greg KH @ 2020-03-03 15:56 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: zzyiwei, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	linus.walleij, tglx, yamada.masahiro, paul.walmsley, bhelgaas,
	darekm, ndesaulniers, joelaf, linux-kernel, prahladk,
	android-kernel

On Tue, Mar 03, 2020 at 09:31:04AM -0500, Steven Rostedt wrote:
> On Tue, 3 Mar 2020 15:15:05 +0100
> Greg KH <gregkh@linuxfoundation.org> wrote:
> 
> > On Tue, Mar 03, 2020 at 09:07:03AM -0500, Steven Rostedt wrote:
> > > 
> > > Greg,
> > > 
> > > You acked this patch before, did you want to ack it again, and I'll take it
> > > in my tree?  
> > 
> > Sure, but where did my ack go?  What changed from previous versions???
> > 
> > Anyway, the patch seems sane enough to me:
> > 
> > Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> 
> Your previous ack was was here:
> 
>   https://lore.kernel.org/lkml/20200213004029.GA2500609@kroah.com/

Yeah, I remember that.

> And the patch changed since then (although, only cosmetically), so your ack
> was removed. The diff between this patch and the patch you acked is this:
> 
> -- Steve
> 
> diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> index 3b632a2b5100..1897822a9150 100644
> --- a/include/trace/events/gpu_mem.h
> +++ b/include/trace/events/gpu_mem.h
> @@ -28,34 +28,27 @@
>   *
>   */
>  TRACE_EVENT(gpu_mem_total,
> -	TP_PROTO(
> -		uint32_t gpu_id,
> -		uint32_t pid,
> -		uint64_t size
> -	),
> -	TP_ARGS(
> -		gpu_id,
> -		pid,
> -		size
> -	),
> +
> +	TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
> +
> +	TP_ARGS(gpu_id, pid, size),
> +
>  	TP_STRUCT__entry(
>  		__field(uint32_t, gpu_id)
>  		__field(uint32_t, pid)
>  		__field(uint64_t, size)
>  	),
> +
>  	TP_fast_assign(
>  		__entry->gpu_id = gpu_id;
>  		__entry->pid = pid;
>  		__entry->size = size;
>  	),
> -	TP_printk(
> -		"gpu_id=%u "
> -		"pid=%u "
> -		"size=%llu",
> +
> +	TP_printk("gpu_id=%u pid=%u size=%llu",
>  		__entry->gpu_id,
>  		__entry->pid,
> -		__entry->size
> -	)
> +		__entry->size)
>  );
>  
>  #endif /* _TRACE_GPU_MEM_H */

thanks for the diff, my ack still stands.

greg k-h

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-03 15:56                           ` Greg KH
@ 2020-03-13 22:59                             ` Yiwei Zhang
  2020-03-16 18:05                               ` Steven Rostedt
  0 siblings, 1 reply; 27+ messages in thread
From: Yiwei Zhang @ 2020-03-13 22:59 UTC (permalink / raw)
  To: Steven Rostedt, Greg KH
  Cc: mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	Linus Walleij, tglx, yamada.masahiro, paul.walmsley,
	Bjorn Helgaas, Dariusz Marcinkiewicz, Nick Desaulniers,
	Joel Fernandes, linux-kernel, Prahlad Kilambi, android-kernel

On Tue, Mar 3, 2020 at 7:56 AM Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Tue, Mar 03, 2020 at 09:31:04AM -0500, Steven Rostedt wrote:
> > On Tue, 3 Mar 2020 15:15:05 +0100
> > Greg KH <gregkh@linuxfoundation.org> wrote:
> >
> > > On Tue, Mar 03, 2020 at 09:07:03AM -0500, Steven Rostedt wrote:
> > > >
> > > > Greg,
> > > >
> > > > You acked this patch before, did you want to ack it again, and I'll take it
> > > > in my tree?
> > >
> > > Sure, but where did my ack go?  What changed from previous versions???
> > >
> > > Anyway, the patch seems sane enough to me:
> > >
> > > Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> >
> > Your previous ack was was here:
> >
> >   https://lore.kernel.org/lkml/20200213004029.GA2500609@kroah.com/
>
> Yeah, I remember that.
>
> > And the patch changed since then (although, only cosmetically), so your ack
> > was removed. The diff between this patch and the patch you acked is this:
> >
> > -- Steve
> >
> > diff --git a/include/trace/events/gpu_mem.h b/include/trace/events/gpu_mem.h
> > index 3b632a2b5100..1897822a9150 100644
> > --- a/include/trace/events/gpu_mem.h
> > +++ b/include/trace/events/gpu_mem.h
> > @@ -28,34 +28,27 @@
> >   *
> >   */
> >  TRACE_EVENT(gpu_mem_total,
> > -     TP_PROTO(
> > -             uint32_t gpu_id,
> > -             uint32_t pid,
> > -             uint64_t size
> > -     ),
> > -     TP_ARGS(
> > -             gpu_id,
> > -             pid,
> > -             size
> > -     ),
> > +
> > +     TP_PROTO(uint32_t gpu_id, uint32_t pid, uint64_t size),
> > +
> > +     TP_ARGS(gpu_id, pid, size),
> > +
> >       TP_STRUCT__entry(
> >               __field(uint32_t, gpu_id)
> >               __field(uint32_t, pid)
> >               __field(uint64_t, size)
> >       ),
> > +
> >       TP_fast_assign(
> >               __entry->gpu_id = gpu_id;
> >               __entry->pid = pid;
> >               __entry->size = size;
> >       ),
> > -     TP_printk(
> > -             "gpu_id=%u "
> > -             "pid=%u "
> > -             "size=%llu",
> > +
> > +     TP_printk("gpu_id=%u pid=%u size=%llu",
> >               __entry->gpu_id,
> >               __entry->pid,
> > -             __entry->size
> > -     )
> > +             __entry->size)
> >  );
> >
> >  #endif /* _TRACE_GPU_MEM_H */
>
> thanks for the diff, my ack still stands.
>
> greg k-h

Hi guys, thanks for all the help throughout this. After struggling a
while, I failed to figure out when the next merge window is. Could you
help point me to the release calendar or something?  Thanks again!

Best,
Yiwei

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-13 22:59                             ` Yiwei Zhang
@ 2020-03-16 18:05                               ` Steven Rostedt
  2020-03-16 19:28                                 ` Yiwei Zhang
  0 siblings, 1 reply; 27+ messages in thread
From: Steven Rostedt @ 2020-03-16 18:05 UTC (permalink / raw)
  To: Yiwei Zhang
  Cc: Greg KH, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	Linus Walleij, tglx, yamada.masahiro, paul.walmsley,
	Bjorn Helgaas, Dariusz Marcinkiewicz, Nick Desaulniers,
	Joel Fernandes, linux-kernel, Prahlad Kilambi, android-kernel

On Fri, 13 Mar 2020 15:59:37 -0700
Yiwei Zhang <zzyiwei@google.com> wrote:

> Hi guys, thanks for all the help throughout this. After struggling a
> while, I failed to figure out when the next merge window is. Could you
> help point me to the release calendar or something?  Thanks again!

I have this queued in my local tree. I'm currently having some issues with
my testing (there appears to be an unrelated bug to my code keeping it from
passing). But you should see this patch fly by when I add it to my
linux-next queue.

-- Steve

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint
  2020-03-16 18:05                               ` Steven Rostedt
@ 2020-03-16 19:28                                 ` Yiwei Zhang
  0 siblings, 0 replies; 27+ messages in thread
From: Yiwei Zhang @ 2020-03-16 19:28 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: Greg KH, mingo, elder, federico.vaga, tony.luck, vilhelm.gray,
	Linus Walleij, tglx, yamada.masahiro, paul.walmsley,
	Bjorn Helgaas, Dariusz Marcinkiewicz, Nick Desaulniers,
	Joel Fernandes, linux-kernel, Prahlad Kilambi, android-kernel

On Mon, Mar 16, 2020 at 11:05 AM Steven Rostedt <rostedt@goodmis.org> wrote:
>
> On Fri, 13 Mar 2020 15:59:37 -0700
> Yiwei Zhang <zzyiwei@google.com> wrote:
>
> > Hi guys, thanks for all the help throughout this. After struggling a
> > while, I failed to figure out when the next merge window is. Could you
> > help point me to the release calendar or something?  Thanks again!
>
> I have this queued in my local tree. I'm currently having some issues with
> my testing (there appears to be an unrelated bug to my code keeping it from
> passing). But you should see this patch fly by when I add it to my
> linux-next queue.
>
> -- Steve

Got it. Awesome, thanks Steve!

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2020-03-16 19:28 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-13  0:32 [PATCH v2] Add gpu memory tracepoints zzyiwei
2020-02-13  0:39 ` Yiwei Zhang
2020-02-13  0:40 ` Greg KH
2020-02-13  1:23   ` Yiwei Zhang
2020-02-13  1:48 ` Steven Rostedt
2020-02-13  2:20 ` zzyiwei
2020-02-13  2:24   ` Yiwei Zhang
2020-02-13  3:29     ` Steven Rostedt
2020-02-13  4:23       ` [PATCH v3] gpu/trace: add " zzyiwei
2020-02-13  4:27         ` Yiwei Zhang
2020-02-13 14:03         ` Steven Rostedt
2020-02-13 17:49           ` Yiwei Zhang
2020-02-24  6:31             ` Yiwei Zhang
2020-02-24 16:38               ` Steven Rostedt
2020-03-01  0:53                 ` Yiwei Zhang
2020-03-02 23:48                   ` [PATCH] [PATCH v4] gpu/trace: add a gpu total memory usage tracepoint zzyiwei
2020-03-02 23:56                     ` Yiwei Zhang
2020-03-02 23:50                   ` zzyiwei
2020-03-03 14:07                     ` Steven Rostedt
2020-03-03 14:15                       ` Greg KH
2020-03-03 14:31                         ` Steven Rostedt
2020-03-03 15:15                           ` Yiwei Zhang
2020-03-03 15:48                             ` Steven Rostedt
2020-03-03 15:56                           ` Greg KH
2020-03-13 22:59                             ` Yiwei Zhang
2020-03-16 18:05                               ` Steven Rostedt
2020-03-16 19:28                                 ` Yiwei Zhang

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).