From patchwork Thu Mar 20 09:58:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Pierre-Eric Pelloux-Prayer X-Patchwork-Id: 14023646 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 486CDC28B30 for ; Thu, 20 Mar 2025 10:00:29 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id AFEF010E5BA; Thu, 20 Mar 2025 10:00:28 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (1024-bit key; unprotected) header.d=amd.com header.i=@amd.com header.b="FG3GpjrP"; dkim-atps=neutral Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2070.outbound.protection.outlook.com [40.107.220.70]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1A45610E5BA for ; Thu, 20 Mar 2025 10:00:26 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=F9RymT6og7sJTmkFYnt+iJgpjhLRsUIscwUKsG/YfNMU1Ka9AAB3ZAi5hJp0g69UP7FMxyfg/IXk6hHdHQSSROOhyZyByZNbnk3AQgZS8aW1dZ6lZzN/d5Wee0mGayWIaRlApFwpgmPOShdFAErQ+l4emJWWtXJqoYiDWTlm39vK0PFMCVhPaiAEePiT0xJ075GxYiJKwsfZOlPiLVrGuVHNgIjjzhotf6ZP1JA/gTiOD5t7Fkd2OuOZG7JvR3pElnFGcnX9TwvIFWxpbUcjhBi7QW4G9FWtObtoEpAaG0aODnSKGt3X4Rstr6ygM1s1M/MsPkorhP214hPr3eg+3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=XVMF1EMzMmNICY/mkImE9hLbB4xuVw+XXWrQQFOtzZ4=; b=FI6fd9h4DlvmNfpj6vZQw02sSh1Qu05ApEkB3NItUAcP1OoWrmkv4tYp3AtX58u5YxhBoB51lnV8ePaudRcbuCPrfilRPz1nRPHpwQ/vkQZldcAPNag1PjHHPomycG+4R1kkvSmDRLz8fIvJsMqDhuax0Ur40hTaX+2xpZiTo6O/i/bKi2ksG+1O5XyglfAQxrfg8z5WWi69R2fZDXqEuef91L0ivVf6uUpP8jq2iBX2SpCDzqVKeLMP2a4QJA9uS8jKRr4vE11+0xTut+r3xkR7VXPD3SK76QhNZ0zhkMNRXQM2U2IQ0Dobn2NxAWV1HcgrVmFSWg0pS1ctPArTiw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=gmail.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XVMF1EMzMmNICY/mkImE9hLbB4xuVw+XXWrQQFOtzZ4=; b=FG3GpjrPLHZd61Exw8TouLpBSTmWm6aONnPkmjngms+LazrGzIOwFtVOd3U9z9g6+Bc55j9y+qutqRnPXMVBQB8fLLntIhTJ2ca8vv5a7eWV6ICJqiAVqU1E9dWSkU6TFZtHmAjnCKh5SvSk2ZuTh2ylAwXCI1lzXOOccnv89/o= Received: from BL0PR0102CA0038.prod.exchangelabs.com (2603:10b6:208:25::15) by MN2PR12MB4160.namprd12.prod.outlook.com (2603:10b6:208:19a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.33; Thu, 20 Mar 2025 10:00:21 +0000 Received: from BL02EPF0001A0F9.namprd03.prod.outlook.com (2603:10b6:208:25:cafe::7a) by BL0PR0102CA0038.outlook.office365.com (2603:10b6:208:25::15) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8534.34 via Frontend Transport; Thu, 20 Mar 2025 10:00:21 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C Received: from SATLEXMB04.amd.com (165.204.84.17) by BL02EPF0001A0F9.mail.protection.outlook.com (10.167.242.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8534.20 via Frontend Transport; Thu, 20 Mar 2025 10:00:21 +0000 Received: from FRAPPELLOUX01.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 20 Mar 2025 05:00:17 -0500 From: Pierre-Eric Pelloux-Prayer To: David Airlie , Simona Vetter , "Maarten Lankhorst" , Maxime Ripard , Thomas Zimmermann , "Jonathan Corbet" , Matthew Brost , "Danilo Krummrich" , Philipp Stanner , =?utf-8?q?Christian_K=C3=B6nig?= , "Sumit Semwal" CC: Pierre-Eric Pelloux-Prayer , "Lucas Stach" , =?utf-8?q?Ma=C3=ADra_Canal?= , =?utf-8?q?Christian_K?= =?utf-8?q?=C3=B6nig?= , , , , , Subject: [PATCH v8 08/10] drm/doc: document some tracepoints as uAPI Date: Thu, 20 Mar 2025 10:58:04 +0100 Message-ID: <20250320095818.40622-9-pierre-eric.pelloux-prayer@amd.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250320095818.40622-1-pierre-eric.pelloux-prayer@amd.com> References: <20250320095818.40622-1-pierre-eric.pelloux-prayer@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL02EPF0001A0F9:EE_|MN2PR12MB4160:EE_ X-MS-Office365-Filtering-Correlation-Id: 40b82cf8-0e33-4896-0349-08dd679606bd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|82310400026|7416014|376014|36860700013|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?utf-8?q?VfMRJsTD4m8gZXc+6K4cHLf87H/rVMf?= =?utf-8?q?3IGc9ckY/p/qWIWlLEuCUGDwBn4Cq++Pp1mZCKZyilDYJuR+/ZPUddlW4ix3E9Yue?= =?utf-8?q?Uak+5rolZMlYuI4knnFbUdwuo9bAgdlWx1EBteUOphMzrVm0wt44D2x04c69zUZVp?= =?utf-8?q?fRq7KJZhInNtOiQlDe1CnMhFOFdBXUdgPqUC3pTItCF6J27EfeOhCNMEz13DnmJdX?= =?utf-8?q?55NH/C43cw4vH4gcx+7lmk/HyenLTWDBdG/13zXsvWI3VInIBnmO2Z3pjcSNlCnuF?= =?utf-8?q?oz1VBbPHUTC1l6llhJ3XqQhOBSpXKNlwZ+nZBONIKdQc6ngQVfII+XAKpICisZaDo?= =?utf-8?q?JJORDrKjErnFCs4gusIVWl70zIDHZE7JWmCM3UO4S9uA6BsZDVVMllmS3lNW8rDRk?= =?utf-8?q?u7qFhRxOewa/C8oQiX3QfLXt+EGz+amQqBnzwAxtn7VThjNtU5iGRsjyeJJNAs/Ly?= =?utf-8?q?Im9/QMpytIZ+IJAcrNuLiShBnfwn6NXlfJJ02ATwydHrjXHXX4qiF7XeX0BEidyCZ?= =?utf-8?q?OhQNjkCvg4bdYRh0WoNOXU2lw9b1JODBmYNhXDOpSM6MqqvQT1GYyTR5hrnWWfPrz?= =?utf-8?q?Jri/bPCCnJytMJhrVG2YY0mT+r8OCngIWT9iBqm7K82RQsHzDHv2q0cIWVnKA2s7H?= =?utf-8?q?X71aS2Q8vrnUd2FIsK4RJhD/rxQ3m6eWoRe0YqcdpnSNMXVU96kbWyMbQyWSxjrle?= =?utf-8?q?Kis/y0BJSOQItV4+7OMTn6RfSTfx96n8L9YI2c2yO46UyPdE7ihwmXbfY/iC77fin?= =?utf-8?q?CFkCJv5y0cEflKDw6d9olLJ2JBmBuOtKoUo6VNPHZ7Sz+Q1DbMUNBdGfs1MAwJIlS?= =?utf-8?q?RkMiHaBZ5fGQ79H3HQn8hvdfeVsd84viDMZtdJKWumtayjKJyop6B4BJ18pClY9q7?= =?utf-8?q?2cNLmOX1r8FxiuiaXar95gklBOt9yTnoo74t1CHZEHcLXOKaCAoMe2b8yAl9MWZpb?= =?utf-8?q?ndGf7zrKeBmRjg7H8Wl0s4fCqFc1+8sm9vXemmnA8FEDvWm3pJJYj+4IQtw9O0szY?= =?utf-8?q?Db0fSdq+CGNJUIpmbb5p5FmI3+QfQQsAOL0//FQWOxU/iuo4aiDSEVz14h1dSAf0i?= =?utf-8?q?6QeTLdnQ6l1+mk2kOzvAbXh5chPJcS/D3SZ0JTHLcMMGkqVpkh164QdhA7TK+65u4?= =?utf-8?q?0KlHouT4oj1IILc3iMZ5y9S+2DcsgrX1aXiwDgM3FGEIp20FvkSHa8SybcTxVOdbe?= =?utf-8?q?b9S5/3rVN7e0GounczRu4nNIQSv/T8TxeQ/kS0tGpixos94YvMstAf3qEiVf4uqJv?= =?utf-8?q?wglMKogGQxanodMtzDJBZ3ns9QtuJ3u5pKgYa95aHWf/4nqQ2uu9xNEYUaku4jP73?= =?utf-8?q?4qRssGq/LNE5ubHnWqeEK6cXKAKl55nyVT345g1/j3b9zOFm1tL95MUc32IqN+e/o?= =?utf-8?q?Jl42OlvUurGX7jPvr+weFd5rOmQiMqRAPupew7r6PcCbP4rPd3bzVefCUXTTOU+9h?= =?utf-8?q?b/9pJuGs3E?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(82310400026)(7416014)(376014)(36860700013)(1800799024)(921020); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Mar 2025 10:00:21.1815 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 40b82cf8-0e33-4896-0349-08dd679606bd X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BL02EPF0001A0F9.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4160 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" This commit adds a document section in drm-uapi.rst about tracepoints, and mark the events gpu_scheduler_trace.h as stable uAPI. The goal is to explicitly state that tools can rely on the fields, formats and semantics of these events. Acked-by: Lucas Stach Acked-by: Maíra Canal Reviewed-by: Christian König Signed-off-by: Pierre-Eric Pelloux-Prayer --- Documentation/gpu/drm-uapi.rst | 19 ++++++++++++++++ .../gpu/drm/scheduler/gpu_scheduler_trace.h | 22 +++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/Documentation/gpu/drm-uapi.rst b/Documentation/gpu/drm-uapi.rst index 69f72e71a96e..4863a4deb0ee 100644 --- a/Documentation/gpu/drm-uapi.rst +++ b/Documentation/gpu/drm-uapi.rst @@ -693,3 +693,22 @@ dma-buf interoperability Please see Documentation/userspace-api/dma-buf-alloc-exchange.rst for information on how dma-buf is integrated and exposed within DRM. + + +Trace events +============ + +See Documentation/trace/tracepoints.rst for information about using +Linux Kernel Tracepoints. +In the DRM subsystem, some events are considered stable uAPI to avoid +breaking tools (e.g.: GPUVis, umr) relying on them. Stable means that fields +cannot be removed, nor their formatting updated. Adding new fields is +possible, under the normal uAPI requirements. + +Stable uAPI events +------------------ + +From ``drivers/gpu/drm/scheduler/gpu_scheduler_trace.h`` + +.. kernel-doc:: drivers/gpu/drm/scheduler/gpu_scheduler_trace.h + :doc: uAPI trace events \ No newline at end of file diff --git a/drivers/gpu/drm/scheduler/gpu_scheduler_trace.h b/drivers/gpu/drm/scheduler/gpu_scheduler_trace.h index 4ce53e493fef..3c7f6a39cf91 100644 --- a/drivers/gpu/drm/scheduler/gpu_scheduler_trace.h +++ b/drivers/gpu/drm/scheduler/gpu_scheduler_trace.h @@ -32,6 +32,28 @@ #define TRACE_SYSTEM gpu_scheduler #define TRACE_INCLUDE_FILE gpu_scheduler_trace +/** + * DOC: uAPI trace events + * + * ``drm_sched_job_queue``, ``drm_sched_job_run``, ``drm_sched_job_add_dep``, + * ``drm_sched_job_done`` and ``drm_sched_job_unschedulable`` are considered + * stable uAPI. + * + * Common trace events attributes: + * + * * ``id`` - this is &drm_sched_job->id. It uniquely idenfies a job + * inside a &struct drm_gpu_scheduler. + * + * * ``dev`` - the dev_name() of the device running the job. + * + * * ``ring`` - the hardware ring running the job. Together with ``dev`` it + * uniquely identifies where the job is going to be executed. + * + * * ``fence`` - the &dma_fence.context and the &dma_fence.seqno of + * &drm_sched_fence.finished + * + */ + DECLARE_EVENT_CLASS(drm_sched_job, TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity), TP_ARGS(sched_job, entity),