brintos

brintos / linux-shallow public Read only

0
0
Text · 1.6 KiB · 4509f0c Raw
84 lines · plain
1#!/bin/sh2# SPDX-License-Identifier: GPL-2.0-only3 4# common_tests - Shell script commonly used by pstore test scripts5#6# Copyright (C) Hitachi Ltd., 20157#  Written by Hiraku Toyooka <hiraku.toyooka.gu@hitachi.com>8#9 10# Utilities11errexit() { # message12    echo "Error: $1" 1>&213    exit 114}15 16absdir() { # file_path17    (cd `dirname $1`; pwd)18}19 20show_result() { # result_value21    if [ $1 -eq 0 ]; then22	prlog "ok"23    else24	prlog "FAIL"25	rc=126    fi27}28 29check_files_exist() { # type of pstorefs file30    if [ -e ${1}-${backend}-0 ]; then31	prlog "ok"32	for f in `ls ${1}-${backend}-*`; do33            prlog -e "\t${f}"34	done35    else36	prlog "FAIL"37	rc=138    fi39}40 41operate_files() { # tested value, files, operation42    if [ $1 -eq 0 ]; then43	prlog44	for f in $2; do45	    prlog -ne "\t${f} ... "46	    # execute operation47	    $3 $f48	    show_result $?49	done50    else51	prlog " ... FAIL"52	rc=153    fi54}55 56# Parameters57TEST_STRING_PATTERN="Testing pstore: uuid="58UUID=`cat /proc/sys/kernel/random/uuid`59TOP_DIR=`absdir $0`60LOG_DIR=$TOP_DIR/logs/`date +%Y%m%d-%H%M%S`_${UUID}/61REBOOT_FLAG=$TOP_DIR/reboot_flag62 63# Preparing logs64LOG_FILE=$LOG_DIR/`basename $0`.log65mkdir -p $LOG_DIR || errexit "Failed to make a log directory: $LOG_DIR"66date > $LOG_FILE67prlog() { # messages68    /bin/echo "$@" | tee -a $LOG_FILE69}70 71# Starting tests72rc=073prlog "=== Pstore unit tests (`basename $0`) ==="74prlog "UUID="$UUID75 76prlog -n "Checking pstore backend is registered ... "77backend=`cat /sys/module/pstore/parameters/backend`78show_result $?79prlog -e "\tbackend=${backend}"80prlog -e "\tcmdline=`cat /proc/cmdline`"81if [ $rc -ne 0 ]; then82    exit 183fi84