From patchwork Sat Feb 18 02:18:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alison Schofield X-Patchwork-Id: 5589 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp183248wrn; Fri, 17 Feb 2023 18:41:03 -0800 (PST) X-Google-Smtp-Source: AK7set86/PaTR9xqislU0QjoSnTZbI+fjQxCzniB+qnZ3pZw7sWjAJJ5VVyWojZ8VKJVfBqxDhW0 X-Received: by 2002:a17:907:7817:b0:8b1:3a23:8ec7 with SMTP id la23-20020a170907781700b008b13a238ec7mr3170511ejc.43.1676688063335; Fri, 17 Feb 2023 18:41:03 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676688063; cv=none; d=google.com; s=arc-20160816; b=0WBGTpCXzuxNqaypsuXRBSqAz/Yn+O9zVuQ2YNbvnD9CyW8dBCFysCl7HBw5Omppsi CFlbwTMUocUviaNsenkqMqQtWYrBLZfLc6Wqm3lHAAtk1x5EUBwOJsjA4bSe7Ouo5Wo4 r80jxVzkXS+imQziGAQoUk+ARg4Tqg/RGikznfUDZmfwFN97mqICFMB/z786GBue5UNd ryZdzllzQuf4DCfS53VYrXK8jrhyMihXbspVTwFN+LDL8DY07hijFjDPYPhw51OFRkQd d7VdCLMqd2GI7BPE4/k7z5tcW6x14sR2BjXDE2QLRqN3Ng2yxgrPG2esJ6U8x+50LwLy rpLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=ISBOUeIno9/tksEB/4fjx2DbC3IDUypBkKiHdqC6qtA=; b=ScGt8A9z7dGmImusB+VAYlwe2SNtXEbMdI56H10uVgsZhbsNyb6gyh2vIB/lv53YbW RZWwaW3PUAMgV9z7pyelKHN/W5HHwHEiX5P2Tu91bE5OcRbSqBcEzmwoMotrb0KxrqKH cGRlhiVdmtYoqowyIpz2dRxiRcF6wCjF+61ruq9N3LiTW9pEuLJPZ9nc52Gae9JilrDr PRBYBy3QjDIv0x8cKBskVhVU8pZA6S5G33wK+Tq0ZL7mS+iv6qmNi7bK5bdaWBoQpWXZ JCTysqi8YEe04/lM+qlbi0Y10z9wF+gLKLgfBvmlZUPXyvf4wxhyNFhVBnzW1ObUqs/q AH6A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=kPlogmr9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j19-20020a170906105300b008af7d8bbdf2si8059507ejj.989.2023.02.17.18.40.38; Fri, 17 Feb 2023 18:41:03 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=kPlogmr9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229737AbjBRCTD (ORCPT + 99 others); Fri, 17 Feb 2023 21:19:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33764 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229640AbjBRCTB (ORCPT ); Fri, 17 Feb 2023 21:19:01 -0500 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1D87D48E27; Fri, 17 Feb 2023 18:18:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676686739; x=1708222739; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=y/gFdXl17RDyGmXyQHiDE1ocFPNVYnxg/oNSahGPjW8=; b=kPlogmr9CdRwc51tyZNL+XkFy6JZy8IkUImXb+BqQzMoFIZIFwhwEB3R hHEOD15SogAcp+tgUPs+ipyMGVEY9SvKXwygoXNxN/Erj7vvuK7Wnzuo6 x6c8UX6Xd3Y8b8OUMv3nacPZ8sdU3HvxpyPoo1OEAk5hKdW8yk7JeV2Vy M7raUp+1klwp4FRu5ucrGPbIZPYIodi6EFbGDQe00Z9c84xaIr6KqChzZ 4AvcSaV3joB0bPY09fwDeJTtkJD3HX3prDDIzJjr1DaLFmEy+iDp2s9ih SBY6hOkpOBBEtYoTTyHMK+ntMg6dV2qKy2annDzy+2TooM5uyffYQZQm/ A==; X-IronPort-AV: E=McAfee;i="6500,9779,10624"; a="320244201" X-IronPort-AV: E=Sophos;i="5.97,306,1669104000"; d="scan'208";a="320244201" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2023 18:18:58 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10624"; a="672787872" X-IronPort-AV: E=Sophos;i="5.97,306,1669104000"; d="scan'208";a="672787872" Received: from aschofie-mobl2.amr.corp.intel.com (HELO localhost) ([10.252.133.15]) by fmsmga007-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2023 18:18:57 -0800 From: alison.schofield@intel.com To: Dan Williams , Ira Weiny , Vishal Verma , Dave Jiang , Ben Widawsky , Steven Rostedt Cc: Alison Schofield , linux-cxl@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v7 0/6] CXL Poison List Retrieval & Tracing Date: Fri, 17 Feb 2023 18:18:48 -0800 Message-Id: X-Mailer: git-send-email 2.37.3 MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1758134862610764737?= X-GMAIL-MSGID: =?utf-8?q?1758134862610764737?= From: Alison Schofield This is not targeting the 6.3 merge window. Changes in v7: - Update commit log wrt poison read for unmapped after mapped (Jonathan) - Update comment wrt decoder modes and pmem/ram separation (Jonathan) - Add dev_dbg() if mixed mode decoder appears - Read poison on skip range first (Jonathan) - trace: order fields (memdev, host, serial) - trace: simplify host name get - trace: use typical tabs Link to v6: https://lore.kernel.org/linux-cxl/cover.1675983077.git.alison.schofield@intel.com/ Add support for retrieving device poison lists and store the returned error records as kernel trace events. The handling of the poison list is guided by the CXL 3.0 Specification Section 8.2.9.8.4.1. [1] Example: $ echo 1 > /sys/bus/cxl/devices/mem0/trigger_poison_list cxl_poison: memdev=mem0 host=cxl_mem.0 serial=0 region=region4 region_uuid=117b2cf4-b160-4090-9361-ba31b9649317 hpa=0xf0d0000000 dpa=0x40000000 length=0x40 source=Internal flags= overflow_time=0 [1]: https://www.computeexpresslink.org/download-the-specification Alison Schofield (6): cxl/mbox: Add GET_POISON_LIST mailbox command cxl/trace: Add TRACE support for CXL media-error records cxl/memdev: Add trigger_poison_list sysfs attribute cxl/region: Provide region info to the cxl_poison trace event cxl/trace: Add an HPA to cxl_poison trace events tools/testing/cxl: Mock support for Get Poison List Documentation/ABI/testing/sysfs-bus-cxl | 14 ++++ drivers/cxl/core/core.h | 5 ++ drivers/cxl/core/mbox.c | 74 +++++++++++++++++++ drivers/cxl/core/memdev.c | 68 ++++++++++++++++++ drivers/cxl/core/region.c | 89 +++++++++++++++++++++++ drivers/cxl/core/trace.c | 94 +++++++++++++++++++++++++ drivers/cxl/core/trace.h | 91 ++++++++++++++++++++++++ drivers/cxl/cxlmem.h | 69 +++++++++++++++++- drivers/cxl/pci.c | 4 ++ tools/testing/cxl/test/mem.c | 42 +++++++++++ 10 files changed, 549 insertions(+), 1 deletion(-) base-commit: a5fcd228ca1db9810ba1ed461c90b6ee933b9daf