0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 echo $1
0011 preceding_lines="${2-3}"
0012 trailing_lines="${3-10}"
0013
0014 awk -v preceding_lines="$preceding_lines" -v trailing_lines="$trailing_lines" '
0015 suffix <= 0 {
0016 for (i = preceding_lines; i > 0; i--)
0017 last[i] = last[i - 1];
0018 last[0] = $0;
0019 }
0020
0021 suffix > 0 {
0022 print $0;
0023 suffix--;
0024 if (suffix <= 0)
0025 print "";
0026 }
0027
0028 suffix <= 0 && /detected stall/ {
0029 for (i = preceding_lines; i >= 0; i--)
0030 if (last[i] != "")
0031 print last[i];
0032 suffix = trailing_lines;
0033 }' < "$1" | tr -d '\015' | grep -v clocksource
0034