From patchwork Wed Jun 27 16:55:04 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: rajagopal.venkat@linaro.org X-Patchwork-Id: 9653 Return-Path: X-Original-To: patchwork@peony.canonical.com Delivered-To: patchwork@peony.canonical.com Received: from fiordland.canonical.com (fiordland.canonical.com [91.189.94.145]) by peony.canonical.com (Postfix) with ESMTP id BD84423E42 for ; Wed, 27 Jun 2012 16:55:27 +0000 (UTC) Received: from mail-gh0-f180.google.com (mail-gh0-f180.google.com [209.85.160.180]) by fiordland.canonical.com (Postfix) with ESMTP id 72255A1841D for ; Wed, 27 Jun 2012 16:55:27 +0000 (UTC) Received: by mail-gh0-f180.google.com with SMTP id z12so1232532ghb.11 for ; Wed, 27 Jun 2012 09:55:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-forwarded-to:x-forwarded-for:delivered-to:received-spf:from:to:cc :subject:date:message-id:x-mailer:x-gm-message-state; bh=1GiAOA+ZzLgHE8dlvTsbRw5p/Z7qtZ4UHlrfV+wusmw=; b=kzkEbCvItDXzdg0Id0wUspT3qfrxYBfjVXT7RX5k+odVVO0IawlZNLBz/ukIaGWD0x OcFPSIx/u3R0LUUm7tF7ULzKCU+BCVO9hFbWAYkQnE9f0U05QaIZ87nNi5x29zlXTepg A0vrotGMooQQsyo5+CFL8htY8n5sCJWhuGtszBc+e4PwmOq2/jvkVGtxAqJIe+3/fPX5 /VrFjXYlZyGD2UuWra5RydlRohs13fA4eNnqIQHPu96cA3nTC4QT0QkBn32rgNah3/3y 9+zxrmf2K4ej8Z1A3KGMpkFid2Ke7+oZK2LWO7ONEWxRZUh++QL4345Z1EF9tErz/n56 qoHQ== Received: by 10.50.163.99 with SMTP id yh3mr2326812igb.53.1340816126754; Wed, 27 Jun 2012 09:55:26 -0700 (PDT) X-Forwarded-To: linaro-patchwork@canonical.com X-Forwarded-For: patch@linaro.org linaro-patchwork@canonical.com Delivered-To: patches@linaro.org Received: by 10.231.24.148 with SMTP id v20csp17587ibb; Wed, 27 Jun 2012 09:55:26 -0700 (PDT) Received: by 10.68.232.161 with SMTP id tp1mr65974570pbc.44.1340816125447; Wed, 27 Jun 2012 09:55:25 -0700 (PDT) Received: from mail-pz0-f50.google.com (mail-pz0-f50.google.com [209.85.210.50]) by mx.google.com with ESMTPS id pv10si21588754pbb.4.2012.06.27.09.55.24 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 27 Jun 2012 09:55:25 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.210.50 is neither permitted nor denied by best guess record for domain of rajagopal.venkat@linaro.org) client-ip=209.85.210.50; Authentication-Results: mx.google.com; spf=neutral (google.com: 209.85.210.50 is neither permitted nor denied by best guess record for domain of rajagopal.venkat@linaro.org) smtp.mail=rajagopal.venkat@linaro.org Received: by danh15 with SMTP id h15so1960861dan.37 for ; Wed, 27 Jun 2012 09:55:24 -0700 (PDT) Received: by 10.68.242.162 with SMTP id wr2mr66465298pbc.125.1340816124223; Wed, 27 Jun 2012 09:55:24 -0700 (PDT) Received: from localhost.localdomain ([101.63.252.96]) by mx.google.com with ESMTPS id ip5sm15675222pbc.3.2012.06.27.09.55.19 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 27 Jun 2012 09:55:23 -0700 (PDT) From: Rajagopal Venkat To: linaro-dev@lists.linaro.org Cc: patches@linaro.org, Rajagopal Venkat Subject: [PATCH] pm-qa: run sanity check before running test cases Date: Wed, 27 Jun 2012 22:25:04 +0530 Message-Id: <1340816104-10167-1-git-send-email-rajagopal.venkat@linaro.org> X-Mailer: git-send-email 1.7.9.5 X-Gm-Message-State: ALoCoQmA2iLfNVA8SPn1iHnHHYpNSVZXRIchM6TkCroJK7VUWmJTD6qox4avCtLooN4hrJRr4lsx From: root run sanity test for each functionality if present. If functionality enabled, then run all respective test cases. This patch also adds sanity checks for cpuidle and sched_mc. Signed-off-by: Rajagopal Venkat --- Test.mk | 17 ++++++++++++++--- cpuidle/cpuidle_sanity.sh | 35 +++++++++++++++++++++++++++++++++++ cpuidle/cpuidle_sanity.txt | 1 + sched_mc/sched_sanity.sh | 35 +++++++++++++++++++++++++++++++++++ sched_mc/sched_sanity.txt | 1 + 5 files changed, 86 insertions(+), 3 deletions(-) create mode 100755 cpuidle/cpuidle_sanity.sh create mode 100644 cpuidle/cpuidle_sanity.txt create mode 100755 sched_mc/sched_sanity.sh create mode 100644 sched_mc/sched_sanity.txt diff --git a/Test.mk b/Test.mk index 1d69d7a..76f79b5 100644 --- a/Test.mk +++ b/Test.mk @@ -21,15 +21,22 @@ # Daniel Lezcano (IBM Corporation) # - initial API and implementation # - -TST=$(wildcard *.sh) +SNT=$(wildcard *sanity.sh) +TST=$(wildcard *[^(sanity)].sh) LOG=$(TST:.sh=.log) CFLAGS?=-g -Wall -pthread CC?=gcc SRC=$(wildcard *.c) EXEC=$(SRC:%.c=%) -check: uncheck $(EXEC) $(LOG) +check: run_tests + +SANITY_STATUS:= $(shell if test $(SNT) && test -f $(SNT); then \ + ./$(SNT); if test "$$?" -eq 0; then echo 0; else \ + echo 1; fi; else echo 1; fi) + +ifeq "$(SANITY_STATUS)" "1" +run_tests: uncheck $(EXEC) $(LOG) %.log: %.sh @echo "###" @@ -38,6 +45,10 @@ check: uncheck $(EXEC) $(LOG) @echo -n "### "; grep "URL :" ./$< | awk '/http/{print $$NF}' @echo "###" @./$< 2> $@ +else +run_tests: $(SNT) + @cat $(<:.sh=.txt) +endif clean: rm -f *.o $(EXEC) diff --git a/cpuidle/cpuidle_sanity.sh b/cpuidle/cpuidle_sanity.sh new file mode 100755 index 0000000..a8336fa --- /dev/null +++ b/cpuidle/cpuidle_sanity.sh @@ -0,0 +1,35 @@ +#!/bin/bash +# +# PM-QA validation test suite for the power management on Linux +# +# Copyright (C) 2011, Linaro Limited. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Contributors: +# Rajagopal Venkat +# - initial API and implementation +# + +source ../include/functions.sh + +check_cpuidle_sysfs_entry() { + + local dirpath=$CPU_PATH/cpuidle + + test -d $dirpath && return 1 || return 0 +} + +check_cpuidle_sysfs_entry diff --git a/cpuidle/cpuidle_sanity.txt b/cpuidle/cpuidle_sanity.txt new file mode 100644 index 0000000..03d3f7c --- /dev/null +++ b/cpuidle/cpuidle_sanity.txt @@ -0,0 +1 @@ +cpuidle is not enabled. Skipping all cpudile tests... diff --git a/sched_mc/sched_sanity.sh b/sched_mc/sched_sanity.sh new file mode 100755 index 0000000..1b1b58b --- /dev/null +++ b/sched_mc/sched_sanity.sh @@ -0,0 +1,35 @@ +#!/bin/bash +# +# PM-QA validation test suite for the power management on Linux +# +# Copyright (C) 2011, Linaro Limited. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# Contributors: +# Daniel Lezcano (IBM Corporation) +# - initial API and implementation +# + +source ../include/functions.sh + +check_sched_mc_sysfs_entry() { + + local filepath=$CPU_PATH/sched_mc_power_savings + + test -f $filepath && return 1 || return 0 +} + +check_sched_mc_sysfs_entry diff --git a/sched_mc/sched_sanity.txt b/sched_mc/sched_sanity.txt new file mode 100644 index 0000000..c79c23e --- /dev/null +++ b/sched_mc/sched_sanity.txt @@ -0,0 +1 @@ +sched_mc is not enabled. Skipping all sched_mc tests...