Received: by 2002:a05:7412:251c:b0:e2:908c:2ebd with SMTP id w28csp565352rda; Sat, 21 Oct 2023 23:20:45 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFZ3O+o+xnxFimwKvX8WE7FKP3un89admtCDKGrljyVMvcl+hsZhiMtu8/zSuqoGLmKwpmp X-Received: by 2002:a05:6870:814:b0:1d6:790f:25a0 with SMTP id fw20-20020a056870081400b001d6790f25a0mr9091299oab.4.1697955644801; Sat, 21 Oct 2023 23:20:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697955644; cv=none; d=google.com; s=arc-20160816; b=uJ8+Qm4O0TPcNOvQjLPrC8x3aE6rQ3RqGSO+qA9BBY+9K9xeepHmfbyghQImBOzI2y fHm0KrWwK20xbPKnCLtIW5JaY2G6x4BwCKW0W2QbaK3D/fn15h+ykR4hqyFjnwUseqBQ qzGGKWfh1y9sAy5SwXX9V9UnHVZazZeO6p4YqBllZ38ahnFpFCYHSJiWlCMuFNJI9PXG p1nrco+KnBbjDmKfxho2IAwyfSZT9VQ1fuq3NdhoTRgSVrUJpiIxlvRAaCYCBBnzALr+ /Isgky7a1kyeLSjZBucy/tIoPSRG4A8D0s/r29riEWzkxHPkxXWTLj+eYTIT7DS8qzKA VsXg== 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=oSQi8miVnIlHc8eVKbegKOtC0+LS89UxgyItuL1ra24=; fh=6h4AoKAvane/fiUOZIEkq6+UUPmwjQaSLzqywEn5Iu4=; b=OPfvqKG15f4TdB5HAsHJGW5uSW6BNSye5PFfvK73YryuRewXwkSKBC9MhemyUB+Im1 wlZr4IZu2FRlSY4xZQbqu0hXLTU25/HsAx1CewX3NFuBsNEFqQMcLizaksNfqMgQhmcs u1CRc5u5WQRsn9xlV7ayVsvvhuQaxpZYpAheRRbQQp+k49PO+sdtVwcvrNw8+FtMEYEr aFtbwTgddFUOtV0qOpw5dPdU27Y0yaZQ1kzUu/dplxUqwnZrWSvCgfRV5MkJlgdqpZ6k 0tV0PS6fN93h39aIizsbTpSZjgz3jx31fJXYzzoN2mMzinb7REJl6y9uFNP/3TsP/ihV Hd1Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=OP+lcVhE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 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 lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id e63-20020a17090a6fc500b00252d84b7af0si4431918pjk.181.2023.10.21.23.20.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 21 Oct 2023 23:20:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=OP+lcVhE; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 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 (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id A4907804C636; Sat, 21 Oct 2023 23:20:42 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231233AbjJVFx0 (ORCPT + 99 others); Sun, 22 Oct 2023 01:53:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45690 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229472AbjJVFxZ (ORCPT ); Sun, 22 Oct 2023 01:53:25 -0400 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 21C44CC; Sat, 21 Oct 2023 22:53:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1697954004; x=1729490004; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=/QZoRJe08f8RU60jeWxeNdjpSy9+XWvu0aStnMl+Gkc=; b=OP+lcVhELgPjh13t6HyLgiwLGDpquc10LXEYMRlnOvEYcZYq9AWoVlfe 5b+4aepnl0+g97QlM9igKwtMxvNCJ/qGrGkpWQ+NI9wuoNOkyeNeLupvU fZ+mfe0ozzYInmZRyki6BNKlDbnUlTA+WP0SMZ4DtMlLgX5wiJNfV6xEv EYJdL9/bYwiBi8E3x4nfUD57zd23DxxIkGEUb62jgOv18RbEfOj7ZaWEg NwVOmPHwp66za/AHEhmXR1P7TCCBuM1fHynjRM9aapDFV0MAIOOSaPVyz wAwoqSCho2DxBuT//PeTzbFEihqzTSaUYvpFR3BmzAYvUkgL6YI2AuO37 Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10870"; a="8242360" X-IronPort-AV: E=Sophos;i="6.03,242,1694761200"; d="scan'208";a="8242360" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Oct 2023 22:53:23 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10870"; a="874341289" X-IronPort-AV: E=Sophos;i="6.03,242,1694761200"; d="scan'208";a="874341289" Received: from chenyu-dev.sh.intel.com ([10.239.62.164]) by fmsmga002.fm.intel.com with ESMTP; 21 Oct 2023 22:53:22 -0700 From: Chen Yu To: Len Brown Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Chen Yu , Todd Brandt Subject: [RFC PATCH] tools/power turbostat: Do not print negative LPI residency Date: Sun, 22 Oct 2023 13:52:21 +0800 Message-Id: <20231022055221.569634-1-yu.c.chen@intel.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Sat, 21 Oct 2023 23:20:42 -0700 (PDT) turbostat prints the abnormal SYS%LPI across suspend-to-idle: SYS%LPI = 114479815993277.50 This is reproduced by: Run a freeze cycle, e.g. "sleepgraph -m freeze -rtcwake 15". Then do a reboot. After boot up, launch the suspend-idle-idle and check the SYS%LPI field. The slp_so residence counter is in LPIT table, and BIOS does not clears this register across reset. The PMC expects the OS to calculate the LPI residency based on the delta. However, there is an firmware issue that the LPIT gets cleared to 0 during the second suspend to idle after the reboot, which brings negative delta value. Prints a simple 0 to indicate this error to not confuse the user. Reported-by: Todd Brandt Signed-off-by: Chen Yu --- tools/power/x86/turbostat/turbostat.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tools/power/x86/turbostat/turbostat.c b/tools/power/x86/turbostat/turbostat.c index 9a10512e3407..3fa5f9a0218a 100644 --- a/tools/power/x86/turbostat/turbostat.c +++ b/tools/power/x86/turbostat/turbostat.c @@ -1472,8 +1472,16 @@ int delta_package(struct pkg_data *new, struct pkg_data *old) old->pc8 = new->pc8 - old->pc8; old->pc9 = new->pc9 - old->pc9; old->pc10 = new->pc10 - old->pc10; - old->cpu_lpi = new->cpu_lpi - old->cpu_lpi; - old->sys_lpi = new->sys_lpi - old->sys_lpi; + if (new->cpu_lpi > old->cpu_lpi) { + old->cpu_lpi = new->cpu_lpi - old->cpu_lpi; + } else { + old->cpu_lpi = 0; + } + if (new->sys_lpi > old->sys_lpi) { + old->sys_lpi = new->sys_lpi - old->sys_lpi; + } else { + old->sys_lpi = 0; + } old->pkg_temp_c = new->pkg_temp_c; /* flag an error when rc6 counter resets/wraps */ -- 2.25.1