Received: by 2002:a05:6358:4e97:b0:b3:742d:4702 with SMTP id ce23csp357230rwb; Fri, 12 Aug 2022 22:34:25 -0700 (PDT) X-Google-Smtp-Source: AA6agR7hTavKT/fJYzCHenqdt7ouSlhyyBckHl9jPxIDxTe8C/tJeE/3gfXl2XP9FrjgdPKul7W8 X-Received: by 2002:aa7:cf13:0:b0:43d:603a:b736 with SMTP id a19-20020aa7cf13000000b0043d603ab736mr6500374edy.20.1660368865047; Fri, 12 Aug 2022 22:34:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1660368865; cv=none; d=google.com; s=arc-20160816; b=KV+6kGwnLxHg4SdjvdvVe3k5rdv+kiUrewJg2fekepy+5U3cFIeOLl1ozU+vEBwxY2 oUZoqTAsp3hMHdkAgA8rv/bS2GQeA5sMtXoiVaqRkb5YfIQVLrpXp/jMIaBFBGvHC4RK gPXBDRRsCxW33Ftcq8QbNrRh5MDmN8I6lSM/3sQgexzVcnH6VUncFyEFdxsGUn19/yj2 4i5yIj1YwLEG+k+bzMuQ8ZCwdE9/TK8bnVJh9MH8zRhrBszBgxixnv/e9R/rdEq7NBMF unHmrwB6CVUHTxB8kd0LztYVdgEwiWn/zVlAbXgr0WjNDPuRkh7HtueClS6vkA0acZaY w+gA== 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=TI/exl5nwuAuH1XiMClf+KZ0CAJhxFR3p9+woq9jgyk=; b=zFu9Th1SS501jxEf/QlJfzVr39GWIOAW5mOsM4i3uy/Jbqh+IBq399seTmNEndX002 aCydBPG2+CAHuYdKUtrCbp55l1CKFxRmuX5gzBGBtrZvY5nHzEgmrdDSJCIXgjwu+jjY P/lVIf9bBGgzList2LUjyolHqji1vFmHeIMwlRZszL33ysmI+hULdk6gW1ACAdjbQ/wF w6HLH3zC0u22IaVHXfLQEX2biYiEnlI0dyhTFDlahoByPF/fWRUIE52KTLOtup3JqivH gQvEup9rGytWPrCQOIxk+QqGaPPpa3iB30yfDCUIeY+/870K51bL1gWlZN69EIpitcBf bHyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=h7tAnusI; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y29-20020a50ce1d000000b0043cd1c3e8bfsi3475588edi.206.2022.08.12.22.33.59; Fri, 12 Aug 2022 22:34:25 -0700 (PDT) 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=h7tAnusI; 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 S237392AbiHMFcy (ORCPT + 99 others); Sat, 13 Aug 2022 01:32:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49184 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229719AbiHMFcs (ORCPT ); Sat, 13 Aug 2022 01:32:48 -0400 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 38453DF9E; Fri, 12 Aug 2022 22:32:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1660368767; x=1691904767; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=tmicp3+kpfzbTsvkNaEOyBuVCc8qYON6duVW3+Q/kzI=; b=h7tAnusI/x/PffFpQcSt+5kzmY5N0Aa9rTG/9LDZKxyKHMPllJBxOk9k +UCqgzerEcFEOVhU4CayCsOtf1CgpBA6qGFEkOOyoy9x/PF0lXhT67GVI J4YsBcrW8cxF04xoI/UzUpZrXh1YSpelQOq/fShPoC9Ttl5rWDohSA7LU ES7BWBOdMCKvZ3Fvft6K+w71L0Sw9XwTxluJCJ2LIzrclrX8+OXNghaHL 6ERANUIjrSJN9Afvt3kFBpZCbPW/4IMcgg2WfYkaiq4GHz+T4ZTWfxcIk OucvFgfdE/ezoImaiHtLV3XWOc/3X0COpE4lq7sLM2R/yTWnMBd9IgAjs Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10437"; a="292999041" X-IronPort-AV: E=Sophos;i="5.93,233,1654585200"; d="scan'208";a="292999041" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Aug 2022 22:32:46 -0700 X-IronPort-AV: E=Sophos;i="5.93,233,1654585200"; d="scan'208";a="851775408" Received: from jchen8-mobl.amr.corp.intel.com (HELO localhost) ([10.212.10.85]) by fmsmga006-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Aug 2022 22:32:45 -0700 From: ira.weiny@intel.com To: Dan Williams Cc: Ira Weiny , Alison Schofield , Vishal Verma , Ben Widawsky , Steven Rostedt , Jonathan Cameron , Davidlohr Bueso , linux-kernel@vger.kernel.org, linux-cxl@vger.kernel.org Subject: [RFC PATCH 0/9] CXL: Read and clear event logs Date: Fri, 12 Aug 2022 22:32:34 -0700 Message-Id: <20220813053243.757363-1-ira.weiny@intel.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE 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 From: Ira Weiny Event records inform the OS of various device events. Events are not needed for any kernel operation but various user level software will want to track events. Add event reporting through the trace event mechanism. On driver load read and clear all device events. Normally interrupts will trigger new events to be reported as they occur. Because the interrupt code is still being worked on this series provides a cxl-test mechanism to create a series of events and trigger the reporting of those events. This series is submitted as an RFC for a few reasons: 1) Interrupt support is still missing 2) I'd like to get comments on the format of the trace events 3) Some of the event formats are badly aligned and I would like to see if there is any clarification on how the data will be formatted (See individual patches for details) Ira Weiny (9): cxl/mem: Implement Get Event Records command cxl/mem: Implement Clear Event Records command cxl/mem: Clear events on driver load cxl/mem: Trace General Media Event Record cxl/mem: Trace DRAM Event Record cxl/mem: Trace Memory Module Event Record cxl/test: Add generic mock events cxl/test: Add specific events cxl/test: Simulate event log overflow MAINTAINERS | 1 + drivers/cxl/core/mbox.c | 143 ++++++++ drivers/cxl/cxlmem.h | 149 +++++++++ drivers/cxl/pci.c | 2 + include/trace/events/cxl-events.h | 521 ++++++++++++++++++++++++++++++ include/uapi/linux/cxl_mem.h | 2 + tools/testing/cxl/test/mem.c | 399 +++++++++++++++++++++++ 7 files changed, 1217 insertions(+) create mode 100644 include/trace/events/cxl-events.h base-commit: 1cd8a2537eb07751d405ab7e2223f20338a90506 -- 2.35.3