594
edits
Changes
Vvs uploaded a new version of File:Kernel patches stats.png
[[Category: Development]]
== Description ==
This graph shows how many patches from OpenVZ developers are were merged in into mainstreamLinux kernel, for per each kernel version.
It is done in drawn by gnuplot. Data using the data set produced by a simple shell script working on obtained from kernel git repository.
== Source code ==
=== Collect data ===
Here is the script to produce the data for the graph, called <code>count</code>:
<small><source lang="bash">
#!/bin/sh
# Return the date of the given tag, in a format usable by gnuplot
get_tag_date() {
}
done | sed 's/ /\t/g'
</source></small>
<small><source lang="bash">
#!/bin/sh
REPO=~/git/linux/.git
COUNT=$(pwd)/count
OUT=$(pwd)/time.dat
export GDFONTPATH=/usr/share/fonts/microsoft
export GIT_DIR=$REPO
if test "$1" != "-f"; then
fi
DATE=$(date tail -n 1 $OUT | cut -f 1 | awk -F- '+%d %b %Y{print $2,$1,$3}')MAXY=$(awk 'BEGIN {max=0}; ($3 > max) {max=$3}; END {print max+5080}' < time.dat)# GNU date is powerful!MAXX=$(date +%b-1-%Y --date='+2 months')
cat << EOF | gnuplot > plot.png
set terminal png transparent nocrop enhanced font verdanab 8 "verdana,13" size 6001600,4001200
set title "OpenVZ team kernel patches progress as of ${DATE}"
set timefmt "%b-%d-%Y"
set format x "%b\n%Y"
set grid xtics mxtics noytics
set xrange [ : "${MAXX}" ]
set yrange [ 0 : ${MAXY} ]
set ylabel "Number of patches from OpenVZ team,\n per kernel release, accepted into mainstream"
set border 3 # no lines at right and topset xtics nomirror # no tics at topset ytics nomirror # no tics at right
plot 'time.dat${OUT}' using 1:3 with linespoints pt 7 6 ps 1.5 lw 2 lt 2 notitle, \ '' using 1:3:2 with labels left offset 0,1 5.5 rotate notitle, \ '' using 1:3:3 with labels left offset 0.7,0 notitle
EOF
</source></small>