trace: platform/x86/intel/ifs: Add SBAF trace support

Add tracing support for the SBAF IFS tests, which may be useful for
debugging systems that fail these tests. Log details like test content
batch number, SBAF bundle ID, program index and the exact errors or
warnings encountered by each HT thread during the test.

Reviewed-by: Ashok Raj <ashok.raj@intel.com>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Signed-off-by: Jithu Joseph <jithu.joseph@intel.com>
Signed-off-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Link: https://lore.kernel.org/r/20240801051814.1935149-5-sathyanarayanan.kuppuswamy@linux.intel.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
Jithu Joseph 2024-08-01 05:18:14 +00:00 committed by Hans de Goede
parent 3c4d06bd6e
commit 61b7496453
2 changed files with 28 additions and 0 deletions

View File

@ -528,6 +528,7 @@ static int dosbaf(void *data)
*/
wrmsrl(MSR_ACTIVATE_SBAF, run_params->activate->data);
rdmsrl(MSR_SBAF_STATUS, status.data);
trace_ifs_sbaf(ifsd->cur_batch, *run_params->activate, status);
/* Pass back the result of the test */
if (cpu == first)

View File

@ -35,6 +35,33 @@ TRACE_EVENT(ifs_status,
__entry->status)
);
TRACE_EVENT(ifs_sbaf,
TP_PROTO(int batch, union ifs_sbaf activate, union ifs_sbaf_status status),
TP_ARGS(batch, activate, status),
TP_STRUCT__entry(
__field( u64, status )
__field( int, batch )
__field( u16, bundle )
__field( u16, pgm )
),
TP_fast_assign(
__entry->status = status.data;
__entry->batch = batch;
__entry->bundle = activate.bundle_idx;
__entry->pgm = activate.pgm_idx;
),
TP_printk("batch: 0x%.2x, bundle_idx: 0x%.4x, pgm_idx: 0x%.4x, status: 0x%.16llx",
__entry->batch,
__entry->bundle,
__entry->pgm,
__entry->status)
);
#endif /* _TRACE_IFS_H */
/* This part must be outside protection */