Skip to content

Commit 207a1f8

Browse files
weiny2djbw
authored andcommitted
cxl/events: Remove passing a UUID to known event traces
The UUID data is redundant in the known event trace types. The addition of static defines allows the trace macros to create the UUID data inside the trace thus removing unnecessary code. Have well known trace events use static data to set the uuid field based on the event type. Suggested-by: Jonathan Cameron <Jonathan.Cameron@Huawei.com> Signed-off-by: Ira Weiny <ira.weiny@intel.com> Link: https://lore.kernel.org/r/20231220-cxl-cper-v5-4-1bb8a4ca2c7a@intel.com Acked-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
1 parent 4c115c9 commit 207a1f8

2 files changed

Lines changed: 19 additions & 15 deletions

File tree

drivers/cxl/core/mbox.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -846,16 +846,16 @@ static void cxl_event_trace_record(const struct cxl_memdev *cxlmd,
846846
struct cxl_event_gen_media *rec =
847847
(struct cxl_event_gen_media *)record;
848848

849-
trace_cxl_general_media(cxlmd, type, id, rec);
849+
trace_cxl_general_media(cxlmd, type, rec);
850850
} else if (uuid_equal(id, &CXL_EVENT_DRAM_UUID)) {
851851
struct cxl_event_dram *rec = (struct cxl_event_dram *)record;
852852

853-
trace_cxl_dram(cxlmd, type, id, rec);
853+
trace_cxl_dram(cxlmd, type, rec);
854854
} else if (uuid_equal(id, &CXL_EVENT_MEM_MODULE_UUID)) {
855855
struct cxl_event_mem_module *rec =
856856
(struct cxl_event_mem_module *)record;
857857

858-
trace_cxl_memory_module(cxlmd, type, id, rec);
858+
trace_cxl_memory_module(cxlmd, type, rec);
859859
} else {
860860
/* For unknown record types print just the header */
861861
trace_cxl_generic_event(cxlmd, type, id, record);

drivers/cxl/core/trace.h

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,7 @@ TRACE_EVENT(cxl_overflow,
181181
* 1) Add CXL_EVT_TP_entry to TP_STRUCT__entry
182182
* 2) Use CXL_EVT_TP_fast_assign within TP_fast_assign;
183183
* pass the dev, log, and CXL event header
184+
* NOTE: The uuid must be assigned by the specific trace event
184185
* 3) Use CXL_EVT_TP_printk() instead of TP_printk()
185186
*
186187
* See the generic_event tracepoint as an example.
@@ -198,12 +199,11 @@ TRACE_EVENT(cxl_overflow,
198199
__field(u8, hdr_length) \
199200
__field(u8, hdr_maint_op_class)
200201

201-
#define CXL_EVT_TP_fast_assign(cxlmd, l, uuid, hdr) \
202+
#define CXL_EVT_TP_fast_assign(cxlmd, l, hdr) \
202203
__assign_str(memdev, dev_name(&(cxlmd)->dev)); \
203204
__assign_str(host, dev_name((cxlmd)->dev.parent)); \
204205
__entry->log = (l); \
205206
__entry->serial = (cxlmd)->cxlds->serial; \
206-
memcpy(&__entry->hdr_uuid, (uuid), sizeof(uuid_t)); \
207207
__entry->hdr_length = (hdr).length; \
208208
__entry->hdr_flags = get_unaligned_le24((hdr).flags); \
209209
__entry->hdr_handle = le16_to_cpu((hdr).handle); \
@@ -235,7 +235,8 @@ TRACE_EVENT(cxl_generic_event,
235235
),
236236

237237
TP_fast_assign(
238-
CXL_EVT_TP_fast_assign(cxlmd, log, uuid, rec->hdr);
238+
CXL_EVT_TP_fast_assign(cxlmd, log, rec->hdr);
239+
memcpy(&__entry->hdr_uuid, uuid, sizeof(uuid_t));
239240
memcpy(__entry->data, &rec->data, CXL_EVENT_RECORD_DATA_LENGTH);
240241
),
241242

@@ -315,9 +316,9 @@ TRACE_EVENT(cxl_generic_event,
315316
TRACE_EVENT(cxl_general_media,
316317

317318
TP_PROTO(const struct cxl_memdev *cxlmd, enum cxl_event_log_type log,
318-
const uuid_t *uuid, struct cxl_event_gen_media *rec),
319+
struct cxl_event_gen_media *rec),
319320

320-
TP_ARGS(cxlmd, log, uuid, rec),
321+
TP_ARGS(cxlmd, log, rec),
321322

322323
TP_STRUCT__entry(
323324
CXL_EVT_TP_entry
@@ -336,7 +337,8 @@ TRACE_EVENT(cxl_general_media,
336337
),
337338

338339
TP_fast_assign(
339-
CXL_EVT_TP_fast_assign(cxlmd, log, uuid, rec->hdr);
340+
CXL_EVT_TP_fast_assign(cxlmd, log, rec->hdr);
341+
memcpy(&__entry->hdr_uuid, &CXL_EVENT_GEN_MEDIA_UUID, sizeof(uuid_t));
340342

341343
/* General Media */
342344
__entry->dpa = le64_to_cpu(rec->phys_addr);
@@ -398,9 +400,9 @@ TRACE_EVENT(cxl_general_media,
398400
TRACE_EVENT(cxl_dram,
399401

400402
TP_PROTO(const struct cxl_memdev *cxlmd, enum cxl_event_log_type log,
401-
const uuid_t *uuid, struct cxl_event_dram *rec),
403+
struct cxl_event_dram *rec),
402404

403-
TP_ARGS(cxlmd, log, uuid, rec),
405+
TP_ARGS(cxlmd, log, rec),
404406

405407
TP_STRUCT__entry(
406408
CXL_EVT_TP_entry
@@ -422,7 +424,8 @@ TRACE_EVENT(cxl_dram,
422424
),
423425

424426
TP_fast_assign(
425-
CXL_EVT_TP_fast_assign(cxlmd, log, uuid, rec->hdr);
427+
CXL_EVT_TP_fast_assign(cxlmd, log, rec->hdr);
428+
memcpy(&__entry->hdr_uuid, &CXL_EVENT_DRAM_UUID, sizeof(uuid_t));
426429

427430
/* DRAM */
428431
__entry->dpa = le64_to_cpu(rec->phys_addr);
@@ -547,9 +550,9 @@ TRACE_EVENT(cxl_dram,
547550
TRACE_EVENT(cxl_memory_module,
548551

549552
TP_PROTO(const struct cxl_memdev *cxlmd, enum cxl_event_log_type log,
550-
const uuid_t *uuid, struct cxl_event_mem_module *rec),
553+
struct cxl_event_mem_module *rec),
551554

552-
TP_ARGS(cxlmd, log, uuid, rec),
555+
TP_ARGS(cxlmd, log, rec),
553556

554557
TP_STRUCT__entry(
555558
CXL_EVT_TP_entry
@@ -569,7 +572,8 @@ TRACE_EVENT(cxl_memory_module,
569572
),
570573

571574
TP_fast_assign(
572-
CXL_EVT_TP_fast_assign(cxlmd, log, uuid, rec->hdr);
575+
CXL_EVT_TP_fast_assign(cxlmd, log, rec->hdr);
576+
memcpy(&__entry->hdr_uuid, &CXL_EVENT_MEM_MODULE_UUID, sizeof(uuid_t));
573577

574578
/* Memory Module Event */
575579
__entry->event_type = rec->event_type;

0 commit comments

Comments
 (0)