From patchwork Tue Oct 10 20:32:13 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mathieu Poirier X-Patchwork-Id: 115471 Delivered-To: patch@linaro.org Received: by 10.80.163.170 with SMTP id s39csp3893269edb; Tue, 10 Oct 2017 13:32:40 -0700 (PDT) X-Received: by 10.101.78.209 with SMTP id w17mr13238102pgq.402.1507667560136; Tue, 10 Oct 2017 13:32:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1507667560; cv=none; d=google.com; s=arc-20160816; b=Bpv0gbmSE0P0k167x7V/cM3NK1c07Rk9VKtLlHUg7FeCG4tsj2pu0+zZ7xpY61N8SY rv5N8bYiT4f8kZGruuwiAniwT2qM3L6g9rXSg7WUTuDuSDxlECZqGAdQrxmbGpN4TwXP mdJ2pbgH7EGpvDII4z9+XGgHtv7CNuOMmjdrrxclhmwAbqML+mH3IPfrF57jDVOUEEHV /gzPgsx9L0FkMOucpoO5ZECcz94Pbltp/sA1hvS+nVjKkHE4jfKLJKlodu+fhUWOS6IT utxBWkFrrvVzUY7Dsp5ZEP03cDRoYpzkejKHtjwenpTqdcLl6zfceFvHpJWaUalKn3fh 98sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:arc-authentication-results; bh=NSkPgOHMupeJGejN5bIbj3gGlHEkG//qPA2Hf1mMb24=; b=KQT+Vd1XJduz4D3iwDGgmzE0T8KCDPIrlqcsO1PkCTk0ijPviNnoK9qle7OLVFHF+i J+Qpj4UWE+srzoTTjSAuIVdaEf2O2+p6DG+44mPzyhHDAAwTnDLa0VP4Jdavr02K24Pz K6e5MJXBST5ijvv+z0bxTL/BlgfHul8n8eNQD7NTwxkSzyXAr+sXcQQKsMz5jDrlucKs H3h7uWrnZMT78mWzWelNg4O564rzsNkBPk6CPJNjdCJi/0zHCHSVXk9PacVa73m5yBpl JuXD2huCyqWBQtlNgZeIXnwDZ1Gge5MNbpX/FWr+FdQFT1NEO1h3oGyrvkoiBkbStESn a8vg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=BNayLOhP; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b69si5888735pfe.523.2017.10.10.13.32.39; Tue, 10 Oct 2017 13:32:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=BNayLOhP; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934520AbdJJUch (ORCPT + 26 others); Tue, 10 Oct 2017 16:32:37 -0400 Received: from mail-io0-f177.google.com ([209.85.223.177]:57182 "EHLO mail-io0-f177.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756915AbdJJUcU (ORCPT ); Tue, 10 Oct 2017 16:32:20 -0400 Received: by mail-io0-f177.google.com with SMTP id m81so131347ioi.13 for ; Tue, 10 Oct 2017 13:32:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=NSkPgOHMupeJGejN5bIbj3gGlHEkG//qPA2Hf1mMb24=; b=BNayLOhP1DU3+STQUBpFJ7iCod5OwlYqL/E2qE1JYWriNc0xU3C+yoJjcbFE13bwa4 Xj9Ig6Kk3lCFxSR8DIlm0kwV2NSMZq/WW/ZVfmPSYMU/V873aPFJr8sMVwNYzsbFQPgO qru/d4BSFuPbfcojlq/lLKqifK8EvlHZfK5Uo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=NSkPgOHMupeJGejN5bIbj3gGlHEkG//qPA2Hf1mMb24=; b=sWA2Xqjqkb78DtpTBDoaksXhrlUK8DFKkBdDhhoXRhof6NHqnXkjVAd6VALet7JlNp W2wp1YbO+QlAa8WkIC4e/OuZkNbubBlqE4SzlXtC52TcjdlbeNwrVQM4MHyJZcytVWUQ 3jwoRQLCEZRx4p18scfT+M/RmmPCH+fFRXX3CpvUKcf/cKB93wIG5Q1rV5MH7PcUZ++b w4x5NiRXa/rWDTAakw9pW9BHJ1BKCx8WelLYBFC8SI5jxPdHRIrq2+eq9czinl+6U8Ei r8KDjwdEFEAD3Zan/hME/Qkt+wZMIWOqVZ1Sj3MdA5TeOHklqkXi2GS14cMswk3ULXdh 4nrw== X-Gm-Message-State: AMCzsaVFfB5HV4XfmJIZI4mPyJEYFy8U3MQQ8JEO4a/P4ygsU7QXF6jS s1z9ap3m/mRTeS/88xvbmmuVPg== X-Google-Smtp-Source: AOwi7QAd8f1hO+y00c3peXH866fKdcmTsE9KYU1pZ66/lt7/YxdCVjqSOzA28Th2/WMfW9wN4q5+oQ== X-Received: by 10.107.195.195 with SMTP id t186mr20382484iof.212.1507667539679; Tue, 10 Oct 2017 13:32:19 -0700 (PDT) Received: from xps15.cg.shawcable.net (S0106002369de4dac.cg.shawcable.net. [68.147.8.254]) by smtp.gmail.com with ESMTPSA id f14sm5689739itc.13.2017.10.10.13.32.18 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 10 Oct 2017 13:32:18 -0700 (PDT) From: Mathieu Poirier To: gregkh@linuxfoundation.org Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, mathieu.poirier@linaro.org Subject: [PATCH 2/2] doc: coresight: correct usage for disabling idle states Date: Tue, 10 Oct 2017 14:32:13 -0600 Message-Id: <1507667533-21707-3-git-send-email-mathieu.poirier@linaro.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1507667533-21707-1-git-send-email-mathieu.poirier@linaro.org> References: <1507667533-21707-1-git-send-email-mathieu.poirier@linaro.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Leo Yan In the coresight CPU debug document it suggests to use 'echo' command to set latency request to /dev/cpu_dma_latency so can disable all CPU idle states, but in fact this doesn't work. This is because when the command 'echo' exits, it releases the device node's file descriptor and the kernel release function removes the QoS constraint; finally when the command 'echo' finished there have no constraint imposed on cpu_dma_latency. This patch changes to use 'exec' to access '/dev/cpu_dma_latency', the command 'exec' can avoid the file descriptor to be closed so we can keep the constraint on cpu_dma_latency. This patch also adds the info for reference docs for PM QoS and cpuidle sysfs. Cc: Jonathan Corbet Cc: Sudeep Holla Reported-by: Kim Phillips Suggested-by: Mathieu Poirier Signed-off-by: Leo Yan Signed-off-by: Mathieu Poirier --- Documentation/trace/coresight-cpu-debug.txt | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) -- 2.7.4 diff --git a/Documentation/trace/coresight-cpu-debug.txt b/Documentation/trace/coresight-cpu-debug.txt index b3da1f90b861..2b9b51cd501e 100644 --- a/Documentation/trace/coresight-cpu-debug.txt +++ b/Documentation/trace/coresight-cpu-debug.txt @@ -149,11 +149,23 @@ If you want to limit idle states at boot time, you can use "nohlt" or At the runtime you can disable idle states with below methods: -Set latency request to /dev/cpu_dma_latency to disable all CPUs specific idle -states (if latency = 0uS then disable all idle states): -# echo "what_ever_latency_you_need_in_uS" > /dev/cpu_dma_latency - -Disable specific CPU's specific idle state: +It is possible to disable CPU idle states by way of the PM QoS +subsystem, more specifically by using the "/dev/cpu_dma_latency" +interface (see Documentation/power/pm_qos_interface.txt for more +details). As specified in the PM QoS documentation the requested +parameter will stay in effect until the file descriptor is released. +For example: + +# exec 3<> /dev/cpu_dma_latency; echo 0 >&3 +... +Do some work... +... +# exec 3<>- + +The same can also be done from an application program. + +Disable specific CPU's specific idle state from cpuidle sysfs (see +Documentation/cpuidle/sysfs.txt): # echo 1 > /sys/devices/system/cpu/cpu$cpu/cpuidle/state$state/disable