From patchwork Mon Jul 2 14:08:40 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: 9742 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 D2E3D23E56 for ; Mon, 2 Jul 2012 14:09:04 +0000 (UTC) Received: from mail-gg0-f180.google.com (mail-gg0-f180.google.com [209.85.161.180]) by fiordland.canonical.com (Postfix) with ESMTP id 78B5FA18203 for ; Mon, 2 Jul 2012 14:09:04 +0000 (UTC) Received: by ggnf1 with SMTP id f1so4452820ggn.11 for ; Mon, 02 Jul 2012 07:09:04 -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=vZuTcTZQckR4pdAwBOc8VaWqXF29WRRmOn4WruyfG+w=; b=GB40vdTRov3WI7VvfbVrwu5MVv5MCEfKfmoYSzV5QOZ41mHegohjm2ygUiO4b93mgX B9xF4EDfYjDoC4DbNDBVg+NGGs6qF5wLxRflK5DH7GPcDzcq5its7+KqicbPFHa2tAsa tFakBFuzXlrwYO6txPZGocuEJeaRuG/MxgOVPuSF6l6r+K2IQj2weYsrq09EijPnxu63 oDABWgCRSV2y29UPDyArWEK9S0WO+Y7fHswCLpAoXM/Wt/w8DCTW/45if4V7dL/ECmVd Dktuo/rnlGpWEREnNik+9INIWHrK5GbKrZ6sB3IYGAtZvAmrBOkqin9IHDR/Dy/XlpE8 vU9g== Received: by 10.50.203.39 with SMTP id kn7mr7332247igc.53.1341238143745; Mon, 02 Jul 2012 07:09:03 -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 v20csp23424ibb; Mon, 2 Jul 2012 07:09:03 -0700 (PDT) Received: by 10.236.78.195 with SMTP id g43mr15637189yhe.62.1341238143017; Mon, 02 Jul 2012 07:09:03 -0700 (PDT) Received: from mail-yx0-f178.google.com (mail-yx0-f178.google.com [209.85.213.178]) by mx.google.com with ESMTPS id b26si9785736yhe.46.2012.07.02.07.09.02 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 02 Jul 2012 07:09:03 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.213.178 is neither permitted nor denied by best guess record for domain of rajagopal.venkat@linaro.org) client-ip=209.85.213.178; Authentication-Results: mx.google.com; spf=neutral (google.com: 209.85.213.178 is neither permitted nor denied by best guess record for domain of rajagopal.venkat@linaro.org) smtp.mail=rajagopal.venkat@linaro.org Received: by yenl6 with SMTP id l6so4878499yen.37 for ; Mon, 02 Jul 2012 07:09:02 -0700 (PDT) Received: by 10.66.79.100 with SMTP id i4mr21649184pax.78.1341238142287; Mon, 02 Jul 2012 07:09:02 -0700 (PDT) Received: from localhost.localdomain ([101.63.138.106]) by mx.google.com with ESMTPS id pp2sm12323414pbb.1.2012.07.02.07.08.58 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 02 Jul 2012 07:09:01 -0700 (PDT) From: Rajagopal Venkat To: linaro-dev@lists.linaro.org Cc: patches@linaro.org, Rajagopal Venkat Subject: [PATCH v2] pm-qa: run sanity check before running test cases Date: Mon, 2 Jul 2012 19:38:40 +0530 Message-Id: <1341238120-3416-1-git-send-email-rajagopal.venkat@linaro.org> X-Mailer: git-send-email 1.7.9.5 X-Gm-Message-State: ALoCoQkOr8DWMxqL5oBVSDp8nh9qJL8IncQNMB3vbiOM3h3vVuod+Vlmn2diLA8GuNiwYxyBuZhK 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...