#!/bin/bash # 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, 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. # Author/Copyright(c): 2009, Thomas Renninger , Novell Inc. # Helper script to easily create nice plots of your cpufreq-bench results dir=`mktemp -d` output_file="cpufreq-bench.png" global_title="cpufreq-bench plot" picture_type="jpeg" file[0]="" function usage() { echo "cpufreq-bench_plot.sh [OPTIONS] logfile [measure_title] [logfile [measure_title]] ...]" echo echo "Options" echo " -o output_file" echo " -t global_title" echo " -p picture_type [jpeg|gif|png|postscript|...]" exit 1 } if [ $# -eq 0 ];then echo "No benchmark results file provided" echo usage fi while getopts o:t:p: name ; do case $name in o) output_file="$OPTARG".$picture_type ;; t) global_title="$OPTARG" ;; p) picture_type="$OPTARG" ;; ?) usage ;; esac done shift $(($OPTIND -1)) plots=0 while [ "$1" ];do if [ ! -f "$1" ];then echo "File $1 does not exist" usage fi file[$plots]="$1" title[$plots]="$2" # echo "File: ${file[$plots]} - ${title[plots]}" shift;shift plots=$((plots + 1)) done echo "set terminal $picture_type" >> $dir/plot_script.gpl echo "set output \"$output_file\"" >> $dir/plot_script.gpl echo "set title \"$global_title\"" >> $dir/plot_script.gpl echo "set xlabel \"sleep/load time\"" >> $dir/plot_script.gpl echo "set ylabel \"Performance (%)\"" >> $dir/plot_script.gpl for((plot=0;plot<$plots;plot++));do # Sanity check ###### I am to dump to get this redirected to stderr/stdout in one awk call... ##### cat ${file[$plot]} |grep -v "^#" |awk '{if ($2 != $3) printf("Error in measure %d:Load time %s does not equal sleep time %s, plot will not be correct\n", $1, $2, $3); ERR=1}' ###### I am to dump to get this redirected in one awk call... ##### # Parse out load time (which must be equal to sleep time for a plot), divide it by 1000 # to get ms and parse out the performance in percentage and write it to a temp file for plotting cat ${file[$plot]} |grep -v "^#" |awk '{printf "%lu %.1f\n",$2/1000, $6}' >$dir/data_$plot if [ $plot -eq 0 ];then echo -n "plot " >> $dir/plot_script.gpl fi echo -n "\"$dir/data_$plot\" title \"${title[$plot]}\" with lines" >> $dir/plot_script.gpl if [ $(($plot + 1)) -ne $plots ];then echo -n ", " >> $dir/plot_script.gpl fi done echo >> $dir/plot_script.gpl gnuplot $dir/plot_script.gpl rm -r $dir-panel'>diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-01-01 12:27:05 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2017-01-01 12:27:05 -0800
commit4759d386d55fef452d692bf101167914437e848e (patch)
treee7109c192ec589fcea2a98f9702aa3c0e4009581 /fs/autofs4/inode.c
parent238d1d0f79f619d75c2cc741d6770fb0986aef24 (diff)
parent1db175428ee374489448361213e9c3b749d14900 (diff)
Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm
Pull DAX updates from Dan Williams: "The completion of Jan's DAX work for 4.10. As I mentioned in the libnvdimm-for-4.10 pull request, these are some final fixes for the DAX dirty-cacheline-tracking invalidation work that was merged through the -mm, ext4, and xfs trees in -rc1. These patches were prepared prior to the merge window, but we waited for 4.10-rc1 to have a stable merge base after all the prerequisites were merged. Quoting Jan on the overall changes in these patches: "So I'd like all these 6 patches to go for rc2. The first three patches fix invalidation of exceptional DAX entries (a bug which is there for a long time) - without these patches data loss can occur on power failure even though user called fsync(2). The other three patches change locking of DAX faults so that ->iomap_begin() is called in a more relaxed locking context and we are safe to start a transaction there for ext4" These have received a build success notification from the kbuild robot, and pass the latest libnvdimm unit tests. There have not been any -next releases since -rc1, so they have not appeared there" * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: ext4: Simplify DAX fault path dax: Call ->iomap_begin without entry lock during dax fault dax: Finish fault completely when loading holes dax: Avoid page invalidation races and unnecessary radix tree traversals mm: Invalidate DAX radix tree entries only if appropriate ext2: Return BH_New buffers for zeroed blocks
Diffstat (limited to 'fs/autofs4/inode.c')