diff --git a/bin/pt-mysql-summary b/bin/pt-mysql-summary index a94c2a0c..28d9f42b 100755 --- a/bin/pt-mysql-summary +++ b/bin/pt-mysql-summary @@ -18,6 +18,7 @@ set -u set -u +PTFUNCNAME="" PTDEBUG="${PTDEBUG:-""}" EXIT_STATUS=0 @@ -37,7 +38,7 @@ die() { } _d () { - [ "$PTDEBUG" ] && echo "# $(log "$@")" >&2 + [ "$PTDEBUG" ] && echo "# $PTFUNCNAME: $(log "$*")" >&2 } # ########################################################################### @@ -537,11 +538,11 @@ fuzzy_formula=' }' fuzz () { - echo $1 | awk "{fuzzy_var=\$1; ${fuzzy_formula} print fuzzy_var;}" + awk -v fuzzy_var="$1" "BEGIN { ${fuzzy_formula} print fuzzy_var;}" } fuzzy_pct () { - local pct="$(echo $1 $2 | awk '{ if ($2 > 0) { printf "%d", $1/$2*100; } else {print 0} }')"; + local pct="$(awk -v one="$1" -v two="$2" 'BEGIN{ if (two > 0) { printf "%d", one/two*100; } else {print 0} }')"; echo "$(fuzz "${pct}")%" } @@ -601,6 +602,10 @@ group_concat () { set -u +CMD_FILE="$( _which file 2>/dev/null )" +CMD_NM="$( _which nm 2>/dev/null )" +CMD_OBJDUMP="$( _which objdump 2>/dev/null )" + get_nice_of_pid () { local pid="$1" local niceness=$(ps -p $pid -o nice | tail -n+2 | awk '{print $1; exit;}') @@ -660,10 +665,6 @@ get_oom_of_pid () { fi } -CMD_FILE="$( _which file 2>/dev/null )" -CMD_NM="$( _which nm 2>/dev/null )" -CMD_OBJDUMP="$( _which objdump 2>/dev/null )" - has_symbols () { local executable="$(_which "$1")" local has_symbols="" @@ -685,10 +686,8 @@ has_symbols () { if [ "${has_symbols}" ]; then echo "Yes" - return 0 else echo "No" - return 1 fi } @@ -708,12 +707,16 @@ setup_data_dir () { echo "$data_dir" } -_GET_VAR_DEFAULT=0 get_var () { local varname="$1" local file="$2" - local v="$(awk "\$1 ~ /^${varname}$/ { print \$2 }" "${file}")" - echo "${v:-$_GET_VAR_DEFAULT}" + local v="$(awk "\$1 ~ /^${varname}$/ { if (length(\$2)) { print substr(\$0, index(\$0,\$2)) } }" "${file}")" + if [ -n "$v" ]; then + echo "$v" + return 0 + else + return 1 + fi } # ########################################################################### @@ -731,6 +734,9 @@ get_var () { +CMD_MYSQL="${CMD_MYSQL:-""}" +CMD_MYSQLDUMP="${CMD_MYSQLDUMP:-""}" + collect_mysqld_instances () { local file="$1" ps auxww 2>/dev/null | grep mysqld > "$file" @@ -738,7 +744,7 @@ collect_mysqld_instances () { find_my_cnf_file() { local file="$1" - local port=${2:-""} + local port="${2:-""}" local cnf_file="" if test -n "$port" && grep -- "/mysqld.*--port=$port" "${file}" >/dev/null 2>&1 ; then @@ -802,7 +808,7 @@ collect_mysql_processlist () { collect_mysql_users () { local file="$1" - $CMD_MYSQL $EXT_ARGV -ssE -e 'SELECT COUNT(*), SUM(user=""), SUM(password=""), SUM(password NOT LIKE "*%") FROM mysql.user' > "$file" 2>/dev/null + $CMD_MYSQL $EXT_ARGV -ss -e 'SELECT COUNT(*), SUM(user=""), SUM(password=""), SUM(password NOT LIKE "*%") FROM mysql.user' > "$file" 2>/dev/null } collect_master_logs_status () { @@ -933,22 +939,20 @@ collect_mysql_info () { set -u +POSIXLY_CORRECT=1 secs_to_time () { - echo "$1" | awk '{ - printf( "%d+%02d:%02d:%02d", $1 / 86400, ($1 % 86400) / 3600, ($1 % 3600) / 60, $1 % 60); + awk -v sec="$1" 'BEGIN { + printf( "%d+%02d:%02d:%02d", sec / 86400, (sec % 86400) / 3600, (sec % 3600) / 60, sec % 60); }' } -var_exists () { - local varname="$1" - local file="$2" - grep "${varname}" "${file}" >/dev/null 2>&1; -} - feat_on() { local file="$1" - if var_exists "$2" "${file}" ; then + + test ! -e "$file" && return + + if get_var "$2" "${file}" 1>/dev/null 2>&1 ; then local var="$(awk "\$1 ~ /^$2$/ { print \$2 }" $file)" if [ "${var}" = "ON" ]; then echo "Enabled" @@ -978,8 +982,11 @@ feat_on() { get_table_cache () { local file="$1" + + test ! -e "$file" && return + local table_cache="" - if var_exists table_open_cache "${file}"; then + if get_var table_open_cache "${file}" 1>/dev/null 2>&1; then table_cache="$(get_var table_open_cache "${file}")" else table_cache="$(get_var table_cache "${file}")" @@ -1003,8 +1010,11 @@ parse_mysqld_instances () { local socket=${socket:-""} local port=${port:-""} local datadir="${datadir:-""}" - echo " Port Data Directory Nice OOM Value Socket" - echo " ===== ========================== ==== ========= ======" + + test ! -e "$file" && return + + echo " Port Data Directory Nice OOM Socket" + echo " ===== ========================== ==== === ======" grep '/mysqld ' "$file" | while read line; do local pid=$(echo "$line" | awk '{print $2;}') @@ -1025,12 +1035,15 @@ parse_mysqld_instances () { nice="?" oom="?" fi - printf " %5s %-26s %-4s %-9s %s\n" "${port}" "${datadir}" "${nice}" "${oom}" "${socket}" + printf " %5s %-26s %-4s %-3s %s\n" "${port}" "${datadir}" "${nice}" "${oom}" "${socket}" done } get_mysql_timezone () { - local file="${1:-$MYSQL_VARIABLES_FILE}" + local file="$1" + + test ! -e "$file" && return + local tz="$(get_var time_zone "${file}")" if [ "${tz}" = "SYSTEM" ]; then tz="$(get_var system_time_zone "${file}")" @@ -1040,6 +1053,7 @@ get_mysql_timezone () { get_mysql_version () { local file="$1" + name_val Version "$(get_var version "${file}") $(get_var version_comment "${file}")" name_val "Built On" "$(get_var version_compile_os "${file}") $(get_var version_compile_machine "${file}")" } @@ -1053,6 +1067,9 @@ get_mysql_uptime () { summarize_binlogs () { local file="$1" + + test ! -e "$file" && return + local size="$(awk '{t += $2} END{printf "%0.f\n", t}' "$file")" name_val "Binlogs" $(wc -l "$file") name_val "Zero-Sized" $(grep -c '\<0$' "$file") @@ -1061,17 +1078,21 @@ summarize_binlogs () { format_users () { local file="$1" + test ! -e "$file" && return awk '{printf "%d users, %d anon, %d w/o pw, %d old pw\n", $1, $2, $3, $4}' "${file}" } format_binlog_filters () { local file="$1" + test ! -e "$file" && return name_val "binlog_do_db" "$(cut -f3 "$file")" name_val "binlog_ignore_db" "$(cut -f4 "$file")" } format_status_variables () { local file="$1" + test ! -e "$file" && return + utime1="$(awk '/Uptime /{print $2}' "$file")"; utime2="$(awk '/Uptime /{print $3}' "$file")"; awk " @@ -1115,6 +1136,9 @@ format_status_variables () { summarize_processlist () { local file="$1" + + test ! -e "$file" && return + for param in Command User Host db State; do echo printf ' %-30s %8s %7s %9s %9s\n' \ @@ -1164,16 +1188,19 @@ summarize_processlist () { pretty_print_cnf_file () { local file="$1" + + test ! -e "$file" && return + awk ' BEGIN { FS="=" } - /^ *[a-zA-Z[]/ { + /^[ \t]*[a-zA-Z[]/ { if (length($2)) { - gsub(/^[ ]*/, "", $1); - gsub(/^[ ]*/, "", $2); - gsub(/[ ]*$/, "", $1); - gsub(/[ ]*$/, "", $2); + gsub(/^[ \t]*/, "", $1); + gsub(/^[ \t]*/, "", $2); + gsub(/[ \t]*$/, "", $1); + gsub(/[ \t]*$/, "", $2); printf("%-35s = %s\n", $1, $2); } else if ( $0 ~ /\[/ ) { @@ -1210,6 +1237,9 @@ find_checkpoint_age() { find_pending_io_reads() { local file="$1" + + test ! -e "$file" && return + awk ' /Pending normal aio reads/ { normal_aio_reads = substr($5, 1, index($5, ",")); @@ -1232,6 +1262,9 @@ find_pending_io_reads() { find_pending_io_writes() { local file="$1" + + test ! -e "$file" && return + awk ' /aio writes/ { aio_writes = substr($NF, 1, index($NF, ",")); @@ -1260,6 +1293,9 @@ find_pending_io_writes() { find_pending_io_flushes() { local file="$1" + + test ! -e "$file" && return + awk ' /Pending flushes/ { log_flushes = substr($5, 1, index($5, ";")); @@ -1273,6 +1309,9 @@ find_pending_io_flushes() { summarize_undo_log_entries() { local file="$1" + + test ! -e "$file" && return + grep 'undo log entries' "${file}" \ | sed -e 's/^.*undo log entries \([0-9]*\)/\1/' \ | awk ' @@ -1290,6 +1329,9 @@ summarize_undo_log_entries() { find_max_trx_time() { local file="$1" + + test ! -e "$file" && return + awk ' BEGIN { max = 0; @@ -1312,6 +1354,9 @@ find_max_trx_time() { find_transation_states () { local file="$1" local tmpfile="$TMPDIR/find_transation_states.tmp" + + test ! -e "$file" && return + awk -F, '/^---TRANSACTION/{print $2}' "${file}" \ | sed -e 's/ [0-9]* sec.*//' \ | sort \ @@ -1321,6 +1366,9 @@ find_transation_states () { format_innodb_status () { local file=$1 + + test ! -e "$file" && return + name_val "Checkpoint Age" "$(shorten $(find_checkpoint_age "${file}") 0)" name_val "InnoDB Queue" "$(awk '/queries inside/{print}' "${file}")" name_val "Oldest Transaction" "$(find_max_trx_time "${file}") Seconds"; @@ -1357,6 +1405,9 @@ format_innodb_status () { format_overall_db_stats () { local file="$1" local tmpfile="$TMPDIR/format_overall_db_stats.tmp" + + test ! -e "$file" && return + echo awk ' BEGIN { @@ -1633,6 +1684,9 @@ format_overall_db_stats () { section_percona_server_features () { local file="$1" + + test ! -e "$file" && return + name_val "Table & Index Stats" \ "$(feat_on "$file" userstat_running)" name_val "Multiple I/O Threads" \ @@ -1663,13 +1717,15 @@ section_myisam () { local variables_file="$1" local status_file="$2" - local buf_size=$(get_var key_buffer_size "$variables_file") - local blk_size=$(get_var key_cache_block_size "$variables_file") - local blk_unus=$(get_var Key_blocks_unused "$status_file") - local blk_unfl=$(get_var Key_blocks_not_flushed "$variables_file") - local unus=$((${blk_unus} * ${blk_size})) - local unfl=$((${blk_unfl} * ${blk_size})) - local used=$((${buf_size} - ${unus})) + test ! -e "$variables_file" -o ! -e "$status_file" && return + + local buf_size="$(get_var key_buffer_size "$variables_file")" + local blk_size="$(get_var key_cache_block_size "$variables_file")" + local blk_unus="$(get_var Key_blocks_unused "$status_file")" + local blk_unfl="$(get_var Key_blocks_not_flushed "$variables_file")" + local unus=$((${blk_unus:-0} * ${blk_size:-0})) + local unfl=$((${blk_unfl:-0} * ${blk_size:-0})) + local used=$((${buf_size:-0} - ${unus})) name_val "Key Cache" "$(shorten ${buf_size} 1)" name_val "Pct Used" "$(fuzzy_pct ${used} ${buf_size})" @@ -1680,11 +1736,13 @@ section_innodb () { local variables_file="$1" local status_file="$2" + test ! -e "$variables_file" -o ! -e "$status_file" && return + local version=$(get_var innodb_version "$variables_file") name_val Version ${version:-default} local bp_size="$(get_var innodb_buffer_pool_size "$variables_file")" - name_val "Buffer Pool Size" "$(shorten ${bp_size} 1)" + name_val "Buffer Pool Size" "$(shorten "${bp_size:-0}" 1)" local bp_pags="$(get_var Innodb_buffer_pool_pages_total "$status_file")" local bp_free="$(get_var Innodb_buffer_pool_pages_free "$status_file")" @@ -1698,7 +1756,7 @@ section_innodb () { local log_size="$(get_var innodb_log_file_size "$variables_file")" local log_file="$(get_var innodb_log_files_in_group "$variables_file")" - local log_total=$(echo 1 | awk "{printf \"%.2f\n\", ${log_size}*${log_file}}" ) + local log_total=$(awk "BEGIN {printf \"%.2f\n\", ${log_size}*${log_file}}" ) name_val "Log File Size" \ "${log_file} * $(shorten ${log_size} 1 1000) = $(shorten ${log_total} 1 1000)" name_val "Log Buffer Size" \ @@ -1735,23 +1793,25 @@ section_innodb () { section_noteworthy_variables () { local file="$1" + test ! -e "$file" && return + name_val "Auto-Inc Incr/Offset" "$(get_var auto_increment_increment "$file")/$(get_var auto_increment_offset "$file")" for v in \ default_storage_engine flush_time init_connect init_file sql_mode; do - name_val ${v} $(get_var ${v} "$file") + name_val "${v}" "$(get_var ${v} "$file")" done for v in \ join_buffer_size sort_buffer_size read_buffer_size read_rnd_buffer_size \ bulk_insert_buffer max_heap_table_size tmp_table_size \ max_allowed_packet thread_stack; do - name_val ${v} $(shorten $(get_var ${v} "$file") 0) + name_val "${v}" "$(shorten $(get_var ${v} "$file") 0)" done for v in log log_error log_warnings log_slow_queries \ log_queries_not_using_indexes log_slave_updates; do - name_val ${v} $(get_var ${v} "$file") + name_val "${v}" "$(get_var ${v} "$file")" done } @@ -1759,6 +1819,8 @@ _semi_sync_stats_for () { local target="$1" local file="$2" + test ! -e "$file" && return + local semisync_status="$(get_var "Rpl_semi_sync_${target}_status" "${file}" )" local semisync_trace="$(get_var "rpl_semi_sync_${target}_trace_level" "${file}")" @@ -1848,7 +1910,7 @@ report_mysql_summary () { local user="$(get_var "pt-summary-internal-user" "$dir/${prefix}-mysql-variables")" local port="$(get_var port "$dir/${prefix}-mysql-variables")" - local now="$(get_var "pt-summary-internal-NOW" "$dir/${prefix}-mysql-variables")" + local now="$(get_var "pt-summary-internal-now" "$dir/${prefix}-mysql-variables")" section "Report_On_Port_${port}" name_val User "${user}" name_val Time "${now} ($(get_mysql_timezone "$dir/${prefix}-mysql-variables"))" @@ -1856,7 +1918,7 @@ report_mysql_summary () { get_mysql_version "$dir/${prefix}-mysql-variables" local uptime="$(get_var Uptime "$dir/${prefix}-mysql-status")" - local current_time="$(get_var "pt-summary-internal-current_time" "$dir/${prefix}-mysql-status")" + local current_time="$(get_var "pt-summary-internal-current_time" "$dir/${prefix}-mysql-variables")" name_val Started "$(get_mysql_uptime "${uptime}" "${current_time}")" local num_dbs="$(grep -c . "$dir/${prefix}-mysql-databases")" @@ -1983,27 +2045,32 @@ report_mysql_summary () { name_val "Partitioning" No fi fi - if [ "$(get_var Ssl_accepts "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local ssl="$(get_var Ssl_accepts "$dir/${prefix}-mysql-status")" + if [ -n "$ssl" -a "${ssl:-0}" -gt 0 ]; then name_val "SSL" Yes else name_val "SSL" No fi - if [ "$(get_var Com_lock_tables "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local lock_tables="$(get_var Com_lock_tables "$dir/${prefix}-mysql-status")" + if [ -n "$lock_tables" -a "${lock_tables:-0}" -gt 0 ]; then name_val "Explicit LOCK TABLES" Yes else name_val "Explicit LOCK TABLES" No fi - if [ "$(get_var Delayed_writes "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local delayed_insert="$(get_var Delayed_writes "$dir/${prefix}-mysql-status")" + if [ -n "$delayed_insert" -a "${delayed_insert:-0}" -gt 0 ]; then name_val "Delayed Insert" Yes else name_val "Delayed Insert" No fi - if [ "$(get_var Com_xa_start "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local xat="$(get_var Com_xa_start "$dir/${prefix}-mysql-status")" + if [ -n "$xat" -a "${xat:-0}" -gt 0 ]; then name_val "XA Transactions" Yes else name_val "XA Transactions" No fi - if [ "$(get_var Ndb_cluster_node_id "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local ndb_cluster="$(get_var Ndb_cluster_node_id "$dir/${prefix}-mysql-status")" + if [ -n "$ndb_cluster" -a "${ndb_cluster:-0}" -gt 0 ]; then name_val "NDB Cluster" Yes else name_val "NDB Cluster" No @@ -2020,7 +2087,7 @@ report_mysql_summary () { fi section InnoDB - local have_innodb=$(get_var have_innodb "$dir/${prefix}-mysql-variables") + local have_innodb="$(get_var have_innodb "$dir/${prefix}-mysql-variables")" if [ "${have_innodb}" = "YES" ]; then section_innodb "$dir/${prefix}-mysql-variables" "$dir/${prefix}-mysql-status" @@ -2044,9 +2111,9 @@ report_mysql_summary () { summarize_binlogs "$dir/${prefix}-mysql-master-logs" local format="$(get_var binlog_format "$dir/${prefix}-mysql-variables")" name_val binlog_format "${format:-STATEMENT}" - name_val expire_logs_days $(get_var expire_logs_days "$dir/${prefix}-mysql-variables") - name_val sync_binlog $(get_var sync_binlog "$dir/${prefix}-mysql-variables") - name_val server_id $(get_var server_id "$dir/${prefix}-mysql-variables") + name_val expire_logs_days "$(get_var expire_logs_days "$dir/${prefix}-mysql-variables")" + name_val sync_binlog "$(get_var sync_binlog "$dir/${prefix}-mysql-variables")" + name_val server_id "$(get_var server_id "$dir/${prefix}-mysql-variables")" format_binlog_filters "$dir/${prefix}-mysql-master-status" fi diff --git a/bin/pt-summary b/bin/pt-summary old mode 100755 new mode 100644 index b4bfd9b3..4e07229d --- a/bin/pt-summary +++ b/bin/pt-summary @@ -4,18 +4,661 @@ # See "COPYRIGHT, LICENSE, AND WARRANTY" at the end of this file for legal # notices and disclaimers. +ARGS="$@" # For NetBSD's sh + +set -u + # ######################################################################## # Globals, settings, helper functions # ######################################################################## +TOOL="pt-summary" +POSIXLY_CORRECT=1 +export POSIXLY_CORRECT + +PT_SUMMARY_SKIP="${PT_SUMMARY_SKIP:-""}" + +# ########################################################################### +# log_warn_die package +# This package is a copy without comments from the original. The original +# with comments and its test file can be found in the Bazaar repository at, +# lib/bash/log_warn_die.sh +# t/lib/bash/log_warn_die.sh +# See https://launchpad.net/percona-toolkit for more information. +# ########################################################################### + + +set -u + +PTFUNCNAME="" +PTDEBUG="${PTDEBUG:-""}" +EXIT_STATUS=0 + +log() { + TS=$(date +%F-%T | tr :- _); + echo "$TS $*" +} + +warn() { + log "$*" >&2 + EXIT_STATUS=1 +} + +die() { + warn "$*" + exit 1 +} + +_d () { + [ "$PTDEBUG" ] && echo "# $PTFUNCNAME: $(log "$*")" >&2 +} + +# ########################################################################### +# End log_warn_die package +# ########################################################################### + +# ########################################################################### +# parse_options package +# This package is a copy without comments from the original. The original +# with comments and its test file can be found in the Bazaar repository at, +# lib/bash/parse_options.sh +# t/lib/bash/parse_options.sh +# See https://launchpad.net/percona-toolkit for more information. +# ########################################################################### + + + + + +set -u + +ARGV="" # Non-option args (probably input files) +EXT_ARGV="" # Everything after -- (args for an external command) +HAVE_EXT_ARGV="" # Got --, everything else is put into EXT_ARGV +OPT_ERRS=0 # How many command line option errors +OPT_VERSION="" # If --version was specified +OPT_HELP="" # If --help was specified +PO_DIR="" # Directory with program option spec files + +usage() { + local file="$1" + + local usage=$(grep '^Usage: ' "$file") + echo $usage + echo + echo "For more information, 'man $TOOL' or 'perldoc $file'." +} + +usage_or_errors() { + local file="$1" + + if [ "$OPT_VERSION" ]; then + local version=$(grep '^pt-[^ ]\+ [0-9]' "$file") + echo "$version" + return 1 + fi + + if [ "$OPT_HELP" ]; then + usage "$file" + echo + echo "Command line options:" + echo + perl -e ' + use strict; + use warnings FATAL => qw(all); + my $lcol = 20; # Allow this much space for option names. + my $rcol = 80 - $lcol; # The terminal is assumed to be 80 chars wide. + my $name; + while ( <> ) { + my $line = $_; + chomp $line; + if ( $line =~ s/^long:/ --/ ) { + $name = $line; + } + elsif ( $line =~ s/^desc:// ) { + $line =~ s/ +$//mg; + my @lines = grep { $_ } + $line =~ m/(.{0,$rcol})(?:\s+|\Z)/g; + if ( length($name) >= $lcol ) { + print $name, "\n", (q{ } x $lcol); + } + else { + printf "%-${lcol}s", $name; + } + print join("\n" . (q{ } x $lcol), @lines); + print "\n"; + } + } + ' "$PO_DIR"/* + echo + echo "Options and values after processing arguments:" + echo + for opt in $(ls "$PO_DIR"); do + local varname="OPT_$(echo "$opt" | tr a-z- A-Z_)" + local varvalue="${!varname}" + printf -- " --%-30s %s" "$opt" "${varvalue:-(No value)}" + echo + done + return 1 + fi + + if [ $OPT_ERRS -gt 0 ]; then + echo + usage "$file" + return 1 + fi + + return 0 +} + +option_error() { + local err="$1" + OPT_ERRS=$(($OPT_ERRS + 1)) + echo "$err" >&2 +} + +parse_options() { + local file="$1" + shift + + ARGV="" + EXT_ARGV="" + HAVE_EXT_ARGV="" + OPT_ERRS=0 + OPT_VERSION="" + OPT_HELP="" + PO_DIR="$TMPDIR/po" + + if [ ! -d "$PO_DIR" ]; then + mkdir "$PO_DIR" + if [ $? -ne 0 ]; then + echo "Cannot mkdir $PO_DIR" >&2 + exit 1 + fi + fi + + rm -rf "$PO_DIR"/* + if [ $? -ne 0 ]; then + echo "Cannot rm -rf $PO_DIR/*" >&2 + exit 1 + fi + + _parse_pod "$file" # Parse POD into program option (po) spec files + _eval_po # Eval po into existence with default values + + if [ $# -ge 2 ] && [ "$1" = "--config" ]; then + shift # --config + local user_config_files="$1" + shift # that ^ + local IFS="," + for user_config_file in $user_config_files; do + _parse_config_files "$user_config_file" + done + else + _parse_config_files "/etc/percona-toolkit/percona-toolkit.conf" "/etc/percona-toolkit/$TOOL.conf" "$HOME/.percona-toolkit.conf" "$HOME/.$TOOL.conf" + fi + + _parse_command_line "$@" +} + +_parse_pod() { + local file="$1" + + cat "$file" | PO_DIR="$PO_DIR" perl -ne ' + BEGIN { $/ = ""; } + next unless $_ =~ m/^=head1 OPTIONS/; + while ( defined(my $para = <>) ) { + last if $para =~ m/^=head1/; + chomp; + if ( $para =~ m/^=item --(\S+)/ ) { + my $opt = $1; + my $file = "$ENV{PO_DIR}/$opt"; + open my $opt_fh, ">", $file or die "Cannot open $file: $!"; + print $opt_fh "long:$opt\n"; + $para = <>; + chomp; + if ( $para =~ m/^[a-z ]+:/ ) { + map { + chomp; + my ($attrib, $val) = split(/: /, $_); + print $opt_fh "$attrib:$val\n"; + } split(/; /, $para); + $para = <>; + chomp; + } + my ($desc) = $para =~ m/^([^?.]+)/; + print $opt_fh "desc:$desc.\n"; + close $opt_fh; + } + } + last; + ' +} + +_eval_po() { + local IFS=":" + for opt_spec in "$PO_DIR"/*; do + local opt="" + local default_val="" + local neg=0 + local size=0 + while read key val; do + case "$key" in + long) + opt=$(echo $val | sed 's/-/_/g' | tr [:lower:] [:upper:]) + ;; + default) + default_val="$val" + ;; + "short form") + ;; + type) + [ "$val" = "size" ] && size=1 + ;; + desc) + ;; + negatable) + if [ "$val" = "yes" ]; then + neg=1 + fi + ;; + *) + echo "Invalid attribute in $opt_spec: $line" >&2 + exit 1 + esac + done < "$opt_spec" + + if [ -z "$opt" ]; then + echo "No long attribute in option spec $opt_spec" >&2 + exit 1 + fi + + if [ $neg -eq 1 ]; then + if [ -z "$default_val" ] || [ "$default_val" != "yes" ]; then + echo "Option $opt_spec is negatable but not default: yes" >&2 + exit 1 + fi + fi + + if [ $size -eq 1 -a -n "$default_val" ]; then + default_val=$(size_to_bytes $default_val) + fi + + eval "OPT_${opt}"="$default_val" + done +} + +_parse_config_files() { + + for config_file in "$@"; do + test -f "$config_file" || continue + + while read config_opt; do + + echo "$config_opt" | grep '^[ ]*[^#]' >/dev/null 2>&1 || continue + + config_opt="$(echo "$config_opt" | sed -e 's/^ *//g' -e 's/ *$//g' -e 's/[ ]*=[ ]*/=/' -e 's/[ ]*#.*$//')" + + [ "$config_opt" = "" ] && continue + + if ! [ "$HAVE_EXT_ARGV" ]; then + config_opt="--$config_opt" + fi + + _parse_command_line "$config_opt" + + done < "$config_file" + + HAVE_EXT_ARGV="" # reset for each file + + done +} + +_parse_command_line() { + local opt="" + local val="" + local next_opt_is_val="" + local opt_is_ok="" + local opt_is_negated="" + local real_opt="" + local required_arg="" + local spec="" + + for opt in "$@"; do + if [ "$opt" = "--" -o "$opt" = "----" ]; then + HAVE_EXT_ARGV=1 + continue + fi + if [ "$HAVE_EXT_ARGV" ]; then + if [ "$EXT_ARGV" ]; then + EXT_ARGV="$EXT_ARGV $opt" + else + EXT_ARGV="$opt" + fi + continue + fi + + if [ "$next_opt_is_val" ]; then + next_opt_is_val="" + if [ $# -eq 0 ] || [ $(expr "$opt" : "-") -eq 1 ]; then + option_error "$real_opt requires a $required_arg argument" + continue + fi + val="$opt" + opt_is_ok=1 + else + if [ $(expr "$opt" : "-") -eq 0 ]; then + if [ -z "$ARGV" ]; then + ARGV="$opt" + else + ARGV="$ARGV $opt" + fi + continue + fi + + real_opt="$opt" + + if $(echo $opt | grep '^--no-' >/dev/null); then + opt_is_negated=1 + opt=$(echo $opt | sed 's/^--no-//') + else + opt_is_negated="" + opt=$(echo $opt | sed 's/^-*//') + fi + + if $(echo $opt | grep '^[a-z-][a-z-]*=' >/dev/null 2>&1); then + val="$(echo $opt | awk -F= '{print $2}')" + opt="$(echo $opt | awk -F= '{print $1}')" + fi + + if [ -f "$TMPDIR/po/$opt" ]; then + spec="$TMPDIR/po/$opt" + else + spec=$(grep "^short form:-$opt\$" "$TMPDIR"/po/* | cut -d ':' -f 1) + if [ -z "$spec" ]; then + option_error "Unknown option: $real_opt" + continue + fi + fi + + required_arg=$(cat "$spec" | awk -F: '/^type:/{print $2}') + if [ "$required_arg" ]; then + if [ "$val" ]; then + opt_is_ok=1 + else + next_opt_is_val=1 + fi + else + if [ "$val" ]; then + option_error "Option $real_opt does not take a value" + continue + fi + if [ "$opt_is_negated" ]; then + val="" + else + val="yes" + fi + opt_is_ok=1 + fi + fi + + if [ "$opt_is_ok" ]; then + opt=$(cat "$spec" | grep '^long:' | cut -d':' -f2 | sed 's/-/_/g' | tr [:lower:] [:upper:]) + + if grep "^type:size" "$spec" >/dev/null; then + val=$(size_to_bytes $val) + fi + + eval "OPT_$opt"="'$val'" + + opt="" + val="" + next_opt_is_val="" + opt_is_ok="" + opt_is_negated="" + real_opt="" + required_arg="" + spec="" + fi + done +} + +size_to_bytes() { + local size="$1" + echo $size | perl -ne '%f=(B=>1, K=>1_024, M=>1_048_576, G=>1_073_741_824, T=>1_099_511_627_776); m/^(\d+)([kMGT])?/i; print $1 * $f{uc($2 || "B")};' +} + +# ########################################################################### +# End parse_options package +# ########################################################################### + +# ########################################################################### +# tmpdir package +# This package is a copy without comments from the original. The original +# with comments and its test file can be found in the Bazaar repository at, +# lib/bash/tmpdir.sh +# t/lib/bash/tmpdir.sh +# See https://launchpad.net/percona-toolkit for more information. +# ########################################################################### + + +set -u + +TMPDIR="" + +mk_tmpdir() { + local dir="${1:-""}" + + if [ -n "$dir" ]; then + if [ ! -d "$dir" ]; then + mkdir "$dir" || die "Cannot make tmpdir $dir" + fi + TMPDIR="$dir" + else + local tool="${0##*/}" + local pid="$$" + TMPDIR=`mktemp -d /tmp/${tool}.${pid}.XXXXX` \ + || die "Cannot make secure tmpdir" + fi +} + +rm_tmpdir() { + if [ -n "$TMPDIR" ] && [ -d "$TMPDIR" ]; then + rm -rf "$TMPDIR" + fi + TMPDIR="" +} + +# ########################################################################### +# End tmpdir package +# ########################################################################### + +# ########################################################################### +# alt_cmds package +# This package is a copy without comments from the original. The original +# with comments and its test file can be found in the Bazaar repository at, +# lib/bash/alt_cmds.sh +# t/lib/bash/alt_cmds.sh +# See https://launchpad.net/percona-toolkit for more information. +# ########################################################################### + + +set -u + +_seq() { + local i="$1" + awk "BEGIN { for(i=1; i<=$i; i++) print i; }" +} + +_pidof() { + local cmd="$1" + if ! pidof "$cmd" 2>/dev/null; then + ps -eo pid,ucomm | awk -v comm="$cmd" '$2 == comm { print $1 }' + fi +} + +_lsof() { + local pid="$1" + if ! lsof -p $pid 2>/dev/null; then + /bin/ls -l /proc/$pid/fd 2>/dev/null + fi +} + +_which() { + [ -x /usr/bin/which ] && /usr/bin/which "$1" 2>/dev/null | awk '{print $1}' +} + +# ########################################################################### +# End alt_cmds package +# ########################################################################### + +# ########################################################################### +# summary_common package +# This package is a copy without comments from the original. The original +# with comments and its test file can be found in the Bazaar repository at, +# lib/bash/summary_common.sh +# t/lib/bash/summary_common.sh +# See https://launchpad.net/percona-toolkit for more information. +# ########################################################################### + + +set -u + +CMD_FILE="$( _which file 2>/dev/null )" +CMD_NM="$( _which nm 2>/dev/null )" +CMD_OBJDUMP="$( _which objdump 2>/dev/null )" + +get_nice_of_pid () { + local pid="$1" + local niceness=$(ps -p $pid -o nice | tail -n+2 | awk '{print $1; exit;}') + + if [ -n "${niceness}" ]; then + echo $niceness + else + local tmpfile="$TMPDIR/nice_through_c.tmp.c" + _d "Getting the niceness from ps failed, somehow. We are about to try this:" + cat < "$tmpfile" + +int main(void) { + int priority = getpriority(PRIO_PROCESS, $pid); + if ( priority == -1 && errno == ESRCH ) { + return 1; + } + else { + printf("%d\\n", priority); + return 0; + } +} + +EOC + local c_comp=$(_which gcc) + if [ -z "${c_comp}" ]; then + c_comp=$(_which cc) + fi + _d "$tmpfile: $( cat "$tmpfile" )" + _d "$c_comp -xc \"$tmpfile\" -o \"$tmpfile\" && eval \"$tmpfile\"" + $c_comp -xc "$tmpfile" -o "$tmpfile" 2>/dev/null && eval "$tmpfile" 2>/dev/null + if [ $? -ne 0 ]; then + echo "?" + _d "Failed to get a niceness value for $pid" + fi + fi +} + +get_oom_of_pid () { + local pid="$1" + local oom_adj="" + + if [ -n "${pid}" ] && [ -e /proc/cpuinfo ]; then + if [ -s "/proc/$pid/oom_score_adj" ]; then + oom_adj=$(cat "/proc/$pid/oom_score_adj" 2>/dev/null) + _d "For $pid, the oom value is $oom_adj, retreived from oom_score_adj" + else + oom_adj=$(cat "/proc/$pid/oom_adj" 2>/dev/null) + _d "For $pid, the oom value is $oom_adj, retreived from oom_adj" + fi + fi + + if [ -n "${oom_adj}" ]; then + echo "${oom_adj}" + else + echo "?" + _d "Can't find the oom value for $pid" + fi +} + +has_symbols () { + local executable="$(_which "$1")" + local has_symbols="" + + if [ "${CMD_FILE}" ] \ + && [ "$($CMD_FILE "${executable}" | grep 'not stripped' )" ]; then + has_symbols=1 + elif [ "${CMD_NM}" ] \ + || [ "${CMD_OBJDMP}" ]; then + if [ "${CMD_NM}" ] \ + && [ !"$("${CMD_NM}" -- "${executable}" 2>&1 | grep 'File format not recognized' )" ]; then + if [ -z "$( $CMD_NM -- "${executable}" 2>&1 | grep ': no symbols' )" ]; then + has_symbols=1 + fi + elif [ -z "$("${CMD_OBJDUMP}" -t -- "${executable}" | grep '^no symbols$' )" ]; then + has_symbols=1 + fi + fi + + if [ "${has_symbols}" ]; then + echo "Yes" + else + echo "No" + fi +} + +setup_data_dir () { + local data_dir="" + if [ -z "$OPT_SAVE_DATA" ]; then + mkdir "$TMPDIR/data" || die "Cannot mkdir $TMPDIR/data" + data_dir="$TMPDIR/data" + else + if [ ! -d "$OPT_SAVE_DATA" ]; then + mkdir "$OPT_SAVE_DATA" || die "Cannot mkdir $OPT_SAVE_DATA" + fi + touch "$OPT_SAVE_DATA/test" || die "Cannot write to $OPT_SAVE_DATA" + rm "$OPT_SAVE_DATA/test" || die "Cannot rm $OPT_SAVE_DATA/test" + data_dir="$OPT_SAVE_DATA" + fi + echo "$data_dir" +} + +get_var () { + local varname="$1" + local file="$2" + local v="$(awk "\$1 ~ /^${varname}$/ { if (length(\$2)) { print substr(\$0, index(\$0,\$2)) } }" "${file}")" + if [ -n "$v" ]; then + echo "$v" + return 0 + else + return 1 + fi +} + +# ########################################################################### +# End summary_common package +# ########################################################################### + +# ########################################################################### +# report_formatting package +# This package is a copy without comments from the original. The original +# with comments and its test file can be found in the Bazaar repository at, +# lib/bash/report_formatting.sh +# t/lib/bash/report_formatting.sh +# See https://launchpad.net/percona-toolkit for more information. +# ########################################################################### + + +set -u + POSIXLY_CORRECT=1 export POSIXLY_CORRECT -# The awk code for fuzzy rounding. (It's used in a few places, so makes sense -# not to duplicate). It fuzzy-rounds the variable named fuzzy_var. It goes in -# steps of 5, 10, 25, then repeats by a factor of 10 larger (50, 100, 250), and -# so on, until it finds a number that's large enough. The pattern is slightly -# broken between the initial 1 and 50, because rounding to the nearest 2.5 -# doesn't seem right to me. fuzzy_formula=' rounded = 0; if (fuzzy_var <= 10 ) { @@ -38,224 +681,677 @@ fuzzy_formula=' factor = factor * 10; }' -# Does fuzzy rounding: rounds to nearest interval, but the interval gets larger -# as the number gets larger. This is to make things easier to diff. fuzz () { - echo $1 | $AP_AWK "{fuzzy_var=\$1; ${fuzzy_formula} print fuzzy_var;}" + awk -v fuzzy_var="$1" "BEGIN { ${fuzzy_formula} print fuzzy_var;}" +} + +fuzzy_pct () { + local pct="$(awk -v one="$1" -v two="$2" 'BEGIN{ if (two > 0) { printf "%d", one/two*100; } else {print 0} }')"; + echo "$(fuzz "${pct}")%" +} + +section () { + local str="$1" + local line="$(printf '#_%-60s' "${str}_" | sed -e 's/[[:space:]]/#/g' -e 's/_/ /g')" + printf "%s\n" "${line}" +} + +NAME_VAL_LEN=12 +name_val () { + printf "%+*s | %s\n" "${NAME_VAL_LEN}" "$1" "$2" +} + +shorten() { + local num="$1" + local prec="${2:-2}" + local div="${3:-1024}" + + echo "$num" | awk -v prec="$prec" -v div="$div" ' + { + size = 4; + val = $1; + + unit = val >= 1099511627776 ? "T" : val >= 1073741824 ? "G" : val >= 1048576 ? "M" : val >= 1024 ? "k" : ""; + + while ( int(val) && !(val % 1024) ) { + val /= 1024; + } + + while ( val > 1000 ) { + val /= div; + } + + printf "%.*f%s", prec, val, unit; + } + ' +} + +group_concat () { + sed -e '{H; $!d;}' -e 'x' -e 's/\n[[:space:]]*\([[:digit:]]*\)[[:space:]]*/, \1x/g' -e 's/[[:space:]][[:space:]]*/ /g' -e 's/, //' "${1}" } # ########################################################################### -# tmpdir package +# End report_formatting package +# ########################################################################### + +# ########################################################################### +# collect_system_info package # This package is a copy without comments from the original. The original # with comments and its test file can be found in the Bazaar repository at, -# lib/bash/tmpdir.sh -# t/lib/bash/tmpdir.sh +# lib/bash/collect_system_info.sh +# t/lib/bash/collect_system_info.sh # See https://launchpad.net/percona-toolkit for more information. # ########################################################################### -TMPDIR="" -mk_tmpdir() { - local dir=${1:-""} - if [ -n "$dir" ]; then - if [ ! -d "$dir" ]; then - mkdir $dir || die "Cannot make tmpdir $dir" +PT_SUMMARY_SKIP="${PT_SUMMARY_SKIP:-""}" + +set -u + +CMD_SYSCTL="$(_which sysctl 2>/dev/null )" +CMD_DMIDECODE="$(_which dmidecode 2>/dev/null )" +CMD_ZONENAME="$(_which zonename 2>/dev/null )" +CMD_DMESG="$(_which dmesg 2>/dev/null )" +CMD_FILE="$(_which file 2>/dev/null )" +CMD_LSPCI="$(_which lspci 2>/dev/null )" +CMD_PRTDIAG="$(_which prtdiag 2>/dev/null )" +CMD_SMBIOS="$(_which smbios 2>/dev/null )" +CMD_GETENFORCE="$(_which getenforce 2>/dev/null )" +CMD_PRTCONF="$(_which prtconf 2>/dev/null )" +CMD_LVS="$(_which lvs 2>/dev/null)" +CMD_VGS="$(_which vgs 2>/dev/null)" +CMD_PRSTAT="$(_which prstat 2>/dev/null)" +CMD_ISAINFO="$(_which isainfo 2>/dev/null)" +CMD_TOP="$(_which top 2>/dev/null)" +CMD_ARCCONF="$( _which arcconf 2>/dev/null )" +CMD_HPACUCLI="$( _which hpacucli 2>/dev/null )" +CMD_MEGACLI64="$( _which MegaCli64 2>/dev/null )" +CMD_VMSTAT="$(_which vmstat 2>/dev/null)" +CMD_IP="$( _which ip 2>/dev/null )" +CMD_NETSTAT="$( _which netstat 2>/dev/null )" +CMD_PSRINFO="$( _which psrinfo 2>/dev/null )" +CMD_SWAPCTL="$( _which swapctl 2>/dev/null )" + +collect_system_data () { local FUNCNAME=collect_system_data; + local data_dir="$1" + + if [ -r /var/log/dmesg -a -s /var/log/dmesg ]; then + cat "/var/log/dmesg" > "$data_dir/dmesg_file" + fi + + $CMD_SYSCTL -a > "$data_dir/sysctl" 2>/dev/null + + if [ -n "${CMD_LSPCI}" ]; then + $CMD_LSPCI > "$data_dir/lspci_file" 2>/dev/null + fi + + local platform="$(uname -s)" + echo "platform $platform" >> "$data_dir/summary" + echo "hostname $(uname -n)" >> "$data_dir/summary" + echo "uptime $(uptime | awk '{print substr($0, index($0, "up") + 3)}')" >> "$data_dir/summary" + + processor_info "$data_dir" + find_release_and_kernel "$data_dir/summary" "$platform" + cpu_and_os_arch "$data_dir/summary" "$platform" + find_virtualization "$data_dir/summary" "$platform" "$data_dir/dmesg_file" "$data_dir/lspci_file" + dmidecode_system_info "$data_dir/summary" + + if [ "${platform}" = "SunOS" ] && [ -n "${CMD_ZONENAME}" ]; then + echo "zonename $($CMD_ZONENAME)" >> "$data_dir/summary" + fi + + if [ "${platform}" = "Linux" ]; then + echo "threading $(getconf GNU_LIBPTHREAD_VERSION)" >> "$data_dir/summary" + fi + if [ -x /lib/libc.so.6 ]; then + echo "compiler $(/lib/libc.so.6 | grep 'Compiled by' | cut -c13-)" >> "$data_dir/summary" + fi + + if [ "${platform}" = "Linux" ]; then + local getenforce="" + if [ -n "$CMD_GETENFORCE" ]; then + getenforce="$($CMD_GETENFORCE 2>&1)"; fi - TMPDIR="$dir" - else - local tool=`basename $0` - local pid="$$" - TMPDIR=`mktemp -d /tmp/${tool}.${pid}.XXXXX` \ - || die "Cannot make secure tmpdir" + echo "getenforce ${getenforce:-No SELinux detected}" >> "$data_dir/summary" + fi + + local rss=$(ps -eo rss 2>/dev/null | awk '/[0-9]/{total += $1 * 1024} END {print total}') + echo "rss ${rss}" >> "$data_dir/summary" + + if [ "${platform}" = "Linux" ]; then + echo "swappiness $(awk '/vm.swappiness/{print $3}' "$data_dir/sysctl")">> "$data_dir/summary" + echo "dirtypolicy $(awk '/vm.dirty_ratio/{print $3}' "$data_dir/sysctl"), $(awk '/vm.dirty_background_ratio/{print $3}' "$data_dir/sysctl")" >> "$data_dir/summary" + if $(awk '/vm.dirty_bytes/{print $3}' "$data_dir/sysctl") > /dev/null 2>&1; then + echo "dirtystatus $(awk '/vm.dirty_bytes/{print $3}' "$data_dir/sysctl"), $(awk '/vm.dirty_background_bytes/{print $3}' "$data_dir/sysctl")" >> "$data_dir/summary" + fi + fi + + if [ -n "$CMD_DMIDECODE" ]; then + $CMD_DMIDECODE > "$data_dir/dmidecode" 2>/dev/null + fi + + find_memory_stats "$data_dir/memory" "$platform" + mounted_fs_info "$data_dir/mounted_fs" "$platform" "$PT_SUMMARY_SKIP" + raid_controller "$data_dir/summary" "$data_dir/dmesg_file" "$data_dir/lspci_file" + + local controller="$(get_var raid_controller "$data_dir/summary")" + propietary_raid_controller "$data_dir/raid-controller" "$data_dir/summary" "$data_dir" "$controller" + + if [ "${platform}" = "Linux" ]; then + linux_exclusive_collection "$data_dir" + fi + + if [ -n "$CMD_IP" ] && echo "${PT_SUMMARY_SKIP}" | grep -v NETWORK >/dev/null; then + $CMD_IP -s link > "$data_dir/ip" + fi + + if [ -n "$CMD_SWAPCTL" ]; then + $CMD_SWAPCTL -s > "$data_dir/swapctl" + fi + + top_processes "$data_dir/processes" "$PT_SUMMARY_SKIP" + notable_processes_info "$data_dir/notable_procs" "$PT_SUMMARY_SKIP" + + if [ -n "$CMD_VMSTAT" ]; then + touch "$data_dir/vmstat" + ( + $CMD_VMSTAT 1 $OPT_SLEEP > "$data_dir/vmstat" + ) & fi } -rm_tmpdir() { - if [ -n "$TMPDIR" ] && [ -d "$TMPDIR" ]; then - rm -rf $TMPDIR +linux_exclusive_collection () { local FUNCNAME=linux_exclusive_collection; + local data_dir="$1" + + schedulers_and_queue_size "$data_dir/summary" "$data_dir/partitioning" + + for file in dentry-state file-nr inode-nr; do + echo "${file} $(cat /proc/sys/fs/${file} 2>&1)" >> "$data_dir/summary" + done + + if [ -n "$CMD_LVS" ] && test -x "$CMD_LVS"; then + $CMD_LVS 1>"$data_dir/lvs" 2>&1 + fi + + if [ -n "$CMD_VGS" ] && test -x "$CMD_VGS"; then + $CMD_VGS -o vg_name,vg_size,vg_free 2>/dev/null > "$data_dir/vgs" + fi + + if [ -n "$CMD_NETSTAT" ] && echo "${PT_SUMMARY_SKIP}" | grep -v NETWORK >/dev/null; then + $CMD_NETSTAT -antp > "$data_dir/netstat" 2>/dev/null fi - TMPDIR="" } -# ########################################################################### -# End tmpdir package -# ########################################################################### +find_release_and_kernel () { local FUNCNAME=find_release_and_kernel; + local file="$1" + local platform="$2" -# The temp files are for storing working results so we don't call commands many -# times (gives inconsistent results, maybe adds load on things I don't want to -# such as RAID controllers). They must not exist -- if they did, someone would -# symlink them to /etc/passwd and then run this program as root. Call this -# function with "rm" or "touch" as an argument. -temp_files() { - for file in $TMPDIR/percona-toolkit $TMPDIR/percona-toolkit2; do - case "$1" in - touch) - if ! touch "${file}"; then - echo "I can't make my temp file ${file}"; - exit 1; + local kernel="" + local release="" + if [ "${platform}" = "Linux" ]; then + kernel="$(uname -r)" + if [ -e /etc/fedora-release ]; then + release=$(cat /etc/fedora-release); + elif [ -e /etc/redhat-release ]; then + release=$(cat /etc/redhat-release); + elif [ -e /etc/system-release ]; then + release=$(cat /etc/system-release); + elif _which lsb_release >/dev/null 2>&1; then + release="$(lsb_release -ds) ($(lsb_release -cs))" + elif [ -e /etc/lsb-release ]; then + release=$(grep DISTRIB_DESCRIPTION /etc/lsb-release |awk -F'=' '{print $2}' |sed 's#"##g'); + elif [ -e /etc/debian_version ]; then + release="Debian-based version $(cat /etc/debian_version)"; + if [ -e /etc/apt/sources.list ]; then + local code=` awk '/^deb/ {print $3}' /etc/apt/sources.list \ + | awk -F/ '{print $1}'| awk 'BEGIN {FS="|"}{print $1}' \ + | sort | uniq -c | sort -rn | head -n1 | awk '{print $2}'` + release="${release} (${code})" + fi + elif ls /etc/*release >/dev/null 2>&1; then + if grep -q DISTRIB_DESCRIPTION /etc/*release; then + release=$(grep DISTRIB_DESCRIPTION /etc/*release | head -n1); + else + release=$(cat /etc/*release | head -n1); fi - ;; - rm) - rm -f "${file}" - ;; - esac + fi + elif [ "${platform}" = "FreeBSD" ] \ + || [ "${platform}" = "NetBSD" ] \ + || [ "${platform}" = "OpenBSD" ]; then + release="$(uname -r)" + kernel="$($CMD_SYSCTL -n kern.osrevision)" + elif [ "${platform}" = "SunOS" ]; then + release="$(head -n1 /etc/release)" + if [ -z "${release}" ]; then + release="$(uname -r)" + fi + kernel="$(uname -v)" + fi + echo "kernel $kernel" >> "$file" + echo "release $release" >> "$file" +} + +cpu_and_os_arch () { local FUNCNAME=cpu_and_os_arch; + local file="$1" + local platform="$2" + + local CPU_ARCH='32-bit' + local OS_ARCH='32-bit' + if [ "${platform}" = "Linux" ]; then + if [ "$(grep -q ' lm ' /proc/cpuinfo)" ]; then + CPU_ARCH='64-bit' + fi + elif [ "${platform}" = "FreeBSD" ] || [ "${platform}" = "NetBSD" ]; then + if $CMD_SYSCTL hw.machine_arch | grep -v 'i[36]86' >/dev/null; then + CPU_ARCH='64-bit' + fi + elif [ "${platform}" = "OpenBSD" ]; then + if $CMD_SYSCTL hw.machine | grep -v 'i[36]86' >/dev/null; then + CPU_ARCH='64-bit' + fi + elif [ "${platform}" = "SunOS" ]; then + if $CMD_ISAINFO -b | grep 64 >/dev/null ; then + CPU_ARCH="64-bit" + fi + fi + if [ -z "$CMD_FILE" ]; then + OS_ARCH='N/A' + elif $CMD_FILE /bin/sh | grep '64-bit' >/dev/null; then + OS_ARCH='64-bit' + fi + + echo "CPU_ARCH $CPU_ARCH" >> "$file" + echo "OS_ARCH $OS_ARCH" >> "$file" +} + +find_virtualization () { local FUNCNAME=find_virtualization; + local vars_file="$1" + local platform="$2" + local dmesg_file="$3" + local lspci_file="$4" + + local tempfile="$TMPDIR/find_virtualziation.tmp" + + local virt="" + if [ -s "$dmesg_file" ]; then + virt="$(find_virtualization_dmesg "$dmesg_file")" + fi + if [ -z "${virt}" ] && [ -s "$lspci_file" ]; then + if grep -qi virtualbox "$lspci_file" ; then + virt=VirtualBox + elif grep -qi vmware "$lspci_file" ; then + virt=VMWare + fi + elif [ "${platform}" = "FreeBSD" ]; then + if ps -o stat | grep J ; then + virt="FreeBSD Jail" + fi + elif [ "${platform}" = "SunOS" ]; then + if [ -n "$CMD_PRTDIAG" ] && $CMD_PRTDIAG > "$tempfile" 2>/dev/null; then + virt="$(find_virtualization_generic "$tempfile" )" + elif [ -n "$CMD_SMBIOS" ] && $CMD_SMBIOS > "$tempfile" 2>/dev/null; then + virt="$(find_virtualization_generic "$tempfile" )" + fi + elif [ -e /proc/user_beancounters ]; then + virt="OpenVZ/Virtuozzo" + fi + echo "virt ${virt:-"No virtualization detected"}" >> "$vars_file" +} + +find_virtualization_generic() { local PTFUNCNAME=find_virtualization_generic; + local file="$1" + if grep -i -e virtualbox "$file" >/dev/null; then + echo VirtualBox + elif grep -i -e vmware "$file" >/dev/null; then + echo VMWare + fi +} + +find_virtualization_dmesg () { local PTFUNCNAME=find_virtualization_dmesg; + local file="$1" + if grep -qi -e vmware -e vmxnet -e 'paravirtualized kernel on vmi' "${file}"; then + echo "VMWare"; + elif grep -qi -e 'paravirtualized kernel on xen' -e 'Xen virtual console' "${file}"; then + echo "Xen"; + elif grep -qi qemu "${file}"; then + echo "QEmu"; + elif grep -qi 'paravirtualized kernel on KVM' "${file}"; then + echo "KVM"; + elif grep -q VBOX "${file}"; then + echo "VirtualBox"; + elif grep -qi 'hd.: Virtual .., ATA.*drive' "${file}"; then + echo "Microsoft VirtualPC"; + fi +} + +dmidecode_system_info () { local FUNCNAME=dmidecode_system_info; + local file="$1" + if [ -n "${CMD_DMIDECODE}" ]; then + local vendor="$($CMD_DMIDECODE -s system-manufacturer 2>/dev/null | sed 's/ *$//g')" + echo "vendor ${vendor}" >> "$file" + if [ "${vendor}" ]; then + local product="$($CMD_DMIDECODE -s system-product-name 2>/dev/null | sed 's/ *$//g')" + local version="$($CMD_DMIDECODE -s system-version 2>/dev/null | sed 's/ *$//g')" + local chassis="$($CMD_DMIDECODE -s chassis-type 2>/dev/null | sed 's/ *$//g')" + local servicetag="$($CMD_DMIDECODE -s system-serial-number 2>/dev/null | sed 's/ *$//g')" + local system="${vendor}; ${product}; v${version} (${chassis})" + + echo "system ${system}" >> "$file" + echo "servicetag ${servicetag:-Not found}" >> "$file" + fi + fi +} + +find_memory_stats () { local PTFUNCNAME=find_memory_stats; + local file="$1" + local platform="$2" + if [ "${platform}" = "Linux" ]; then + _d "In Linux, so saving the output of free -b" \ + "and /proc/meminfo into $file" + free -b > "$file" + cat /proc/meminfo >> "$file" + elif [ "${platform}" = "SunOS" ]; then + _d "In SunOS, calling prtconf" + $CMD_PRTCONF | awk -F: '/Memory/{print $2}' > "$file" + fi +} + +mounted_fs_info () { local PTFUNCNAME=mounted_fs_info; + local file="$1" + local platform="$2" + local skip="${3:-$PT_SUMMARY_SKIP}" + + if echo "${skip}" | grep -v MOUNT >/dev/null; then + if [ "${platform}" != "SunOS" ]; then + local cmd="df -h" + if [ "${platform}" = "Linux" ]; then + cmd="df -h -P" + fi + _d "calling $cmd" + $cmd | sort > "$TMPDIR/mounted_fs_info.tmp" + mount | sort | join "$TMPDIR/mounted_fs_info.tmp" - > "$file" + fi + fi +} + +raid_controller () { local PTFUNCNAME=raid_controller; + local file="$1" + local dmesg_file="$2" + local lspci_file="$3" + + local tempfile="$TMPDIR/raid_controller.tmp" + + local controller="" + if [ -s "$lspci_file" ]; then + controller="$(find_raid_controller_lspci "$lspci_file")" + fi + if [ -z "${controller}" ] && [ -s "$dmesg_file" ]; then + controller="$(find_raid_controller_dmesg "$dmesg_file")" + fi + + echo "raid_controller ${controller:-"No RAID controller detected"}" >> "$file" +} + +find_raid_controller_dmesg () { local PTFUNCNAME=find_raid_controller_dmesg; + local file="$1" + local pat='scsi[0-9].*: .*' + if grep -qi "${pat}megaraid" "${file}"; then + echo 'LSI Logic MegaRAID SAS' + elif grep -q "Fusion MPT SAS" "${file}"; then + echo 'Fusion-MPT SAS' + elif grep -q "${pat}aacraid" "${file}"; then + echo 'AACRAID' + elif grep -q "${pat}3ware [0-9]* Storage Controller" "${file}"; then + echo '3Ware' + fi +} + +find_raid_controller_lspci () { local PTFUNCNAME=find_raid_controller_lspci; + local file="$1" + if grep -q "RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS" "${file}"; then + echo 'LSI Logic MegaRAID SAS' + elif grep -q "Fusion-MPT SAS" "${file}"; then + echo 'Fusion-MPT SAS' + elif grep -q "RAID bus controller: LSI Logic / Symbios Logic Unknown" "${file}"; then + echo 'LSI Logic Unknown' + elif grep -q "RAID bus controller: Adaptec AAC-RAID" "${file}"; then + echo 'AACRAID' + elif grep -q "3ware [0-9]* Storage Controller" "${file}"; then + echo '3Ware' + elif grep -q "Hewlett-Packard Company Smart Array" "${file}"; then + echo 'HP Smart Array' + elif grep -q " RAID bus controller: " "${file}"; then + awk -F: '/RAID bus controller\:/ {print $3" "$5" "$6}' "${file}" + fi +} + +schedulers_and_queue_size () { local FUNCNAME=schedulers_and_queue_size; + local file="$1" + local disk_partitioning_file="$2" + + local disks="$(ls /sys/block/ | grep -v -e ram -e loop -e 'fd[0-9]')" + echo "disks $disks" >> "$file" + echo "" > "$disk_partitioning_file" + for disk in $disks; do + if [ -e "/sys/block/${disk}/queue/scheduler" ]; then + echo "internal::${disk} $(cat /sys/block/${disk}/queue/scheduler | grep -o '\[.*\]') $(cat /sys/block/${disk}/queue/nr_requests)" >> "$file" + fdisk -l "/dev/${disk}" >> "$disk_partitioning_file" 2>/dev/null + fi done } -# Print a space-padded string into $line. Then translate spaces to hashes, and -# underscores to spaces. End result is a line of hashes with words at the -# start. -section () { - echo "$1" | awk '{l=sprintf("#_%-60s", $0 "_"); print l}' | sed -e 's/ /#/g' -e 's/_/ /g' +top_processes () { local FUNCNAME=top_processes; + local top_processes_file="$1" + local skip="${2:-"$PT_SUMMARY_SKIP"}" + + if echo "${skip}" | grep -v PROCESS >/dev/null; then + if [ -n "$CMD_PRSTAT" ]; then + $CMD_PRSTAT | head > "$top_processes_file" + elif [ -n "$CMD_TOP" ]; then + local cmd="$CMD_TOP -bn 1" + if [ "${platform}" = "FreeBSD" ] \ + || [ "${platform}" = "NetBSD" ] \ + || [ "${platform}" = "OpenBSD" ]; then + cmd="$CMD_TOP -b -d 1" + fi + $cmd | sed -e 's# *$##g' -e '/./{H;$!d;}' -e 'x;/PID/!d;' | grep . | head > "$top_processes_file" + fi + fi } -# Print a "name | value" line. -name_val() { - printf "%12s | %s\n" "$1" "$(echo $2)" +notable_processes_info () { local PTFUNCNAME=notable_processes_info; + local notable_processes_file="$1" + local skip="${2:-"$PT_SUMMARY_SKIP"}" + + if echo "${skip}" | grep -v PROCESS >/dev/null; then + local format="%5s %+2d %s\n" + local sshd_pid=$(_pidof "/usr/sbin/sshd") + + echo " PID OOM COMMAND" > "$notable_processes_file" + + if [ "$sshd_pid" ]; then + printf "$format" $sshd_pid $(get_oom_of_pid $sshd_pid) "sshd" >> "$notable_processes_file" + else + printf "%5s %3s %s\n" "?" "?" "sshd doesn't appear to be running" >> "$notable_processes_file" + fi + + local PTDEBUG="" + ps -eo pid,ucomm | tail -n +2 | while read pid proc; do + [ "$sshd_pid" ] && [ "$sshd_pid" = "$pid" ] && continue + local oom="$(get_oom_of_pid $pid)" + if [ "$oom" ] && [ "$oom" != "?" ] && [ "$oom" = "-17" ]; then + printf "$format" $pid $oom $proc >> "$notable_processes_file" + fi + done + fi } -# Converts a value to units of power of 2. Arg 1: the value. Arg 2: precision (defaults to 2). -shorten() { - echo $@ | awk '{ - unit = "k"; - size = 1024; - val = $1; - prec = 2; - if ( $2 ~ /./ ) { - prec = $2; - } - if ( val >= 1099511627776 ) { - size = 1099511627776; - unit = "T"; - } - else if ( val >= 1073741824 ) { - size = 1073741824; - unit = "G"; - } - else if ( val >= 1048576 ) { - size = 1048576; - unit = "M"; - } - printf "%." prec "f%s", val / size, unit; - }' +processor_info () { local FUNCNAME=processor_info; + local data_dir="$1" + if [ -f /proc/cpuinfo ]; then + _d "Got /proc/cpuinfo, copying that" + cat /proc/cpuinfo > "$data_dir/proc_cpuinfo_copy" 2>/dev/null + elif [ "${platform}" = "SunOS" ]; then + _d "On SunOS, using psrinfo" + $CMD_PSRINFO -v > "$data_dir/psrinfo_minus_v" + fi } -# ############################################################################## -# Function to take a file and collapse it into an aggregated list. This -# function works on $1, which it expects to be created with 'sort | -# uniq -c'. Leading whitespace is deleted. The result will look like -# "4xabc, 1xdef" Copy any changes to 'mysql-summary' too. -# ############################################################################## -group_concat () { - sed -e '{H; $!d}' -e 'x' -e 's/\n[[:space:]]*\([[:digit:]]*\)[[:space:]]*/, \1x/g' -e 's/[[:space:]][[:space:]]*/ /g' -e 's/, //' ${1} - # In words: save the whole file into the hold space, - # {H; $!d} - # Swap it back into the pattern space, - # x - # Join lines with a comma, delete leading whitespace, and put an 'x' between - # the number and the text that follows, - # s/\n[[:space:]]*\([[:digit:]]*\)[[:space:]]*/, \1x/g - # Collapse whitespace, - # s/[[:space:]][[:space:]]*/ /g - # And delete the leading comma-space. - # s/, // +propietary_raid_controller () { local FUNCNAME=propietary_raid_controller; + local file="$1" + local variable_file="$2" + local data_dir="$3" + local controller="$4" + + rm -f "$file" + touch "$file" + + notfound="" + if [ "${controller}" = "AACRAID" ]; then + if [ -z "$CMD_ARCCONF" ]; then + notfound="e.g. http://www.adaptec.com/en-US/support/raid/scsi_raid/ASR-2120S/" + elif $CMD_ARCCONF getconfig 1 > "$file" 2>/dev/null; then + echo "internal::raid_opt 1" >> "$variable_file" + fi + elif [ "${controller}" = "HP Smart Array" ]; then + if [ -z "$CMD_HPACUCLI" ]; then + notfound="your package repository or the manufacturer's website" + elif $CMD_HPACUCLI ctrl all show config > "$file" 2>/dev/null; then + echo "internal::raid_opt 2" >> "$variable_file" + fi + elif [ "${controller}" = "LSI Logic MegaRAID SAS" ]; then + if [ -z "$CMD_MEGACLI64" ]; then + notfound="your package repository or the manufacturer's website" + else + echo "internal::raid_opt 3" >> "$variable_file" + $CMD_MEGACLI64 -AdpAllInfo -aALL -NoLog > "$data_dir/lsi_megaraid_adapter_info.tmp" 2>/dev/null + $CMD_MEGACLI64 -AdpBbuCmd -GetBbuStatus -aALL -NoLog > "$data_dir/lsi_megaraid_bbu_status.tmp" 2>/dev/null + $CMD_MEGACLI64 -LdPdInfo -aALL -NoLog > "$data_dir/lsi_megaraid_devices.tmp" 2>/dev/null + fi + fi + + if [ "${notfound}" ]; then + echo "internal::raid_opt 0" >> "$variable_file" + echo " RAID controller software not found; try getting it from" > "$file" + echo " ${notfound}" >> "$file" + fi } -# ############################################################################## -# Functions for parsing specific files and getting desired info from them. -# These are called from within main() and are separated so they can be tested -# easily. The calling convention is that the data they need to run is prepared -# first by putting it into $TMPDIR/percona-toolkit. Then code that's testing -# just needs to put sample data into $TMPDIR/percona-toolkit and call it. -# ############################################################################## +# ########################################################################### +# End collect_system_info package +# ########################################################################### + +# ########################################################################### +# report_system_info package +# This package is a copy without comments from the original. The original +# with comments and its test file can be found in the Bazaar repository at, +# lib/bash/report_system_info.sh +# t/lib/bash/report_system_info.sh +# See https://launchpad.net/percona-toolkit for more information. +# ########################################################################### + + +set -u + -# ############################################################################## -# Parse Linux's /proc/cpuinfo, which should be stored in $TMPDIR/percona-toolkit. -# ############################################################################## -parse_proc_cpuinfo () { - local file=$1 - # Physical processors are indicated by distinct 'physical id'. Virtual CPUs - # are indicated by paragraphs -- one per paragraph. We assume that all - # processors are identical, i.e. that there are not some processors with dual - # cores and some with quad cores. - virtual=$(grep -c ^processor $file); - physical=$(grep 'physical id' $file | sort -u | wc -l); - cores=$(grep 'cpu cores' $file | head -n 1 | cut -d: -f2); +parse_proc_cpuinfo () { local PTFUNCNAME=parse_proc_cpuinfo; + local file="$1" + local virtual="$(grep -c ^processor "${file}")"; + local physical="$(grep 'physical id' "${file}" | sort -u | wc -l)"; + local cores="$(grep 'cpu cores' "${file}" | head -n 1 | cut -d: -f2)"; - # Older kernel won't have 'physical id' or 'cpu cores'. - if [ "${physical}" = "0" ]; then physical=${virtual}; fi + if [ "${physical}" = "0" ]; then physical="${virtual}"; fi if [ -z "${cores}" ]; then cores=0; fi - # Test for HTT; cannot trust the 'ht' flag. If physical * cores < virtual, - # then hyperthreading is in use. cores=$((${cores} * ${physical})); + local htt="" if [ ${cores} -gt 0 -a $cores -lt $virtual ]; then htt=yes; else htt=no; fi name_val "Processors" "physical = ${physical}, cores = ${cores}, virtual = ${virtual}, hyperthreading = ${htt}" - awk -F: '/cpu MHz/{print $2}' $file \ - | sort | uniq -c > "$file.unq" - name_val "Speeds" "$(group_concat "$file.unq")" + awk -F: '/cpu MHz/{print $2}' "${file}" \ + | sort | uniq -c > "$TMPDIR/parse_proc_cpuinfo_cpu.unq" + name_val "Speeds" "$(group_concat "$TMPDIR/parse_proc_cpuinfo_cpu.unq")" - awk -F: '/model name/{print $2}' $file \ - | sort | uniq -c > "$file.unq" - name_val "Models" "$(group_concat "$file.unq")" + awk -F: '/model name/{print $2}' "${file}" \ + | sort | uniq -c > "$TMPDIR/parse_proc_cpuinfo_model.unq" + name_val "Models" "$(group_concat "$TMPDIR/parse_proc_cpuinfo_model.unq")" - awk -F: '/cache size/{print $2}' $file \ - | sort | uniq -c > "$file.unq" - name_val "Caches" "$(group_concat "$file.unq")" + awk -F: '/cache size/{print $2}' "${file}" \ + | sort | uniq -c > "$TMPDIR/parse_proc_cpuinfo_cache.unq" + name_val "Caches" "$(group_concat "$TMPDIR/parse_proc_cpuinfo_cache.unq")" } -# ############################################################################## -# Parse sysctl -a output on FreeBSD, and format it as CPU info. The file is the -# first argument. -# ############################################################################## -parse_sysctl_cpu_freebsd() { - virtual="$(awk '/hw.ncpu/{print $2}' "$1")" +parse_sysctl_cpu_freebsd() { local PTFUNCNAME=parse_sysctl_cpu_freebsd; + local file="$1" + test ! -e "$file" && return; + local virtual="$(awk '/hw.ncpu/{print $2}' "$file")" name_val "Processors" "virtual = ${virtual}" - name_val "Speeds" "$(awk '/hw.clockrate/{print $2}' "$1")" - name_val "Models" "$(awk -F: '/hw.model/{print substr($2, 2)}' "$1")" + name_val "Speeds" "$(awk '/hw.clockrate/{print $2}' "$file")" + name_val "Models" "$(awk -F: '/hw.model/{print substr($2, 2)}' "$file")" } -# ############################################################################## -# Parse CPU info from psrinfo -v -# ############################################################################## -parse_psrinfo_cpus() { - name_val Processors $(grep -c 'Status of .* processor' "$1") +parse_sysctl_cpu_netbsd() { local PTFUNCNAME=parse_sysctl_cpu_netbsd; + local file="$1" + + test ! -e "$file" && return + + local virtual="$(awk '/hw.ncpu /{print $NF}' "$file")" + name_val "Processors" "virtual = ${virtual}" + name_val "Models" "$(awk -F: '/hw.model/{print $3}' "$file")" +} + +parse_sysctl_cpu_openbsd() { local PTFUNCNAME=parse_sysctl_cpu_openbsd; + local file="$1" + + test ! -e "$file" && return + + name_val "Processors" "$(awk -F= '/hw.ncpu=/{print $2}' "$file")" + name_val "Speeds" "$(awk -F= '/hw.cpuspeed/{print $2}' "$file")" + name_val "Models" "$(awk -F= '/hw.model/{print substr($2, 0, index($2, " "))}' "$file")" +} + +parse_psrinfo_cpus() { local PTFUNCNAME=parse_psrinfo_cpus; + local file="$1" + + test ! -e "$file" && return + + name_val Processors "$(grep -c 'Status of .* processor' "$file")" awk '/operates at/ { start = index($0, " at ") + 4; end = length($0) - start - 4 print substr($0, start, end); - }' "$1" | sort | uniq -c > $TMPDIR/percona-toolkit2 - name_val "Speeds" "$(group_concat $TMPDIR/percona-toolkit2)" + }' "$file" | sort | uniq -c > "$TMPDIR/parse_psrinfo_cpus.tmp" + name_val "Speeds" "$(group_concat "$TMPDIR/parse_psrinfo_cpus.tmp")" } -# ############################################################################## -# Parse the output of 'free -b' plus the contents of /proc/meminfo -# ############################################################################## -parse_free_minus_b () { - local file=$1 +parse_free_minus_b () { local PTFUNCNAME=parse_free_minus_b; + local file="$1" + + test ! -e "$file" && return local physical=$(awk '/Mem:/{print $3}' "${file}") - local swap=$(awk '/Swap:/{print $3}' "${file}") - local virtual=$(shorten $(($physical + $swap))) + local swap_alloc=$(awk '/Swap:/{print $2}' "${file}") + local swap_used=$(awk '/Swap:/{print $3}' "${file}") + local virtual=$(shorten $(($physical + $swap_used)) 1) - name_val Total $(shorten $(awk '/Mem:/{print $2}' "${file}")) - name_val Free $(shorten $(awk '/Mem:/{print $4}' "${file}")) - name_val Used "physical = $(shorten ${physical}), swap = $(shorten ${swap}), virtual = ${virtual}" - name_val Buffers $(shorten $(awk '/Mem:/{print $6}' "${file}")) - name_val Caches $(shorten $(awk '/Mem:/{print $7}' "${file}")) + name_val Total $(shorten $(awk '/Mem:/{print $2}' "${file}") 1) + name_val Free $(shorten $(awk '/Mem:/{print $4}' "${file}") 1) + name_val Used "physical = $(shorten ${physical} 1), swap allocated = $(shorten ${swap_alloc} 1), swap used = $(shorten ${swap_used} 1), virtual = ${virtual}" + name_val Buffers $(shorten $(awk '/Mem:/{print $6}' "${file}") 1) + name_val Caches $(shorten $(awk '/Mem:/{print $7}' "${file}") 1) name_val Dirty "$(awk '/Dirty:/ {print $2, $3}' "${file}")" } -# ############################################################################## -# Parse FreeBSD memory info from sysctl output. -# ############################################################################## -parse_memory_sysctl_freebsd() { - physical=$(awk '/hw.realmem:/{print $2}' "${1}") - mem_hw=$(awk '/hw.physmem:/{print $2}' "${1}") - mem_used=$(awk ' +parse_memory_sysctl_freebsd() { local PTFUNCNAME=parse_memory_sysctl_freebsd; + local file="$1" + + test ! -e "$file" && return + + local physical=$(awk '/hw.realmem:/{print $2}' "${file}") + local mem_hw=$(awk '/hw.physmem:/{print $2}' "${file}") + local mem_used=$(awk ' /hw.physmem/ { mem_hw = $2; } /vm.stats.vm.v_inactive_count/ { mem_inactive = $2; } /vm.stats.vm.v_cache_count/ { mem_cache = $2; } @@ -267,45 +1363,61 @@ parse_memory_sysctl_freebsd() { mem_free *= pagesize; print mem_hw - mem_inactive - mem_cache - mem_free; } - ' "$1"); + ' "$file"); name_val Total $(shorten ${mem_hw} 1) name_val Virtual $(shorten ${physical} 1) name_val Used $(shorten ${mem_used} 1) } -# ############################################################################## -# Parse memory devices from the output of 'dmidecode'. -# ############################################################################## -parse_dmidecode_mem_devices () { - local file=$1 +parse_memory_sysctl_netbsd() { local PTFUNCNAME=parse_memory_sysctl_netbsd; + local file="$1" + local swapctl_file="$2" + + test ! -e "$file" -o ! -e "$swapctl_file" && return + + local swap_mem="$(echo "$(awk '{print $2;}' "$swapctl_file")*512" | bc -l)" + name_val Total $(shorten "$(awk '/hw.physmem /{print $NF}' "$file")" 1) + name_val User $(shorten "$(awk '/hw.usermem /{print $NF}' "$file")" 1) + name_val Swap $(shorten ${swap_mem} 1) +} + +parse_memory_sysctl_openbsd() { local PTFUNCNAME=parse_memory_sysctl_openbsd; + local file="$1" + local swapctl_file="$2" + + test ! -e "$file" -o ! -e "$swapctl_file" && return + + local swap_mem="$(echo "$(awk '{print $2;}' "$swapctl_file")*512" | bc -l)" + name_val Total $(shorten "$(awk -F= '/hw.physmem/{print $2}' "$file")" 1) + name_val User $(shorten "$(awk -F= '/hw.usermem/{print $2}' "$file")" 1) + name_val Swap $(shorten ${swap_mem} 1) +} + +parse_dmidecode_mem_devices () { local PTFUNCNAME=parse_dmidecode_mem_devices; + local file="$1" + + test ! -e "$file" && return + echo " Locator Size Speed Form Factor Type Type Detail" echo " ========= ======== ================= ============= ============= ===========" - # Print paragraphs containing 'Memory Device\n', extract the desired bits, - # concatenate them into one long line, then format as a table. The data - # comes out in this order for each paragraph: - # $2 Size 2048 MB - # $3 Form Factor - # $4 Locator DIMM1 - # $5 Type - # $6 Type Detail Synchronous - # $7 Speed 667 MHz (1.5 ns) sed -e '/./{H;$!d;}' \ -e 'x;/Memory Device\n/!d;' \ -e 's/: /:/g' \ -e 's//}/g' \ -e 's/[ \t]*\n/\n/g' \ - $file \ + "${file}" \ | awk -F: '/Size|Type|Form.Factor|Type.Detail|[^ ]Locator/{printf("|%s", $2)}/Speed/{print "|" $2}' \ | sed -e 's/No Module Installed/{EMPTY}/' \ | sort \ | awk -F'|' '{printf(" %-9s %-8s %-17s %-13s %-13s %-8s\n", $4, $2, $7, $3, $5, $6);}' } -# ############################################################################## -# Parse the output of 'netstat -antp' -# ############################################################################## -parse_ip_s_link () { +parse_ip_s_link () { local PTFUNCNAME=parse_ip_s_link; + local file="$1" + + test ! -e "$file" && return + echo " interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors" echo " ========= ========= ========== ========== ========== ========== ==========" @@ -326,18 +1438,18 @@ parse_ip_s_link () { fuzzy_var = \$3; ${fuzzy_formula} tx_errors = fuzzy_var; printf \" %-8s %10d %10d %10d %10d %10d %10d\\n\", save[\"iface\"], save[\"bytes\"], save[\"packs\"], save[\"errs\"], tx_bytes, tx_packets, tx_errors; } - }" $@ + }" "$file" } -# ############################################################################## -# Parse the output of 'netstat -antp' which should be in $TMPDIR/percona-toolkit. -# ############################################################################## -parse_netstat () { - local file=$1 +parse_netstat () { local PTFUNCNAME=parse_netstat; + local file="$1" + + test ! -e "$file" && return + echo " Connections from remote IP addresses" awk '$1 ~ /^tcp/ && $5 ~ /^[1-9]/ { print substr($5, 0, index($5, ":") - 1); - }' $file | sort | uniq -c \ + }' "${file}" | sort | uniq -c \ | awk "{ fuzzy_var=\$1; ${fuzzy_formula} @@ -347,7 +1459,7 @@ parse_netstat () { echo " Connections to local IP addresses" awk '$1 ~ /^tcp/ && $5 ~ /^[1-9]/ { print substr($4, 0, index($4, ":") - 1); - }' $file | sort | uniq -c \ + }' "${file}" | sort | uniq -c \ | awk "{ fuzzy_var=\$1; ${fuzzy_formula} @@ -357,7 +1469,7 @@ parse_netstat () { echo " Connections to top 10 local ports" awk '$1 ~ /^tcp/ && $5 ~ /^[1-9]/ { print substr($4, index($4, ":") + 1); - }' $file | sort | uniq -c | sort -rn | head -n10 \ + }' "${file}" | sort | uniq -c | sort -rn | head -n10 \ | awk "{ fuzzy_var=\$1; ${fuzzy_formula} @@ -366,7 +1478,7 @@ parse_netstat () { echo " States of connections" awk '$1 ~ /^tcp/ { print $6; - }' $file | sort | uniq -c | sort -rn \ + }' "${file}" | sort | uniq -c | sort -rn \ | awk "{ fuzzy_var=\$1; ${fuzzy_formula} @@ -374,19 +1486,13 @@ parse_netstat () { }" | sort } -# ############################################################################## -# Parse the joined output of 'mount' and 'df -hP'. $1 = file; $2 = ostype. -# ############################################################################## -parse_filesystems () { - # Filesystem names and mountpoints can be very long. We try to align things - # as nicely as possible by making columns only as wide as needed. This - # requires two passes through the file. The first pass finds the max size of - # these columns and prints out a printf spec, and the second prints out the - # file nicely aligned. - local file=$1 - local platform=$2 +parse_filesystems () { local PTFUNCNAME=parse_filesystems; + local file="$1" + local platform="$2" - local spec=$(awk " + test ! -e "$file" && return + + local spec="$(awk " BEGIN { device = 10; fstype = 4; @@ -396,7 +1502,7 @@ parse_filesystems () { f_device = \$1; f_fstype = \$10; f_options = substr(\$11, 2, length(\$11) - 2); - if ( \"$2\" == \"FreeBSD\" ) { + if ( \"$2\" ~ /(Free|Open|Net)BSD/ ) { f_fstype = substr(\$9, 2, length(\$9) - 2); f_options = substr(\$0, index(\$0, \",\") + 2); f_options = substr(f_options, 1, length(f_options) - 1); @@ -414,7 +1520,7 @@ parse_filesystems () { END{ print \"%-\" device \"s %5s %4s %-\" fstype \"s %-\" options \"s %s\"; } - " $file) + " "${file}")" awk " BEGIN { @@ -424,22 +1530,21 @@ parse_filesystems () { { f_fstype = \$10; f_options = substr(\$11, 2, length(\$11) - 2); - if ( \"$2\" == \"FreeBSD\" ) { + if ( \"$2\" ~ /(Free|Open|Net)BSD/ ) { f_fstype = substr(\$9, 2, length(\$9) - 2); f_options = substr(\$0, index(\$0, \",\") + 2); f_options = substr(f_options, 1, length(f_options) - 1); } printf spec, \$1, \$2, \$5, f_fstype, f_options, \$6; } - " $file + " "${file}" } -# ############################################################################## -# Parse the output of fdisk -l, which should be in $TMPDIR/percona-toolkit; there might be -# multiple fdisk -l outputs in the file. -# ############################################################################## -parse_fdisk () { - local file=$1 +parse_fdisk () { local PTFUNCNAME=parse_fdisk; + local file="$1" + + test ! -e "$file" && return + awk ' BEGIN { format="%-12s %4s %10s %10s %18s\n"; @@ -465,128 +1570,55 @@ parse_fdisk () { } printf(format, $1, "Part", start, end, sprintf("%.0f", (end - start) * units)); } - ' $file + ' "${file}" } -# ############################################################################## -# Parse the output of dmesg, which should be in $TMPDIR/percona-toolkit, and detect -# virtualization. -# ############################################################################## -parse_virtualization_dmesg () { - local file=$1 - if grep -qi -e vmware -e vmxnet -e 'paravirtualized kernel on vmi' $file; then - echo "VMWare"; - elif grep -qi -e 'paravirtualized kernel on xen' -e 'Xen virtual console' $file; then - echo "Xen"; - elif grep -qi qemu $file; then - echo "QEmu"; - elif grep -qi 'paravirtualized kernel on KVM' $file; then - echo "KVM"; - elif grep -q VBOX $file; then - echo "VirtualBox"; - elif grep -qi 'hd.: Virtual .., ATA.*drive' $file; then - echo "Microsoft VirtualPC"; - fi -} +parse_ethernet_controller_lspci () { local PTFUNCNAME=parse_ethernet_controller_lspci; + local file="$1" -# ############################################################################## -# Try to figure out if a system is a guest by looking at prtdiag, smbios, etc. -# ############################################################################## -parse_virtualization_generic() { - if grep -i -e virtualbox "$1" >/dev/null; then - echo VirtualBox - elif grep -i -e vmware "$1" >/dev/null; then - echo VMWare - fi -} + test ! -e "$file" && return -# ############################################################################## -# Parse the output of lspci, which should be in $TMPDIR/percona-toolkit, and detect -# Ethernet cards. -# ############################################################################## -parse_ethernet_controller_lspci () { - local file=$1 - grep -i ethernet $file | cut -d: -f3 | while read line; do + grep -i ethernet "${file}" | cut -d: -f3 | while read line; do name_val Controller "${line}" done } -# ############################################################################## -# Parse the output of lspci, which should be in $TMPDIR/percona-toolkit, and detect RAID -# controllers. -# ############################################################################## -parse_raid_controller_lspci () { - local file=$1 - if grep -q "RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS" $file; then - echo 'LSI Logic MegaRAID SAS' - elif grep -q "Fusion-MPT SAS" $file; then - echo 'Fusion-MPT SAS' - elif grep -q "RAID bus controller: LSI Logic / Symbios Logic Unknown" $file; then - echo 'LSI Logic Unknown' - elif grep -q "RAID bus controller: Adaptec AAC-RAID" $file; then - echo 'AACRAID' - elif grep -q "3ware [0-9]* Storage Controller" $file; then - echo '3Ware' - elif grep -q "Hewlett-Packard Company Smart Array" $file; then - echo 'HP Smart Array' - elif grep -q " RAID bus controller: " $file; then - awk -F: '/RAID bus controller\:/ {print $3" "$5" "$6}' $file +parse_hpacucli () { local PTFUNCNAME=parse_hpacucli; + local file="$1" + test ! -e "$file" && return + grep 'logicaldrive\|physicaldrive' "${file}" +} + +parse_arcconf () { local PTFUNCNAME=parse_arcconf; + local file="$1" + + test ! -e "$file" && return + + local model="$(awk -F: '/Controller Model/{print $2}' "${file}")" + local chan="$(awk -F: '/Channel description/{print $2}' "${file}")" + local cache="$(awk -F: '/Installed memory/{print $2}' "${file}")" + local status="$(awk -F: '/Controller Status/{print $2}' "${file}")" + name_val Specs "$(echo "$model" | sed -e 's/ //'),${chan},${cache} cache,${status}" + + local battery="" + if grep -q "ZMM" "$file"; then + battery="$(grep -A2 'Controller ZMM Information' "$file" \ + | awk '/Status/ {s=$4} + END {printf "ZMM %s", s}')" + else + battery="$(grep -A5 'Controller Battery Info' "${file}" \ + | awk '/Capacity remaining/ {c=$4} + /Status/ {s=$3} + /Time remaining/ {t=sprintf("%dd%dh%dm", $7, $9, $11)} + END {printf("%d%%, %s remaining, %s", c, t, s)}')" fi -} - -# ############################################################################## -# Parse the output of dmesg, which should be in $TMPDIR/percona-toolkit, and detect RAID -# controllers. -# ############################################################################## -parse_raid_controller_dmesg () { - local file=$1 - pat='scsi[0-9].*: .*' - if grep -qi "${pat}megaraid" $file; then - echo 'LSI Logic MegaRAID SAS' - elif grep -q "Fusion MPT SAS" $file; then - echo 'Fusion-MPT SAS' - elif grep -q "${pat}aacraid" $file; then - echo 'AACRAID' - elif grep -q "${pat}3ware [0-9]* Storage Controller" $file; then - echo '3Ware' - fi -} - -# ############################################################################## -# Parse the output of "hpacucli ctrl all show config", which should be stored in -# $TMPDIR/percona-toolkit -# ############################################################################## -parse_hpacucli () { - local file=$1 - grep 'logicaldrive\|physicaldrive' $file -} - -# ############################################################################## -# Parse the output of arcconf, which should be stored in $TMPDIR/percona-toolkit -# ############################################################################## -parse_arcconf () { - local file=$1 - model=$(awk -F: '/Controller Model/{print $2}' $file) - chan="$(awk -F: '/Channel description/{print $2}' $file)" - cache="$(awk -F: '/Installed memory/{print $2}' $file)" - status="$(awk -F: '/Controller Status/{print $2}' $file)" - name_val Specs "${model/ /},${chan},${cache} cache,${status}" - - battery=$(grep -A5 'Controller Battery Info' $file \ - | awk '/Capacity remaining/ {c=$4} - /Status/ {s=$3} - /Time remaining/ {t=sprintf("%dd%dh%dm", $7, $9, $11)} - END {printf("%d%%, %s remaining, %s", c, t, s)}') name_val Battery "${battery}" - # ########################################################################### - # Logical devices - # ########################################################################### echo echo " LogicalDev Size RAID Disks Stripe Status Cache" echo " ========== ========= ==== ===== ====== ======= =======" - for dev in $(awk '/Logical device number/{print $4}' $file); do - sed -n -e "/^Logical device .* ${dev}$/,/^$\|^Logical device number/p" $file \ + for dev in $(awk '/Logical device number/{print $4}' "${file}"); do + sed -n -e "/^Logical device .* ${dev}$/,/^$\|^Logical device number/p" "${file}" \ | awk ' /Logical device name/ {d=$5} /Size/ {z=$3 " " $4} @@ -603,16 +1635,12 @@ parse_arcconf () { }' done - # ########################################################################### - # Physical devices - # ########################################################################### echo echo " PhysiclDev State Speed Vendor Model Size Cache" echo " ========== ======= ============= ======= ============ =========== =======" - # Find the paragraph with physical devices, tabularize with assoc arrays. - tempresult="" - sed -n -e '/Physical Device information/,/^$/p' $file \ + local tempresult="" + sed -n -e '/Physical Device information/,/^$/p' "${file}" \ | awk -F: ' /Device #[0-9]/ { device=substr($0, index($0, "#")); @@ -661,60 +1689,82 @@ parse_arcconf () { }' } -# ############################################################################## -# Parse the output of "lsiutil -i -s". -# ############################################################################## -parse_fusionmpt_lsiutil () { - local file=$1 +parse_fusionmpt_lsiutil () { local PTFUNCNAME=parse_fusionmpt_lsiutil; + local file="$1" echo - awk '/LSI.*Firmware/ { print " ", $0 }' $file - grep . $file | sed -n -e '/B___T___L/,$ {s/^/ /; p}' + awk '/LSI.*Firmware/ { print " ", $0 }' "${file}" + grep . "${file}" | sed -n -e '/B___T___L/,$ {s/^/ /; p}' } -# ############################################################################## -# Parse the output of MegaCli64 -AdpAllInfo -aALL from $TMPDIR/percona-toolkit. -# ############################################################################## -parse_lsi_megaraid_adapter_info () { - local file=$1 - name=$(awk -F: '/Product Name/{print substr($2, 2)}' $file); - int=$(awk '/Host Interface/{print $4}' $file); - prt=$(awk '/Number of Backend Port/{print $5}' $file); - bbu=$(awk '/^BBU :/{print $3}' $file); - mem=$(awk '/Memory Size/{print $4}' $file); - vdr=$(awk '/Virtual Drives/{print $4}' $file); - dvd=$(awk '/Degraded/{print $3}' $file); - phy=$(awk '/^ Disks/{print $3}' $file); - crd=$(awk '/Critical Disks/{print $4}' $file); - fad=$(awk '/Failed Disks/{print $4}' $file); +parse_lsi_megaraid_adapter_info () { local PTFUNCNAME=parse_lsi_megaraid_adapter_info; + local file="$1" + + test ! -e "$file" && return + + local name="$(awk -F: '/Product Name/{print substr($2, 2)}' "${file}")"; + local int=$(awk '/Host Interface/{print $4}' "${file}"); + local prt=$(awk '/Number of Backend Port/{print $5}' "${file}"); + local bbu=$(awk '/^BBU :/{print $3}' "${file}"); + local mem=$(awk '/Memory Size/{print $4}' "${file}"); + local vdr=$(awk '/Virtual Drives/{print $4}' "${file}"); + local dvd=$(awk '/Degraded/{print $3}' "${file}"); + local phy=$(awk '/^ Disks/{print $3}' "${file}"); + local crd=$(awk '/Critical Disks/{print $4}' "${file}"); + local fad=$(awk '/Failed Disks/{print $4}' "${file}"); + name_val Model "${name}, ${int} interface, ${prt} ports" name_val Cache "${mem} Memory, BBU ${bbu}" } -# ############################################################################## -# Parse the output (saved in $TMPDIR/percona-toolkit) of -# /opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -aALL -# ############################################################################## -parse_lsi_megaraid_bbu_status () { - local file=$1 - charge=$(awk '/Relative State/{print $5}' $file); - temp=$(awk '/^Temperature/{print $2}' $file); - soh=$(awk '/isSOHGood:/{print $2}' $file); +parse_lsi_megaraid_bbu_status () { local PTFUNCNAME=parse_lsi_megaraid_bbu_status; + local file="$1" + + test ! -e "$file" && return + + local charge=$(awk '/Relative State/{print $5}' "${file}"); + local temp=$(awk '/^Temperature/{print $2}' "${file}"); + local soh=$(awk '/isSOHGood:/{print $2}' "${file}"); name_val BBU "${charge}% Charged, Temperature ${temp}C, isSOHGood=${soh}" } -# ############################################################################## -# Parse physical devices from the output (saved in $TMPDIR/percona-toolkit) of -# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL -# OR, it will also work with the output of -# /opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL -# ############################################################################## -parse_lsi_megaraid_devices () { - local file=$1 +format_lvs () { local PTFUNCNAME=format_lvs; + local lvs_file="$1" + local vgs_file="$2" + + if [ -e "$lvs_file" -a -e "$vgs_file" ]; then + local header="$(head -n1 "$lvs_file")$(head -n1 "$vgs_file" | sed -e 's/^ *VG//')" + + echo $header + tail -n+2 "$lvs_file" | while read lvs_line; do + local current_vg="$(echo $lvs_line | awk '{print $2}')" + while read vgs_line; do + local current_vgs_vg="$(echo $vgs_line | awk '{print $1}' )" + if [ "$current_vg" = "$current_vgs_vg" ]; then + lvs_line="${lvs_line}$(echo $vgs_line | sed -e "s/^ *$current_vg//")" + break + fi + done < "$vgs_file" + echo $lvs_line + done + else + if [ -e "$lvs_file" ]; then + cat "$lvs_file" + else + echo "Cannot execute 'lvs'"; + fi + fi +} + +parse_lsi_megaraid_devices () { local PTFUNCNAME=parse_lsi_megaraid_devices; + local file="$1" + + test ! -e "$file" && return + echo echo " PhysiclDev Type State Errors Vendor Model Size" echo " ========== ==== ======= ====== ======= ============ ===========" - for dev in $(awk '/Device Id/{print $3}' $file); do - sed -e '/./{H;$!d;}' -e "x;/Device Id: ${dev}/!d;" $file \ + for dev in $(awk '/Device Id/{print $3}' "${file}"); do + sed -e '/./{H;$!d;}' -e "x;/Device Id: ${dev}/!d;" "${file}" \ | awk ' /Media Type/ {d=substr($0, index($0, ":") + 2)} /PD Type/ {t=$3} @@ -731,36 +1781,24 @@ parse_lsi_megaraid_devices () { done } -# ############################################################################## -# Parse virtual devices from the output (saved in $TMPDIR/percona-toolkit) of -# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL -# OR, it will also work with the output of -# /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aAll -# ############################################################################## -parse_lsi_megaraid_virtual_devices () { - local file=$1 - # Somewhere on the Internet, I found the following guide to understanding the - # RAID level, but I don't know the source anymore. - # Primary-0, Secondary-0, RAID Level Qualifier-0 = 0 - # Primary-1, Secondary-0, RAID Level Qualifier-0 = 1 - # Primary-5, Secondary-0, RAID Level Qualifier-3 = 5 - # Primary-1, Secondary-3, RAID Level Qualifier-0 = 10 - # I am not sure if this is always correct or not (it seems correct). The - # terminology MegaRAID uses is not clear to me, and isn't documented that I - # am aware of. Anyone who can clarify the above, please contact me. +parse_lsi_megaraid_virtual_devices () { local PTFUNCNAME=parse_lsi_megaraid_virtual_devices; + local file="$1" + + test ! -e "$file" && return + echo echo " VirtualDev Size RAID Level Disks SpnDpth Stripe Status Cache" echo " ========== ========= ========== ===== ======= ====== ======= =========" awk ' - /^Virtual Disk:/ { + /^Virtual (Drive|Disk):/ { device = $3; devicenames[device] = device; } /Number Of Drives/ { devices[device ",numdisks"] = substr($0, index($0, ":") + 1); } - /^Name:/ { - devices[device ",name"] = $2 > "" ? $2 : "(no name)"; + /^Name/ { + devices[device ",name"] = substr($0, index($0, ":") + 1) > "" ? substr($0, index($0, ":") + 1) : "(no name)"; } /RAID Level/ { devices[device ",primary"] = substr($3, index($3, "-") + 1, 1); @@ -773,14 +1811,14 @@ parse_lsi_megaraid_virtual_devices () { /Number of Spans/ { devices[device ",numspans"] = $4; } - /^Size:/ { + /^Size/ { devices[device ",size"] = substr($0, index($0, ":") + 1); } - /^State:/ { - devices[device ",state"] = $2; + /^State/ { + devices[device ",state"] = substr($0, index($0, ":") + 2); } - /^Stripe Size:/ { - devices[device ",stripe"] = $3; + /^Stripe? Size/ { + devices[device ",stripe"] = substr($0, index($0, ":") + 1); } /^Current Cache Policy/ { devices[device ",wpolicy"] = $4 ~ /WriteBack/ ? "WB" : "WT"; @@ -809,15 +1847,14 @@ parse_lsi_megaraid_virtual_devices () { devices[device ",stripe"], devices[device ",state"], devices[device ",wpolicy"] ", " devices[device ",rpolicy"]); } - }' $file + }' "${file}" } -# ############################################################################## -# Simplifies vmstat and aligns it nicely. We don't need the memory stats, the -# system activity is enough. -# ############################################################################## -format_vmstat () { - local file=$1 +format_vmstat () { local PTFUNCNAME=format_vmstat; + local file="$1" + + test ! -e "$file" && return + awk " BEGIN { format = \" %2s %2s %4s %4s %5s %5s %6s %6s %3s %3s %3s %3s %3s\n\"; @@ -844,17 +1881,209 @@ format_vmstat () { fuzzy_var = \$17; st = fuzzy_var; printf format, r, b, si, so, bi, bo, ir, cs, us, sy, il, wa, st; } - " $file + " "${file}" } +processes_section () { local PTFUNCNAME=processes_section; + local top_process_file="$1" + local notable_procs_file="$2" + local vmstat_file="$3" + local platform="$4" + + if echo "${PT_SUMMARY_SKIP}" | grep -v PROCESS >/dev/null; then + section Top_Processes + cat "$top_process_file" + section Notable_Processes + cat "$notable_procs_file" + if [ -e "$vmstat_file" ]; then + section "Simplified_and_fuzzy_rounded_vmstat_(wait_please)" + wait # For the process we forked that was gathering vmstat samples + if [ "${platform}" = "Linux" ]; then + format_vmstat "$vmstat_file" + else + cat "$vmstat_file" + fi + fi + fi +} + +report_system_summary () { local PTFUNCNAME=report_system_summary; + local data_dir="$1" + + section Percona_Toolkit_System_Summary_Report + + + test ! -e "$data_dir/summary" \ + && die "The data directory doesn't have a summary file, exiting." + + local platform="$(get_var platform "$data_dir/summary")" + name_val "Date" "`date -u +'%F %T UTC'` (local TZ: `date +'%Z %z'`)" + name_val "Hostname" "$(get_var hostname "$data_dir/summary")" + name_val "Uptime" "$(get_var uptime "$data_dir/summary")" + + if [ -n "$(get_var vendor "$data_dir/summary")" ]; then + name_val "System" "$(get_var system "$data_dir/summary")"; + name_val "Service Tag" "$(get_var servicetag "$data_dir/summary")"; + fi + + name_val "Platform" "${platform}" + local zonename="$(get_var zonename "$data_dir/summary")"; + if [ -n "${zonename}" ]; then + name_val "Zonename" "$zonename" + fi + + name_val Release "$(get_var release "$data_dir/summary")" + name_val Kernel "$(get_var kernel "$data_dir/summary")" + + name_val "Architecture" "CPU = $(get_var CPU_ARCH "$data_dir/summary"), OS = $(get_var OS_ARCH "$data_dir/summary")" + + local threading="$(get_var threading "$data_dir/summary")" + local compiler="$(get_var compiler "$data_dir/summary")" + [ -n "$threading" ] && name_val Threading "$threading" + [ -n "$compiler" ] && name_val Compiler "$compiler" + + local getenforce="$(get_var getenforce "$data_dir/summary")" + [ -n "$getenforce" ] && name_val "SELinux" "${getenforce}"; + + name_val Virtualized "$(get_var virt "$data_dir/summary")" + + section Processor + if [ -e "$data_dir/proc_cpuinfo_copy" ]; then + parse_proc_cpuinfo "$data_dir/proc_cpuinfo_copy" + elif [ "${platform}" = "FreeBSD" ]; then + parse_sysctl_cpu_freebsd "$data_dir/sysctl" + elif [ "${platform}" = "NetBSD" ]; then + parse_sysctl_cpu_netbsd "$data_dir/sysctl" + elif [ "${platform}" = "OpenBSD" ]; then + parse_sysctl_cpu_openbsd "$data_dir/sysctl" + elif [ "${platform}" = "SunOS" ]; then + parse_psrinfo_cpus "$data_dir/psrinfo_minus_v" + fi + + section Memory + if [ "${platform}" = "Linux" ]; then + parse_free_minus_b "$data_dir/memory" + elif [ "${platform}" = "FreeBSD" ]; then + parse_memory_sysctl_freebsd "$data_dir/sysctl" + elif [ "${platform}" = "NetBSD" ]; then + parse_memory_sysctl_netbsd "$data_dir/sysctl" "$data_dir/swapctl" + elif [ "${platform}" = "OpenBSD" ]; then + parse_memory_sysctl_openbsd "$data_dir/sysctl" "$data_dir/swapctl" + elif [ "${platform}" = "SunOS" ]; then + name_val Memory "$(cat "$data_dir/memory")" + fi + + local rss=$( get_var rss "$data_dir/summary" ) + name_val UsedRSS "$(shorten ${rss} 1)" + + if [ "${platform}" = "Linux" ]; then + name_val Swappiness "$(get_var swappiness "$data_dir/summary")" + name_val DirtyPolicy "$(get_var dirtypolicy "$data_dir/summary")" + local dirty_status="$(get_var dirtystatus "$data_dir/summary")" + if [ -n "$dirty_status" ]; then + name_val DirtyStatus "$dirty_status" + fi + fi + + if [ -s "$data_dir/dmidecode" ]; then + parse_dmidecode_mem_devices "$data_dir/dmidecode" + fi + + + if [ -s "$data_dir/mounted_fs" ]; then + section "Mounted_Filesystems" + parse_filesystems "$data_dir/mounted_fs" "${platform}" + fi + + if [ "${platform}" = "Linux" ]; then + section "Disk_Schedulers_And_Queue_Size" + + local disks="$( get_var disks "$data_dir/summary" )" + for disk in ${disks}; do + name_val "${disk}" "$( get_var "internal::${disk}" "$data_dir/summary" )" + done + + section "Disk_Partioning" + parse_fdisk "$data_dir/partitioning" + + section "Kernel_Inode_State" + for file in dentry-state file-nr inode-nr; do + name_val "${file}" "$(get_var "${file}" "$data_dir/summary")" + done + + section "LVM_Volumes" + format_lvs "$data_dir/lvs" "$data_dir/vgs" + fi + + section "RAID_Controller" + local controller="$(get_var raid_controller "$data_dir/summary")" + name_val Controller "$controller" + local key="$(get_var "internal::raid_opt" "$data_dir/summary")" + case "$key" in + 0) + cat "$data_dir/raid-controller" + ;; + 1) + parse_arcconf "$data_dir/raid-controller" + ;; + 2) + parse_hpacucli "$data_dir/raid-controller" + ;; + 3) + [ -e "$data_dir/lsi_megaraid_adapter_info.tmp" ] && \ + parse_lsi_megaraid_adapter_info "$data_dir/lsi_megaraid_adapter_info.tmp" + [ -e "$data_dir/lsi_megaraid_bbu_status.tmp" ] && \ + parse_lsi_megaraid_bbu_status "$data_dir/lsi_megaraid_bbu_status.tmp" + if [ -e "$data_dir/lsi_megaraid_devices.tmp" ]; then + parse_lsi_megaraid_virtual_devices "$data_dir/lsi_megaraid_devices.tmp" + parse_lsi_megaraid_devices "$data_dir/lsi_megaraid_devices.tmp" + fi + ;; + esac + + if echo "${PT_SUMMARY_SKIP}" | grep -v NETWORK >/dev/null; then + if [ "${platform}" = "Linux" ]; then + section Network_Config + if [ -s "$data_dir/lspci_file" ]; then + parse_ethernet_controller_lspci "$data_dir/lspci_file" + fi + if grep net.ipv4.tcp_fin_timeout "$data_dir/sysctl" > /dev/null 2>&1; then + name_val "FIN Timeout" "$(awk '/net.ipv4.tcp_fin_timeout/{print $NF}' "$data_dir/sysctl")" + name_val "Port Range" "$(awk '/net.ipv4.ip_local_port_range/{print $NF}' "$data_dir/sysctl")" + fi + fi + + + if [ -s "$data_dir/ip" ]; then + section Interface_Statistics + parse_ip_s_link "$data_dir/ip" + fi + + if [ "${platform}" = "Linux" ] && [ -e "$data_dir/netstat" ]; then + section Network_Connections + parse_netstat "$data_dir/netstat" + fi + fi + + processes_section "$data_dir/processes" "$data_dir/notable_procs" "$data_dir/vmstat" "$platform" + + section The_End +} + +# ########################################################################### +# End report_system_info package +# ########################################################################### + # ############################################################################## # The main() function is called at the end of the script. This makes it # testable. Major bits of parsing are separated into functions for testability. -# As a general rule, we cannot 'cp' files from /proc, because they might be -# empty afterwards. (I've seen 'cp /proc/cpuinfo' create an empty file.) But -# 'cat' works okay. # ############################################################################## -main () { +main () { local PTFUNCNAME=main; + trap sigtrap HUP INT TERM + + local RAN_WITH="--sleep=$OPT_SLEEP --save-data=$OPT_SAVE_DATA" + + _d "Starting $0 $RAN_WITH" # Begin by setting the $PATH to include some common locations that are not # always in the $PATH, including the "sbin" locations, and some common @@ -865,369 +2094,46 @@ main () { # Set up temporary files. mk_tmpdir - temp_files "rm" - temp_files "touch" - section Percona_Toolkit_System_Summary_Report - # ######################################################################## - # Grab a bunch of stuff and put it into temp files for later. - # ######################################################################## - sysctl -a > $TMPDIR/percona-toolkit.sysctl 2>/dev/null + local data_dir="$(setup_data_dir)" - # ######################################################################## - # General date, time, load, etc - # ######################################################################## - platform="$(uname -s)" - name_val "Date" "`date -u +'%F %T UTC'` (local TZ: `date +'%Z %z'`)" - name_val "Hostname" "$(uname -n)" - name_val "Uptime" "$(uptime | awk '{print substr($0, index($0, "up") + 3)}')" - if which dmidecode > /dev/null 2>&1; then - vendor="$(dmidecode -s system-manufacturer 2>/dev/null | sed 's/ *$//g')" - if [ "${vendor}" ]; then - product="$(dmidecode -s system-product-name 2>/dev/null | sed 's/ *$//g')" - version="$(dmidecode -s system-version 2>/dev/null | sed 's/ *$//g')" - chassis="$(dmidecode -s chassis-type 2>/dev/null | sed 's/ *$//g')" - system="${vendor}; ${product}; v${version} (${chassis})" - name_val "System" "${system}"; - servicetag="$(dmidecode -s system-serial-number 2>/dev/null | sed 's/ *$//g')" - name_val "Service Tag" "${servicetag:-Not found}"; - fi - fi - name_val "Platform" "${platform}" - if [ "${platform}" = "SunOS" ]; then - if which zonename >/dev/null 2>&1 ; then - name_val "Zonename" "$(zonename)" - fi - fi + _d "Temp dir is [$TMPDIR], saving data in [$data_dir]" - # Try to find all sorts of different files that say what the release is. - if [ "${platform}" = "Linux" ]; then - kernel="$(uname -r)" - if [ -e /etc/fedora-release ]; then - release=$(cat /etc/fedora-release); - elif [ -e /etc/redhat-release ]; then - release=$(cat /etc/redhat-release); - elif [ -e /etc/system-release ]; then - release=$(cat /etc/system-release); - elif which lsb_release >/dev/null 2>&1; then - release="$(lsb_release -ds) ($(lsb_release -cs))" - elif [ -e /etc/lsb-release ]; then - release=$(grep DISTRIB_DESCRIPTION /etc/lsb-release |awk -F'=' '{print $2}' |sed 's#"##g'); - elif [ -e /etc/debian_version ]; then - release="Debian-based version $(cat /etc/debian_version)"; - if [ -e /etc/apt/sources.list ]; then - code=`cat /etc/apt/sources.list |awk '/^deb/ {print $3}' |awk -F/ '{print $1}'| awk 'BEGIN {FS="|"}{print $1}' | sort | uniq -c | sort -rn |head -n1 |awk '{print $2}'` - release="${release} (${code})" - fi - elif ls /etc/*release >/dev/null 2>&1; then - if grep -q DISTRIB_DESCRIPTION /etc/*release; then - release=$(grep DISTRIB_DESCRIPTION /etc/*release | head -n1); - else - release=$(cat /etc/*release | head -n1); - fi - fi - elif [ "${platform}" = "FreeBSD" ]; then - release="$(uname -r)" - kernel="$(sysctl -n kern.osrevision)" - elif [ "${platform}" = "SunOS" ]; then - release="$(head -n1 /etc/release)" - if [ -z "${release}" ]; then - release="$(uname -r)" - fi - kernel="$(uname -v)" - fi - name_val Release "${release}" - name_val Kernel "${kernel}" + collect_system_data "$data_dir" - CPU_ARCH='32-bit' - OS_ARCH='32-bit' - if [ "${platform}" = "Linux" ]; then - if grep -q ' lm ' /proc/cpuinfo; then - CPU_ARCH='64-bit' - fi - elif [ "${platform}" = "FreeBSD" ]; then - if sysctl hw.machine_arch | grep -v 'i[36]86' >/dev/null; then - CPU_ARCH='64-bit' - fi - elif [ "${platform}" = "SunOS" ]; then - if isainfo -b | grep 64 >/dev/null ; then - CPU_ARCH="64-bit" - fi - fi - if file /bin/sh | grep '64-bit' >/dev/null; then - OS_ARCH='64-bit' - fi - name_val "Architecture" "CPU = $CPU_ARCH, OS = $OS_ARCH" + report_system_summary "$data_dir" - # Threading library - if [ "${platform}" = "Linux" ]; then - name_val Threading "$(getconf GNU_LIBPTHREAD_VERSION)" - fi - if [ -x /lib/libc.so.6 ]; then - name_val "Compiler" "$(/lib/libc.so.6 | grep 'Compiled by' | cut -c13-)" - fi - - if [ "${platform}" = "Linux" ]; then - if getenforce >/dev/null 2>&1; then - getenforce="$(getenforce 2>&1)"; - fi - name_val "SELinux" "${getenforce:-No SELinux detected}"; - fi - - # We look in dmesg for virtualization information first, because it's often - # available to non-root users and usually has telltale signs. It's most - # reliable to look at /var/log/dmesg if possible. There are a number of - # other ways to find out if a system is virtualized. - cat /var/log/dmesg > $TMPDIR/percona-toolkit 2>/dev/null - if [ ! -s $TMPDIR/percona-toolkit ]; then - dmesg > $TMPDIR/percona-toolkit 2>/dev/null - fi - if [ -s $TMPDIR/percona-toolkit ]; then - virt="$(parse_virtualization_dmesg $TMPDIR/percona-toolkit)" - fi - if [ -z "${virt}" ]; then - if which lspci >/dev/null 2>&1; then - lspci > $TMPDIR/percona-toolkit 2>/dev/null - if grep -qi virtualbox $TMPDIR/percona-toolkit; then - virt=VirtualBox - elif grep -qi vmware $TMPDIR/percona-toolkit; then - virt=VMWare - elif [ -e /proc/user_beancounters ]; then - virt="OpenVZ/Virtuozzo" - fi - fi - elif [ "${platform}" = "FreeBSD" ]; then - if ps -o stat | grep J ; then - virt="FreeBSD Jail" - fi - elif [ "${platform}" = "SunOS" ]; then - if which prtdiag >/dev/null 2>&1 && prtdiag > $TMPDIR/percona-toolkit.prtdiag 2>/dev/null; then - virt="$(parse_virtualization_generic $TMPDIR/percona-toolkit.prtdiag)" - elif which smbios >/dev/null 2>&1 && smbios > $TMPDIR/percona-toolkit.smbios 2>/dev/null; then - virt="$(parse_virtualization_generic $TMPDIR/percona-toolkit.smbios)" - fi - fi - name_val Virtualized "${virt:-No virtualization detected}" - - # ######################################################################## - # Processor/CPU, Memory, Swappiness, dmidecode - # ######################################################################## - section Processor - if [ -f /proc/cpuinfo ]; then - cat /proc/cpuinfo > $TMPDIR/percona-toolkit 2>/dev/null - parse_proc_cpuinfo $TMPDIR/percona-toolkit - elif [ "${platform}" = "FreeBSD" ]; then - parse_sysctl_cpu_freebsd $TMPDIR/percona-toolkit.sysctl - elif [ "${platform}" = "SunOS" ]; then - psrinfo -v > $TMPDIR/percona-toolkit - parse_psrinfo_cpus $TMPDIR/percona-toolkit - # TODO: prtconf -v actually prints the CPU model name etc. - fi - - section Memory - if [ "${platform}" = "Linux" ]; then - free -b > $TMPDIR/percona-toolkit - cat /proc/meminfo >> $TMPDIR/percona-toolkit - parse_free_minus_b $TMPDIR/percona-toolkit - elif [ "${platform}" = "FreeBSD" ]; then - parse_memory_sysctl_freebsd $TMPDIR/percona-toolkit.sysctl - elif [ "${platform}" = "SunOS" ]; then - name_val Memory "$(prtconf | awk -F: '/Memory/{print $2}')" - fi - - rss=$(ps -eo rss 2>/dev/null | awk '/[0-9]/{total += $1 * 1024} END {print total}') - name_val UsedRSS "$(shorten ${rss} 1)" - - if [ "${platform}" = "Linux" ]; then - name_val Swappiness "$(sysctl vm.swappiness 2>&1)" - name_val DirtyPolicy "$(sysctl vm.dirty_ratio 2>&1), $(sysctl vm.dirty_background_ratio 2>&1)" - if sysctl vm.dirty_bytes > /dev/null 2>&1; then - name_val DirtyStatus "$(sysctl vm.dirty_bytes 2>&1), $(sysctl vm.dirty_background_bytes 2>&1)" - fi - fi - - if which dmidecode >/dev/null 2>&1 && dmidecode > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_dmidecode_mem_devices $TMPDIR/percona-toolkit - fi - - # ######################################################################## - # Disks, RAID, Filesystems - # ######################################################################## - # TODO: Add info about software RAID - - if echo "${PT_SUMMARY_SKIP}" | grep -v MOUNT >/dev/null; then - if [ "${platform}" != "SunOS" ]; then - section "Mounted_Filesystems" - cmd="df -h" - if [ "${platform}" = "Linux" ]; then - cmd="df -h -P" - fi - $cmd | sort > $TMPDIR/percona-toolkit2 - mount | sort | join $TMPDIR/percona-toolkit2 - > $TMPDIR/percona-toolkit - parse_filesystems $TMPDIR/percona-toolkit "${platform}" - fi - fi - - if [ "${platform}" = "Linux" ]; then - section "Disk_Schedulers_And_Queue_Size" - echo "" > $TMPDIR/percona-toolkit - for disk in $(ls /sys/block/ | grep -v -e ram -e loop -e 'fd[0-9]'); do - if [ -e "/sys/block/${disk}/queue/scheduler" ]; then - name_val "${disk}" "$(cat /sys/block/${disk}/queue/scheduler | grep -o '\[.*\]') $(cat /sys/block/${disk}/queue/nr_requests)" - fdisk -l "/dev/${disk}" >> $TMPDIR/percona-toolkit 2>/dev/null - fi - done - - # Relies on $TMPDIR/percona-toolkit having data from the Disk Schedulers loop. - section "Disk_Partioning" - parse_fdisk $TMPDIR/percona-toolkit - - section "Kernel_Inode_State" - for file in dentry-state file-nr inode-nr; do - name_val "${file}" "$(cat /proc/sys/fs/${file} 2>&1)" - done - - section "LVM_Volumes" - - if which lvs >/dev/null 2>&1 && test -x "$(which lvs)"; then - lvs 2>&1 - else - echo "Cannot execute 'lvs'"; - fi - fi - - section "RAID_Controller" - - # ######################################################################## - # We look in lspci first because it's more reliable, then dmesg, because it's - # often available to non-root users. It's most reliable to look at - # /var/log/dmesg if possible. - # ######################################################################## - if which lspci >/dev/null 2>&1 && lspci > $TMPDIR/percona-toolkit 2>/dev/null; then - controller="$(parse_raid_controller_lspci $TMPDIR/percona-toolkit)" - fi - if [ -z "${controller}" ]; then - cat /var/log/dmesg > $TMPDIR/percona-toolkit 2>/dev/null - if [ ! -s $TMPDIR/percona-toolkit ]; then - dmesg > $TMPDIR/percona-toolkit 2>/dev/null - fi - controller="$(parse_raid_controller_dmesg $TMPDIR/percona-toolkit)" - fi - - name_val Controller "${controller:-No RAID controller detected}" - - # ######################################################################## - # Attempt to get, parse, and print RAID controller status from possibly - # proprietary management software. Any executables that are normally stored - # in a weird location, such as /usr/StorMan/arcconf, should have their - # location added to $PATH at the beginning of main(). - # ######################################################################## - notfound="" - if [ "${controller}" = "AACRAID" ]; then - if arcconf getconfig 1 > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_arcconf $TMPDIR/percona-toolkit - elif ! which arcconf >/dev/null 2>&1; then - notfound="e.g. http://www.adaptec.com/en-US/support/raid/scsi_raid/ASR-2120S/" - fi - elif [ "${controller}" = "HP Smart Array" ]; then - if hpacucli ctrl all show config > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_hpacucli $TMPDIR/percona-toolkit - elif ! which hpacucli >/dev/null 2>&1; then - notfound="your package repository or the manufacturer's website" - fi - elif [ "${controller}" = "LSI Logic MegaRAID SAS" ]; then - if MegaCli64 -AdpAllInfo -aALL -NoLog > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_lsi_megaraid_adapter_info $TMPDIR/percona-toolkit - elif ! which MegaCli64 >/dev/null 2>&1; then - notfound="your package repository or the manufacturer's website" - fi - if MegaCli64 -AdpBbuCmd -GetBbuStatus -aALL -NoLog > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_lsi_megaraid_bbu_status $TMPDIR/percona-toolkit - fi - if MegaCli64 -LdPdInfo -aALL -NoLog > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_lsi_megaraid_virtual_devices $TMPDIR/percona-toolkit - parse_lsi_megaraid_devices $TMPDIR/percona-toolkit - fi - fi - - if [ "${notfound}" ]; then - echo " RAID controller software not found; try getting it from" - echo " ${notfound}" - fi - - if echo "${PT_SUMMARY_SKIP}" | grep -v NETWORK >/dev/null; then - # ##################################################################### - # Network stuff - # ##################################################################### - if [ "${platform}" = "Linux" ]; then - section Network_Config - if which lspci > /dev/null 2>&1 && lspci > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_ethernet_controller_lspci $TMPDIR/percona-toolkit - fi - if sysctl net.ipv4.tcp_fin_timeout > /dev/null 2>&1; then - name_val "FIN Timeout" "$(sysctl net.ipv4.tcp_fin_timeout)" - name_val "Port Range" "$(sysctl net.ipv4.ip_local_port_range)" - fi - fi - - # TODO cat /proc/sys/net/ipv4/ip_conntrack_max ; it might be - # /proc/sys/net/netfilter/nf_conntrack_max or /proc/sys/net/nf_conntrack_max - # in new kernels like Fedora 12? - - if which ip >/dev/null 2>&1 && ip -s link > $TMPDIR/percona-toolkit 2>/dev/null; then - section Interface_Statistics - parse_ip_s_link $TMPDIR/percona-toolkit - fi - - if [ "${platform}" = "Linux" ]; then - section Network_Connections - if netstat -antp > $TMPDIR/percona-toolkit 2>/dev/null; then - parse_netstat $TMPDIR/percona-toolkit - fi - fi - fi - - # ######################################################################## - # Processes, load, etc - # ######################################################################## - if echo "${PT_SUMMARY_SKIP}" | grep -v PROCESS >/dev/null; then - section Top_Processes - if which prstat > /dev/null 2>&1; then - prstat | head - elif which top > /dev/null 2>&1 ; then - cmd="top -bn 1" - if [ "${platform}" = "FreeBSD" ]; then - cmd="top -b -d 1" - fi - $cmd | sed -e 's# *$##g' -e '/./{H;$!d;}' -e 'x;/PID/!d;' | grep . | head - fi - if which vmstat > /dev/null 2>&1 ; then - section "Simplified_and_fuzzy_rounded_vmstat_(wait_please)" - vmstat 1 5 > $TMPDIR/percona-toolkit - if [ "${platform}" = "Linux" ]; then - format_vmstat $TMPDIR/percona-toolkit - else - # TODO: simplify/format for other platforms - cat $TMPDIR/percona-toolkit - fi - fi - fi - - # ######################################################################## - # All done. Signal the end so it's explicit. - # ######################################################################## - temp_files "rm" - temp_files "check" rm_tmpdir - section The_End +} + +sigtrap() { local PTFUNCNAME=sigtrap; + warn "Caught signal, forcing exit" + exit $EXIT_STATUS } # Execute the program if it was not included from another file. This makes it # possible to include without executing, and thus test. -if [ "$(basename "$0")" = "pt-summary" ] || [ "$(basename "$0")" = "bash" -a "$_" = "$0" ]; then - main $@ +# Execute the program if it was not included from another file. +# This makes it possible to include without executing, and thus test. +if [ "${0##*/}" = "$TOOL" ] \ + || [ "${0##*/}" = "bash" -a "$_" = "$0" ]; then + + # Set up temporary dir. + mk_tmpdir + # Parse command line options. + REPORT_UNRECOGNIZED_OPTIONS="" + parse_options $0 "$ARGS" + usage_or_errors $0 + po_status=$? + rm_tmpdir + + if [ $po_status -ne 0 ]; then + exit $po_status + fi + main "$ARGS" fi + # ############################################################################ # Documentation # ############################################################################ @@ -1285,7 +2191,36 @@ although some output might not be possible to generate without root. =head1 OPTIONS -This tool does not have any command-line options. +=over + +=item --config + +type: string + +Read this comma-separated list of config files. If specified, this must be the +first option on the command line. + +=item --help + +Print help and exit. + +=item --save-data + +type: string + +Save the data files used to generate the summary in this directory. + +=item --sleep + +type: int; default: 5 + +How much time to sleep when gathering samples from vmstat. + +=item --version + +Print tool's version and exit. + +=back =head1 ENVIRONMENT diff --git a/lib/bash/collect_mysql_info.sh b/lib/bash/collect_mysql_info.sh index e9f4f6d1..f3ff567b 100644 --- a/lib/bash/collect_mysql_info.sh +++ b/lib/bash/collect_mysql_info.sh @@ -25,6 +25,9 @@ # THIS LIB REQUIRES log_warn_die.sh, summary_common.sh, and alt_cmds.sh! # XXX +CMD_MYSQL="${CMD_MYSQL:-""}" +CMD_MYSQLDUMP="${CMD_MYSQLDUMP:-""}" + # Simply looks for instances of mysqld in the outof of ps. collect_mysqld_instances () { local file="$1" @@ -36,7 +39,7 @@ collect_mysqld_instances () { # interested in, in case there are multiple instances. find_my_cnf_file() { local file="$1" - local port=${2:-""} + local port="${2:-""}" local cnf_file="" if test -n "$port" && grep -- "/mysqld.*--port=$port" "${file}" >/dev/null 2>&1 ; then @@ -100,7 +103,7 @@ collect_mysql_processlist () { collect_mysql_users () { local file="$1" - $CMD_MYSQL $EXT_ARGV -ssE -e 'SELECT COUNT(*), SUM(user=""), SUM(password=""), SUM(password NOT LIKE "*%") FROM mysql.user' > "$file" 2>/dev/null + $CMD_MYSQL $EXT_ARGV -ss -e 'SELECT COUNT(*), SUM(user=""), SUM(password=""), SUM(password NOT LIKE "*%") FROM mysql.user' > "$file" 2>/dev/null } collect_master_logs_status () { diff --git a/lib/bash/collect_system_info.sh b/lib/bash/collect_system_info.sh new file mode 100644 index 00000000..8cd6bdab --- /dev/null +++ b/lib/bash/collect_system_info.sh @@ -0,0 +1,562 @@ +# This program is copyright 2011-2012 Percona Inc. +# Feedback and improvements are welcome. +# +# THIS PROGRAM IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF +# MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. +# +# 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, version 2; OR the Perl Artistic License. On UNIX and similar +# systems, you can issue `man perlgpl' or `man perlartistic' to read these +# licenses. +# +# 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., 59 Temple +# Place, Suite 330, Boston, MA 02111-1307 USA. +# ########################################################################### +# collect_system_info package +# ########################################################################### + +# Package: collect_system_info +# collects system information. + +# XXX +# THIS LIB REQUIRES log_warn_die.sh, summary_common.sh, and alt_cmds.sh! +# XXX + +PT_SUMMARY_SKIP="${PT_SUMMARY_SKIP:-""}" + +set -u + +# While extremely unwieldly, this allows us to fake the commands when testing. +CMD_SYSCTL="$(_which sysctl 2>/dev/null )" +CMD_DMIDECODE="$(_which dmidecode 2>/dev/null )" +CMD_ZONENAME="$(_which zonename 2>/dev/null )" +CMD_DMESG="$(_which dmesg 2>/dev/null )" +CMD_FILE="$(_which file 2>/dev/null )" +CMD_LSPCI="$(_which lspci 2>/dev/null )" +CMD_PRTDIAG="$(_which prtdiag 2>/dev/null )" +CMD_SMBIOS="$(_which smbios 2>/dev/null )" +CMD_GETENFORCE="$(_which getenforce 2>/dev/null )" +CMD_PRTCONF="$(_which prtconf 2>/dev/null )" +CMD_LVS="$(_which lvs 2>/dev/null)" +CMD_VGS="$(_which vgs 2>/dev/null)" +CMD_PRSTAT="$(_which prstat 2>/dev/null)" +CMD_ISAINFO="$(_which isainfo 2>/dev/null)" +CMD_TOP="$(_which top 2>/dev/null)" +CMD_ARCCONF="$( _which arcconf 2>/dev/null )" +CMD_HPACUCLI="$( _which hpacucli 2>/dev/null )" +CMD_MEGACLI64="$( _which MegaCli64 2>/dev/null )" +CMD_VMSTAT="$(_which vmstat 2>/dev/null)" +CMD_IP="$( _which ip 2>/dev/null )" +CMD_NETSTAT="$( _which netstat 2>/dev/null )" +CMD_PSRINFO="$( _which psrinfo 2>/dev/null )" +CMD_SWAPCTL="$( _which swapctl 2>/dev/null )" + +collect_system_data () { local FUNCNAME=collect_system_data; + local data_dir="$1" + + if [ -r /var/log/dmesg -a -s /var/log/dmesg ]; then + cat "/var/log/dmesg" > "$data_dir/dmesg_file" + fi + + # ######################################################################## + # Grab a bunch of stuff and put it into temp files for later. + # ######################################################################## + $CMD_SYSCTL -a > "$data_dir/sysctl" 2>/dev/null + + if [ -n "${CMD_LSPCI}" ]; then + $CMD_LSPCI > "$data_dir/lspci_file" 2>/dev/null + fi + + local platform="$(uname -s)" + echo "platform $platform" >> "$data_dir/summary" + echo "hostname $(uname -n)" >> "$data_dir/summary" + echo "uptime $(uptime | awk '{print substr($0, index($0, "up") + 3)}')" >> "$data_dir/summary" + + processor_info "$data_dir" + find_release_and_kernel "$data_dir/summary" "$platform" + cpu_and_os_arch "$data_dir/summary" "$platform" + find_virtualization "$data_dir/summary" "$platform" "$data_dir/dmesg_file" "$data_dir/lspci_file" + dmidecode_system_info "$data_dir/summary" + + if [ "${platform}" = "SunOS" ] && [ -n "${CMD_ZONENAME}" ]; then + echo "zonename $($CMD_ZONENAME)" >> "$data_dir/summary" + fi + + # Threading library + if [ "${platform}" = "Linux" ]; then + echo "threading $(getconf GNU_LIBPTHREAD_VERSION)" >> "$data_dir/summary" + fi + if [ -x /lib/libc.so.6 ]; then + echo "compiler $(/lib/libc.so.6 | grep 'Compiled by' | cut -c13-)" >> "$data_dir/summary" + fi + + if [ "${platform}" = "Linux" ]; then + local getenforce="" + if [ -n "$CMD_GETENFORCE" ]; then + getenforce="$($CMD_GETENFORCE 2>&1)"; + fi + echo "getenforce ${getenforce:-No SELinux detected}" >> "$data_dir/summary" + fi + + local rss=$(ps -eo rss 2>/dev/null | awk '/[0-9]/{total += $1 * 1024} END {print total}') + echo "rss ${rss}" >> "$data_dir/summary" + + if [ "${platform}" = "Linux" ]; then + echo "swappiness $(awk '/vm.swappiness/{print $3}' "$data_dir/sysctl")">> "$data_dir/summary" + echo "dirtypolicy $(awk '/vm.dirty_ratio/{print $3}' "$data_dir/sysctl"), $(awk '/vm.dirty_background_ratio/{print $3}' "$data_dir/sysctl")" >> "$data_dir/summary" + if $(awk '/vm.dirty_bytes/{print $3}' "$data_dir/sysctl") > /dev/null 2>&1; then + echo "dirtystatus $(awk '/vm.dirty_bytes/{print $3}' "$data_dir/sysctl"), $(awk '/vm.dirty_background_bytes/{print $3}' "$data_dir/sysctl")" >> "$data_dir/summary" + fi + fi + + if [ -n "$CMD_DMIDECODE" ]; then + $CMD_DMIDECODE > "$data_dir/dmidecode" 2>/dev/null + fi + + find_memory_stats "$data_dir/memory" "$platform" + mounted_fs_info "$data_dir/mounted_fs" "$platform" "$PT_SUMMARY_SKIP" + raid_controller "$data_dir/summary" "$data_dir/dmesg_file" "$data_dir/lspci_file" + + local controller="$(get_var raid_controller "$data_dir/summary")" + propietary_raid_controller "$data_dir/raid-controller" "$data_dir/summary" "$data_dir" "$controller" + + if [ "${platform}" = "Linux" ]; then + linux_exclusive_collection "$data_dir" + fi + + if [ -n "$CMD_IP" ] && echo "${PT_SUMMARY_SKIP}" | grep -v NETWORK >/dev/null; then + $CMD_IP -s link > "$data_dir/ip" + fi + + if [ -n "$CMD_SWAPCTL" ]; then + $CMD_SWAPCTL -s > "$data_dir/swapctl" + fi + + top_processes "$data_dir/processes" "$PT_SUMMARY_SKIP" + notable_processes_info "$data_dir/notable_procs" "$PT_SUMMARY_SKIP" + + if [ -n "$CMD_VMSTAT" ]; then + touch "$data_dir/vmstat" + ( + $CMD_VMSTAT 1 $OPT_SLEEP > "$data_dir/vmstat" + ) & + fi +} + +linux_exclusive_collection () { local FUNCNAME=linux_exclusive_collection; + local data_dir="$1" + + schedulers_and_queue_size "$data_dir/summary" "$data_dir/partitioning" + + for file in dentry-state file-nr inode-nr; do + echo "${file} $(cat /proc/sys/fs/${file} 2>&1)" >> "$data_dir/summary" + done + + if [ -n "$CMD_LVS" ] && test -x "$CMD_LVS"; then + $CMD_LVS 1>"$data_dir/lvs" 2>&1 + fi + + if [ -n "$CMD_VGS" ] && test -x "$CMD_VGS"; then + $CMD_VGS -o vg_name,vg_size,vg_free 2>/dev/null > "$data_dir/vgs" + fi + + if [ -n "$CMD_NETSTAT" ] && echo "${PT_SUMMARY_SKIP}" | grep -v NETWORK >/dev/null; then + $CMD_NETSTAT -antp > "$data_dir/netstat" 2>/dev/null + fi +} + +# Try to find all sorts of different files that say what the release is. +find_release_and_kernel () { local FUNCNAME=find_release_and_kernel; + local file="$1" + local platform="$2" + + local kernel="" + local release="" + if [ "${platform}" = "Linux" ]; then + kernel="$(uname -r)" + if [ -e /etc/fedora-release ]; then + release=$(cat /etc/fedora-release); + elif [ -e /etc/redhat-release ]; then + release=$(cat /etc/redhat-release); + elif [ -e /etc/system-release ]; then + release=$(cat /etc/system-release); + elif _which lsb_release >/dev/null 2>&1; then + release="$(lsb_release -ds) ($(lsb_release -cs))" + elif [ -e /etc/lsb-release ]; then + release=$(grep DISTRIB_DESCRIPTION /etc/lsb-release |awk -F'=' '{print $2}' |sed 's#"##g'); + elif [ -e /etc/debian_version ]; then + release="Debian-based version $(cat /etc/debian_version)"; + if [ -e /etc/apt/sources.list ]; then + local code=` awk '/^deb/ {print $3}' /etc/apt/sources.list \ + | awk -F/ '{print $1}'| awk 'BEGIN {FS="|"}{print $1}' \ + | sort | uniq -c | sort -rn | head -n1 | awk '{print $2}'` + release="${release} (${code})" + fi + elif ls /etc/*release >/dev/null 2>&1; then + if grep -q DISTRIB_DESCRIPTION /etc/*release; then + release=$(grep DISTRIB_DESCRIPTION /etc/*release | head -n1); + else + release=$(cat /etc/*release | head -n1); + fi + fi + elif [ "${platform}" = "FreeBSD" ] \ + || [ "${platform}" = "NetBSD" ] \ + || [ "${platform}" = "OpenBSD" ]; then + release="$(uname -r)" + kernel="$($CMD_SYSCTL -n kern.osrevision)" + elif [ "${platform}" = "SunOS" ]; then + release="$(head -n1 /etc/release)" + if [ -z "${release}" ]; then + release="$(uname -r)" + fi + kernel="$(uname -v)" + fi + echo "kernel $kernel" >> "$file" + echo "release $release" >> "$file" +} + +cpu_and_os_arch () { local FUNCNAME=cpu_and_os_arch; + local file="$1" + local platform="$2" + + local CPU_ARCH='32-bit' + local OS_ARCH='32-bit' + if [ "${platform}" = "Linux" ]; then + if [ "$(grep -q ' lm ' /proc/cpuinfo)" ]; then + CPU_ARCH='64-bit' + fi + elif [ "${platform}" = "FreeBSD" ] || [ "${platform}" = "NetBSD" ]; then + if $CMD_SYSCTL hw.machine_arch | grep -v 'i[36]86' >/dev/null; then + CPU_ARCH='64-bit' + fi + elif [ "${platform}" = "OpenBSD" ]; then + if $CMD_SYSCTL hw.machine | grep -v 'i[36]86' >/dev/null; then + CPU_ARCH='64-bit' + fi + elif [ "${platform}" = "SunOS" ]; then + if $CMD_ISAINFO -b | grep 64 >/dev/null ; then + CPU_ARCH="64-bit" + fi + fi + if [ -z "$CMD_FILE" ]; then + OS_ARCH='N/A' + elif $CMD_FILE /bin/sh | grep '64-bit' >/dev/null; then + OS_ARCH='64-bit' + fi + + echo "CPU_ARCH $CPU_ARCH" >> "$file" + echo "OS_ARCH $OS_ARCH" >> "$file" +} + +# We look in dmesg for virtualization information first, because it's often +# available to non-root users and usually has telltale signs. It's most +# reliable to look at /var/log/dmesg if possible. There are a number of +# other ways to find out if a system is virtualized. +find_virtualization () { local FUNCNAME=find_virtualization; + local vars_file="$1" + local platform="$2" + local dmesg_file="$3" + local lspci_file="$4" + + local tempfile="$TMPDIR/find_virtualziation.tmp" + + local virt="" + if [ -s "$dmesg_file" ]; then + virt="$(find_virtualization_dmesg "$dmesg_file")" + fi + if [ -z "${virt}" ] && [ -s "$lspci_file" ]; then + if grep -qi virtualbox "$lspci_file" ; then + virt=VirtualBox + elif grep -qi vmware "$lspci_file" ; then + virt=VMWare + fi + elif [ "${platform}" = "FreeBSD" ]; then + if ps -o stat | grep J ; then + virt="FreeBSD Jail" + fi + elif [ "${platform}" = "SunOS" ]; then + if [ -n "$CMD_PRTDIAG" ] && $CMD_PRTDIAG > "$tempfile" 2>/dev/null; then + virt="$(find_virtualization_generic "$tempfile" )" + elif [ -n "$CMD_SMBIOS" ] && $CMD_SMBIOS > "$tempfile" 2>/dev/null; then + virt="$(find_virtualization_generic "$tempfile" )" + fi + elif [ -e /proc/user_beancounters ]; then + virt="OpenVZ/Virtuozzo" + fi + echo "virt ${virt:-"No virtualization detected"}" >> "$vars_file" +} + +# ############################################################################## +# Try to figure out if a system is a guest by looking at prtdiag, smbios, etc. +# ############################################################################## +find_virtualization_generic() { local PTFUNCNAME=find_virtualization_generic; + local file="$1" + if grep -i -e virtualbox "$file" >/dev/null; then + echo VirtualBox + elif grep -i -e vmware "$file" >/dev/null; then + echo VMWare + fi +} + + # ############################################################################## +# Parse the output of dmesg and detect virtualization. +# ############################################################################## +find_virtualization_dmesg () { local PTFUNCNAME=find_virtualization_dmesg; + local file="$1" + if grep -qi -e vmware -e vmxnet -e 'paravirtualized kernel on vmi' "${file}"; then + echo "VMWare"; + elif grep -qi -e 'paravirtualized kernel on xen' -e 'Xen virtual console' "${file}"; then + echo "Xen"; + elif grep -qi qemu "${file}"; then + echo "QEmu"; + elif grep -qi 'paravirtualized kernel on KVM' "${file}"; then + echo "KVM"; + elif grep -q VBOX "${file}"; then + echo "VirtualBox"; + elif grep -qi 'hd.: Virtual .., ATA.*drive' "${file}"; then + echo "Microsoft VirtualPC"; + fi +} + +# TODO: Maybe worth it to just dump dmidecode once and parse that? +dmidecode_system_info () { local FUNCNAME=dmidecode_system_info; + local file="$1" + if [ -n "${CMD_DMIDECODE}" ]; then + local vendor="$($CMD_DMIDECODE -s system-manufacturer 2>/dev/null | sed 's/ *$//g')" + echo "vendor ${vendor}" >> "$file" + if [ "${vendor}" ]; then + local product="$($CMD_DMIDECODE -s system-product-name 2>/dev/null | sed 's/ *$//g')" + local version="$($CMD_DMIDECODE -s system-version 2>/dev/null | sed 's/ *$//g')" + local chassis="$($CMD_DMIDECODE -s chassis-type 2>/dev/null | sed 's/ *$//g')" + local servicetag="$($CMD_DMIDECODE -s system-serial-number 2>/dev/null | sed 's/ *$//g')" + local system="${vendor}; ${product}; v${version} (${chassis})" + + echo "system ${system}" >> "$file" + echo "servicetag ${servicetag:-Not found}" >> "$file" + fi + fi +} + +find_memory_stats () { local PTFUNCNAME=find_memory_stats; + local file="$1" + local platform="$2" + if [ "${platform}" = "Linux" ]; then + _d "In Linux, so saving the output of free -b" \ + "and /proc/meminfo into $file" + free -b > "$file" + cat /proc/meminfo >> "$file" + elif [ "${platform}" = "SunOS" ]; then + _d "In SunOS, calling prtconf" + $CMD_PRTCONF | awk -F: '/Memory/{print $2}' > "$file" + fi +} + +mounted_fs_info () { local PTFUNCNAME=mounted_fs_info; + local file="$1" + local platform="$2" + local skip="${3:-$PT_SUMMARY_SKIP}" + + if echo "${skip}" | grep -v MOUNT >/dev/null; then + if [ "${platform}" != "SunOS" ]; then + local cmd="df -h" + if [ "${platform}" = "Linux" ]; then + cmd="df -h -P" + fi + _d "calling $cmd" + $cmd | sort > "$TMPDIR/mounted_fs_info.tmp" + mount | sort | join "$TMPDIR/mounted_fs_info.tmp" - > "$file" + fi + fi +} + +# ######################################################################## +# We look in lspci first because it's more reliable, then dmesg, because it's +# often available to non-root users. It's most reliable to look at +# /var/log/dmesg if possible. +# ######################################################################## +raid_controller () { local PTFUNCNAME=raid_controller; + local file="$1" + local dmesg_file="$2" + local lspci_file="$3" + + local tempfile="$TMPDIR/raid_controller.tmp" + + local controller="" + if [ -s "$lspci_file" ]; then + controller="$(find_raid_controller_lspci "$lspci_file")" + fi + if [ -z "${controller}" ] && [ -s "$dmesg_file" ]; then + controller="$(find_raid_controller_dmesg "$dmesg_file")" + fi + + echo "raid_controller ${controller:-"No RAID controller detected"}" >> "$file" +} + +# ############################################################################## +# Parse the output of dmesg and detect RAID controllers. +# ############################################################################## +find_raid_controller_dmesg () { local PTFUNCNAME=find_raid_controller_dmesg; + local file="$1" + local pat='scsi[0-9].*: .*' + if grep -qi "${pat}megaraid" "${file}"; then + echo 'LSI Logic MegaRAID SAS' + elif grep -q "Fusion MPT SAS" "${file}"; then + echo 'Fusion-MPT SAS' + elif grep -q "${pat}aacraid" "${file}"; then + echo 'AACRAID' + elif grep -q "${pat}3ware [0-9]* Storage Controller" "${file}"; then + echo '3Ware' + fi +} + +# ############################################################################## +# Parse the output of lspci and detect RAID controllers. +# ############################################################################## +find_raid_controller_lspci () { local PTFUNCNAME=find_raid_controller_lspci; + local file="$1" + if grep -q "RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS" "${file}"; then + echo 'LSI Logic MegaRAID SAS' + elif grep -q "Fusion-MPT SAS" "${file}"; then + echo 'Fusion-MPT SAS' + elif grep -q "RAID bus controller: LSI Logic / Symbios Logic Unknown" "${file}"; then + echo 'LSI Logic Unknown' + elif grep -q "RAID bus controller: Adaptec AAC-RAID" "${file}"; then + echo 'AACRAID' + elif grep -q "3ware [0-9]* Storage Controller" "${file}"; then + echo '3Ware' + elif grep -q "Hewlett-Packard Company Smart Array" "${file}"; then + echo 'HP Smart Array' + elif grep -q " RAID bus controller: " "${file}"; then + awk -F: '/RAID bus controller\:/ {print $3" "$5" "$6}' "${file}" + fi +} + +schedulers_and_queue_size () { local FUNCNAME=schedulers_and_queue_size; + local file="$1" + local disk_partitioning_file="$2" + + local disks="$(ls /sys/block/ | grep -v -e ram -e loop -e 'fd[0-9]')" + echo "disks $disks" >> "$file" + echo "" > "$disk_partitioning_file" + for disk in $disks; do + if [ -e "/sys/block/${disk}/queue/scheduler" ]; then + echo "internal::${disk} $(cat /sys/block/${disk}/queue/scheduler | grep -o '\[.*\]') $(cat /sys/block/${disk}/queue/nr_requests)" >> "$file" + fdisk -l "/dev/${disk}" >> "$disk_partitioning_file" 2>/dev/null + fi + done +} + +top_processes () { local FUNCNAME=top_processes; + local top_processes_file="$1" + local skip="${2:-"$PT_SUMMARY_SKIP"}" + + if echo "${skip}" | grep -v PROCESS >/dev/null; then + if [ -n "$CMD_PRSTAT" ]; then + $CMD_PRSTAT | head > "$top_processes_file" + elif [ -n "$CMD_TOP" ]; then + local cmd="$CMD_TOP -bn 1" + if [ "${platform}" = "FreeBSD" ] \ + || [ "${platform}" = "NetBSD" ] \ + || [ "${platform}" = "OpenBSD" ]; then + cmd="$CMD_TOP -b -d 1" + fi + $cmd | sed -e 's# *$##g' -e '/./{H;$!d;}' -e 'x;/PID/!d;' | grep . | head > "$top_processes_file" + fi + fi +} + +notable_processes_info () { local PTFUNCNAME=notable_processes_info; + local notable_processes_file="$1" + local skip="${2:-"$PT_SUMMARY_SKIP"}" + + if echo "${skip}" | grep -v PROCESS >/dev/null; then + local format="%5s %+2d %s\n" + local sshd_pid=$(_pidof "/usr/sbin/sshd") + + echo " PID OOM COMMAND" > "$notable_processes_file" + + # First, let's find the oom value of sshd + if [ "$sshd_pid" ]; then + printf "$format" $sshd_pid $(get_oom_of_pid $sshd_pid) "sshd" >> "$notable_processes_file" + else + printf "%5s %3s %s\n" "?" "?" "sshd doesn't appear to be running" >> "$notable_processes_file" + fi + + # Disabling PTDEBUG for the remainder of this function, otherwise we get several + # hundred linebs of mostly useless debug output + local PTDEBUG="" + # Let's find out if any process has an oom of -17 + ps -eo pid,ucomm | tail -n +2 | while read pid proc; do + # Skip sshd, since we manually checked this before + [ "$sshd_pid" ] && [ "$sshd_pid" = "$pid" ] && continue + local oom="$(get_oom_of_pid $pid)" + if [ "$oom" ] && [ "$oom" != "?" ] && [ "$oom" = "-17" ]; then + printf "$format" $pid $oom $proc >> "$notable_processes_file" + fi + done + fi +} + +processor_info () { local FUNCNAME=processor_info; + local data_dir="$1" + if [ -f /proc/cpuinfo ]; then + _d "Got /proc/cpuinfo, copying that" + cat /proc/cpuinfo > "$data_dir/proc_cpuinfo_copy" 2>/dev/null + elif [ "${platform}" = "SunOS" ]; then + _d "On SunOS, using psrinfo" + $CMD_PSRINFO -v > "$data_dir/psrinfo_minus_v" + fi +} + +# ######################################################################## +# Attempt to get, parse, and print RAID controller status from possibly +# proprietary management software. Any executables that are normally stored +# in a weird location, such as /usr/StorMan/arcconf, should have their +# location added to $PATH at the beginning of main(). +# ######################################################################## +propietary_raid_controller () { local FUNCNAME=propietary_raid_controller; + local file="$1" + local variable_file="$2" + local data_dir="$3" + local controller="$4" + + rm -f "$file" + touch "$file" + + notfound="" + if [ "${controller}" = "AACRAID" ]; then + if [ -z "$CMD_ARCCONF" ]; then + notfound="e.g. http://www.adaptec.com/en-US/support/raid/scsi_raid/ASR-2120S/" + elif $CMD_ARCCONF getconfig 1 > "$file" 2>/dev/null; then + echo "internal::raid_opt 1" >> "$variable_file" + fi + elif [ "${controller}" = "HP Smart Array" ]; then + if [ -z "$CMD_HPACUCLI" ]; then + notfound="your package repository or the manufacturer's website" + elif $CMD_HPACUCLI ctrl all show config > "$file" 2>/dev/null; then + echo "internal::raid_opt 2" >> "$variable_file" + fi + elif [ "${controller}" = "LSI Logic MegaRAID SAS" ]; then + if [ -z "$CMD_MEGACLI64" ]; then + notfound="your package repository or the manufacturer's website" + else + echo "internal::raid_opt 3" >> "$variable_file" + $CMD_MEGACLI64 -AdpAllInfo -aALL -NoLog > "$data_dir/lsi_megaraid_adapter_info.tmp" 2>/dev/null + $CMD_MEGACLI64 -AdpBbuCmd -GetBbuStatus -aALL -NoLog > "$data_dir/lsi_megaraid_bbu_status.tmp" 2>/dev/null + $CMD_MEGACLI64 -LdPdInfo -aALL -NoLog > "$data_dir/lsi_megaraid_devices.tmp" 2>/dev/null + fi + fi + + if [ "${notfound}" ]; then + echo "internal::raid_opt 0" >> "$variable_file" + echo " RAID controller software not found; try getting it from" > "$file" + echo " ${notfound}" >> "$file" + fi +} + +# ########################################################################### +# End collect_system_info package +# ########################################################################### diff --git a/lib/bash/log_warn_die.sh b/lib/bash/log_warn_die.sh index 9846fd55..2a6e61a0 100644 --- a/lib/bash/log_warn_die.sh +++ b/lib/bash/log_warn_die.sh @@ -24,6 +24,7 @@ set -u # Global variables. +PTFUNCNAME="" PTDEBUG="${PTDEBUG:-""}" EXIT_STATUS=0 @@ -43,7 +44,7 @@ die() { } _d () { - [ "$PTDEBUG" ] && echo "# $(log "$@")" >&2 + [ "$PTDEBUG" ] && echo "# $PTFUNCNAME: $(log "$*")" >&2 } # ########################################################################### diff --git a/lib/bash/report_formatting.sh b/lib/bash/report_formatting.sh index 95acdb2c..20f187a5 100644 --- a/lib/bash/report_formatting.sh +++ b/lib/bash/report_formatting.sh @@ -51,12 +51,12 @@ fuzzy_formula=' # Does fuzzy rounding: rounds to nearest interval, but the interval gets larger # as the number gets larger. This is to make things easier to diff. fuzz () { - echo $1 | awk "{fuzzy_var=\$1; ${fuzzy_formula} print fuzzy_var;}" + awk -v fuzzy_var="$1" "BEGIN { ${fuzzy_formula} print fuzzy_var;}" } # Fuzzy computes the percent that $1 is of $2 fuzzy_pct () { - local pct="$(echo $1 $2 | awk '{ if ($2 > 0) { printf "%d", $1/$2*100; } else {print 0} }')"; + local pct="$(awk -v one="$1" -v two="$2" 'BEGIN{ if (two > 0) { printf "%d", one/two*100; } else {print 0} }')"; echo "$(fuzz "${pct}")%" } diff --git a/lib/bash/report_mysql_info.sh b/lib/bash/report_mysql_info.sh index 923b2cde..11f67a5a 100644 --- a/lib/bash/report_mysql_info.sh +++ b/lib/bash/report_mysql_info.sh @@ -26,25 +26,21 @@ POSIXLY_CORRECT=1 # Accepts a number of seconds, and outputs a d+h:m:s formatted string secs_to_time () { - echo "$1" | awk '{ - printf( "%d+%02d:%02d:%02d", $1 / 86400, ($1 % 86400) / 3600, ($1 % 3600) / 60, $1 % 60); + awk -v sec="$1" 'BEGIN { + printf( "%d+%02d:%02d:%02d", sec / 86400, (sec % 86400) / 3600, (sec % 3600) / 60, sec % 60); }' } -# Returns true if a variable exists -var_exists () { - local varname="$1" - local file="$2" - grep "${varname}" "${file}" >/dev/null 2>&1; -} - # Returns "Enabled", "Disabled", or "Not Supported" depending on whether the # variable exists and is ON or enabled. You can pass 2nd and 3rd variables to # control whether the variable should be 'gt' (numeric greater than) or 'eq' # (string equal) to some value. feat_on() { local file="$1" - if var_exists "$2" "${file}" ; then + + test ! -e "$file" && return + + if get_var "$2" "${file}" 1>/dev/null 2>&1 ; then local var="$(awk "\$1 ~ /^$2$/ { print \$2 }" $file)" if [ "${var}" = "ON" ]; then echo "Enabled" @@ -74,8 +70,11 @@ feat_on() { get_table_cache () { local file="$1" + + test ! -e "$file" && return + local table_cache="" - if var_exists table_open_cache "${file}"; then + if get_var table_open_cache "${file}" 1>/dev/null 2>&1; then table_cache="$(get_var table_open_cache "${file}")" else table_cache="$(get_var table_cache "${file}")" @@ -106,8 +105,11 @@ parse_mysqld_instances () { local socket=${socket:-""} local port=${port:-""} local datadir="${datadir:-""}" - echo " Port Data Directory Nice OOM Value Socket" - echo " ===== ========================== ==== ========= ======" + + test ! -e "$file" && return + + echo " Port Data Directory Nice OOM Socket" + echo " ===== ========================== ==== === ======" grep '/mysqld ' "$file" | while read line; do local pid=$(echo "$line" | awk '{print $2;}') @@ -131,13 +133,16 @@ parse_mysqld_instances () { nice="?" oom="?" fi - printf " %5s %-26s %-4s %-9s %s\n" "${port}" "${datadir}" "${nice}" "${oom}" "${socket}" + printf " %5s %-26s %-4s %-3s %s\n" "${port}" "${datadir}" "${nice}" "${oom}" "${socket}" done } # Gets the MySQL system time. Uses input from $MYSQL_VARIABLES_FILE. get_mysql_timezone () { - local file="${1:-$MYSQL_VARIABLES_FILE}" + local file="$1" + + test ! -e "$file" && return + local tz="$(get_var time_zone "${file}")" if [ "${tz}" = "SYSTEM" ]; then tz="$(get_var system_time_zone "${file}")" @@ -148,6 +153,7 @@ get_mysql_timezone () { # Gets the MySQL system version. get_mysql_version () { local file="$1" + name_val Version "$(get_var version "${file}") $(get_var version_comment "${file}")" name_val "Built On" "$(get_var version_compile_os "${file}") $(get_var version_compile_machine "${file}")" } @@ -163,6 +169,9 @@ get_mysql_uptime () { # Summarizes the output of SHOW MASTER LOGS. summarize_binlogs () { local file="$1" + + test ! -e "$file" && return + local size="$(awk '{t += $2} END{printf "%0.f\n", t}' "$file")" name_val "Binlogs" $(wc -l "$file") name_val "Zero-Sized" $(grep -c '\<0$' "$file") @@ -171,12 +180,14 @@ summarize_binlogs () { format_users () { local file="$1" + test ! -e "$file" && return awk '{printf "%d users, %d anon, %d w/o pw, %d old pw\n", $1, $2, $3, $4}' "${file}" } # Print out binlog_do_db and binlog_ignore_db format_binlog_filters () { local file="$1" + test ! -e "$file" && return name_val "binlog_do_db" "$(cut -f3 "$file")" name_val "binlog_ignore_db" "$(cut -f4 "$file")" } @@ -187,6 +198,8 @@ format_binlog_filters () { # samples. Omits any rows that are all zeroes. format_status_variables () { local file="$1" + test ! -e "$file" && return + # First, figure out the intervals. utime1="$(awk '/Uptime /{print $2}' "$file")"; utime2="$(awk '/Uptime /{print $3}' "$file")"; @@ -240,6 +253,9 @@ format_status_variables () { # non-Sleep processes get counted towards the sum and max of Time. summarize_processlist () { local file="$1" + + test ! -e "$file" && return + for param in Command User Host db State; do echo printf ' %-30s %8s %7s %9s %9s\n' \ @@ -293,6 +309,9 @@ summarize_processlist () { # the below patterns contain [] and must remain that way. pretty_print_cnf_file () { local file="$1" + + test ! -e "$file" && return + awk ' BEGIN { FS="=" @@ -339,6 +358,9 @@ find_checkpoint_age() { find_pending_io_reads() { local file="$1" + + test ! -e "$file" && return + awk ' /Pending normal aio reads/ { normal_aio_reads = substr($5, 1, index($5, ",")); @@ -361,6 +383,9 @@ find_pending_io_reads() { find_pending_io_writes() { local file="$1" + + test ! -e "$file" && return + awk ' /aio writes/ { aio_writes = substr($NF, 1, index($NF, ",")); @@ -389,6 +414,9 @@ find_pending_io_writes() { find_pending_io_flushes() { local file="$1" + + test ! -e "$file" && return + awk ' /Pending flushes/ { log_flushes = substr($5, 1, index($5, ";")); @@ -402,6 +430,9 @@ find_pending_io_flushes() { summarize_undo_log_entries() { local file="$1" + + test ! -e "$file" && return + grep 'undo log entries' "${file}" \ | sed -e 's/^.*undo log entries \([0-9]*\)/\1/' \ | awk ' @@ -419,6 +450,9 @@ summarize_undo_log_entries() { find_max_trx_time() { local file="$1" + + test ! -e "$file" && return + awk ' BEGIN { max = 0; @@ -441,6 +475,9 @@ find_max_trx_time() { find_transation_states () { local file="$1" local tmpfile="$TMPDIR/find_transation_states.tmp" + + test ! -e "$file" && return + awk -F, '/^---TRANSACTION/{print $2}' "${file}" \ | sed -e 's/ [0-9]* sec.*//' \ | sort \ @@ -451,6 +488,9 @@ find_transation_states () { # Summarizes various things about InnoDB status that are not easy to see by eye. format_innodb_status () { local file=$1 + + test ! -e "$file" && return + name_val "Checkpoint Age" "$(shorten $(find_checkpoint_age "${file}") 0)" name_val "InnoDB Queue" "$(awk '/queries inside/{print}' "${file}")" name_val "Oldest Transaction" "$(find_max_trx_time "${file}") Seconds"; @@ -490,6 +530,9 @@ format_innodb_status () { format_overall_db_stats () { local file="$1" local tmpfile="$TMPDIR/format_overall_db_stats.tmp" + + test ! -e "$file" && return + echo # We keep counts of everything in an associative array keyed by db name, and # what it is. The num_dbs counter is to ensure sort order is consistent when @@ -781,6 +824,9 @@ format_overall_db_stats () { section_percona_server_features () { local file="$1" + + test ! -e "$file" && return + name_val "Table & Index Stats" \ "$(feat_on "$file" userstat_running)" name_val "Multiple I/O Threads" \ @@ -811,13 +857,15 @@ section_myisam () { local variables_file="$1" local status_file="$2" - local buf_size=$(get_var key_buffer_size "$variables_file") - local blk_size=$(get_var key_cache_block_size "$variables_file") - local blk_unus=$(get_var Key_blocks_unused "$status_file") - local blk_unfl=$(get_var Key_blocks_not_flushed "$variables_file") - local unus=$((${blk_unus} * ${blk_size})) - local unfl=$((${blk_unfl} * ${blk_size})) - local used=$((${buf_size} - ${unus})) + test ! -e "$variables_file" -o ! -e "$status_file" && return + + local buf_size="$(get_var key_buffer_size "$variables_file")" + local blk_size="$(get_var key_cache_block_size "$variables_file")" + local blk_unus="$(get_var Key_blocks_unused "$status_file")" + local blk_unfl="$(get_var Key_blocks_not_flushed "$variables_file")" + local unus=$((${blk_unus:-0} * ${blk_size:-0})) + local unfl=$((${blk_unfl:-0} * ${blk_size:-0})) + local used=$((${buf_size:-0} - ${unus})) name_val "Key Cache" "$(shorten ${buf_size} 1)" name_val "Pct Used" "$(fuzzy_pct ${used} ${buf_size})" @@ -828,13 +876,15 @@ section_innodb () { local variables_file="$1" local status_file="$2" + test ! -e "$variables_file" -o ! -e "$status_file" && return + # XXX TODO I don't think this is working right. # XXX TODO Should it use data from information_schema.plugins too? local version=$(get_var innodb_version "$variables_file") name_val Version ${version:-default} local bp_size="$(get_var innodb_buffer_pool_size "$variables_file")" - name_val "Buffer Pool Size" "$(shorten ${bp_size} 1)" + name_val "Buffer Pool Size" "$(shorten "${bp_size:-0}" 1)" local bp_pags="$(get_var Innodb_buffer_pool_pages_total "$status_file")" local bp_free="$(get_var Innodb_buffer_pool_pages_free "$status_file")" @@ -848,7 +898,7 @@ section_innodb () { local log_size="$(get_var innodb_log_file_size "$variables_file")" local log_file="$(get_var innodb_log_files_in_group "$variables_file")" - local log_total=$(echo 1 | awk "{printf \"%.2f\n\", ${log_size}*${log_file}}" ) + local log_total=$(awk "BEGIN {printf \"%.2f\n\", ${log_size}*${log_file}}" ) name_val "Log File Size" \ "${log_file} * $(shorten ${log_size} 1 1000) = $(shorten ${log_total} 1 1000)" name_val "Log Buffer Size" \ @@ -885,23 +935,25 @@ section_innodb () { section_noteworthy_variables () { local file="$1" + test ! -e "$file" && return + name_val "Auto-Inc Incr/Offset" "$(get_var auto_increment_increment "$file")/$(get_var auto_increment_offset "$file")" for v in \ default_storage_engine flush_time init_connect init_file sql_mode; do - name_val ${v} $(get_var ${v} "$file") + name_val "${v}" "$(get_var ${v} "$file")" done for v in \ join_buffer_size sort_buffer_size read_buffer_size read_rnd_buffer_size \ bulk_insert_buffer max_heap_table_size tmp_table_size \ max_allowed_packet thread_stack; do - name_val ${v} $(shorten $(get_var ${v} "$file") 0) + name_val "${v}" "$(shorten $(get_var ${v} "$file") 0)" done for v in log log_error log_warnings log_slow_queries \ log_queries_not_using_indexes log_slave_updates; do - name_val ${v} $(get_var ${v} "$file") + name_val "${v}" "$(get_var ${v} "$file")" done } @@ -912,6 +964,8 @@ _semi_sync_stats_for () { local target="$1" local file="$2" + test ! -e "$file" && return + local semisync_status="$(get_var "Rpl_semi_sync_${target}_status" "${file}" )" local semisync_trace="$(get_var "rpl_semi_sync_${target}_trace_level" "${file}")" @@ -1011,7 +1065,7 @@ report_mysql_summary () { # ######################################################################## local user="$(get_var "pt-summary-internal-user" "$dir/${prefix}-mysql-variables")" local port="$(get_var port "$dir/${prefix}-mysql-variables")" - local now="$(get_var "pt-summary-internal-NOW" "$dir/${prefix}-mysql-variables")" + local now="$(get_var "pt-summary-internal-now" "$dir/${prefix}-mysql-variables")" section "Report_On_Port_${port}" name_val User "${user}" name_val Time "${now} ($(get_mysql_timezone "$dir/${prefix}-mysql-variables"))" @@ -1019,7 +1073,7 @@ report_mysql_summary () { get_mysql_version "$dir/${prefix}-mysql-variables" local uptime="$(get_var Uptime "$dir/${prefix}-mysql-status")" - local current_time="$(get_var "pt-summary-internal-current_time" "$dir/${prefix}-mysql-status")" + local current_time="$(get_var "pt-summary-internal-current_time" "$dir/${prefix}-mysql-variables")" name_val Started "$(get_mysql_uptime "${uptime}" "${current_time}")" local num_dbs="$(grep -c . "$dir/${prefix}-mysql-databases")" @@ -1181,27 +1235,32 @@ report_mysql_summary () { name_val "Partitioning" No fi fi - if [ "$(get_var Ssl_accepts "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local ssl="$(get_var Ssl_accepts "$dir/${prefix}-mysql-status")" + if [ -n "$ssl" -a "${ssl:-0}" -gt 0 ]; then name_val "SSL" Yes else name_val "SSL" No fi - if [ "$(get_var Com_lock_tables "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local lock_tables="$(get_var Com_lock_tables "$dir/${prefix}-mysql-status")" + if [ -n "$lock_tables" -a "${lock_tables:-0}" -gt 0 ]; then name_val "Explicit LOCK TABLES" Yes else name_val "Explicit LOCK TABLES" No fi - if [ "$(get_var Delayed_writes "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local delayed_insert="$(get_var Delayed_writes "$dir/${prefix}-mysql-status")" + if [ -n "$delayed_insert" -a "${delayed_insert:-0}" -gt 0 ]; then name_val "Delayed Insert" Yes else name_val "Delayed Insert" No fi - if [ "$(get_var Com_xa_start "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local xat="$(get_var Com_xa_start "$dir/${prefix}-mysql-status")" + if [ -n "$xat" -a "${xat:-0}" -gt 0 ]; then name_val "XA Transactions" Yes else name_val "XA Transactions" No fi - if [ "$(get_var Ndb_cluster_node_id "$dir/${prefix}-mysql-status")" -gt 0 ]; then + local ndb_cluster="$(get_var Ndb_cluster_node_id "$dir/${prefix}-mysql-status")" + if [ -n "$ndb_cluster" -a "${ndb_cluster:-0}" -gt 0 ]; then name_val "NDB Cluster" Yes else name_val "NDB Cluster" No @@ -1221,7 +1280,7 @@ report_mysql_summary () { # InnoDB # ######################################################################## section InnoDB - local have_innodb=$(get_var have_innodb "$dir/${prefix}-mysql-variables") + local have_innodb="$(get_var have_innodb "$dir/${prefix}-mysql-variables")" if [ "${have_innodb}" = "YES" ]; then section_innodb "$dir/${prefix}-mysql-variables" "$dir/${prefix}-mysql-status" @@ -1255,9 +1314,9 @@ report_mysql_summary () { summarize_binlogs "$dir/${prefix}-mysql-master-logs" local format="$(get_var binlog_format "$dir/${prefix}-mysql-variables")" name_val binlog_format "${format:-STATEMENT}" - name_val expire_logs_days $(get_var expire_logs_days "$dir/${prefix}-mysql-variables") - name_val sync_binlog $(get_var sync_binlog "$dir/${prefix}-mysql-variables") - name_val server_id $(get_var server_id "$dir/${prefix}-mysql-variables") + name_val expire_logs_days "$(get_var expire_logs_days "$dir/${prefix}-mysql-variables")" + name_val sync_binlog "$(get_var sync_binlog "$dir/${prefix}-mysql-variables")" + name_val server_id "$(get_var server_id "$dir/${prefix}-mysql-variables")" format_binlog_filters "$dir/${prefix}-mysql-master-status" fi diff --git a/lib/bash/report_system_info.sh b/lib/bash/report_system_info.sh new file mode 100644 index 00000000..a2ef2c5f --- /dev/null +++ b/lib/bash/report_system_info.sh @@ -0,0 +1,1003 @@ +# This program is copyright 2011 Percona Inc. +# Feedback and improvements are welcome. +# +# THIS PROGRAM IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF +# MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. +# +# 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, version 2; OR the Perl Artistic License. On UNIX and similar +# systems, you can issue `man perlgpl' or `man perlartistic' to read these +# licenses. +# +# 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., 59 Temple +# Place, Suite 330, Boston, MA 02111-1307 USA. +# ########################################################################### +# report_system_info package +# ########################################################################### + +# Package: report_system_info +# + +set -u + +# ############################################################################## +# Functions for parsing specific files and getting desired info from them. +# These are called from within report_system_summary() and are separated so +# they can be tested easily. +# ############################################################################## + +# ############################################################################## +# Parse Linux's /proc/cpuinfo. +# ############################################################################## +parse_proc_cpuinfo () { local PTFUNCNAME=parse_proc_cpuinfo; + local file="$1" + # Physical processors are indicated by distinct 'physical id'. Virtual CPUs + # are indicated by paragraphs -- one per paragraph. We assume that all + # processors are identical, i.e. that there are not some processors with dual + # cores and some with quad cores. + local virtual="$(grep -c ^processor "${file}")"; + local physical="$(grep 'physical id' "${file}" | sort -u | wc -l)"; + local cores="$(grep 'cpu cores' "${file}" | head -n 1 | cut -d: -f2)"; + + # Older kernel won't have 'physical id' or 'cpu cores'. + if [ "${physical}" = "0" ]; then physical="${virtual}"; fi + if [ -z "${cores}" ]; then cores=0; fi + + # Test for HTT; cannot trust the 'ht' flag. If physical * cores < virtual, + # then hyperthreading is in use. + cores=$((${cores} * ${physical})); + local htt="" + if [ ${cores} -gt 0 -a $cores -lt $virtual ]; then htt=yes; else htt=no; fi + + name_val "Processors" "physical = ${physical}, cores = ${cores}, virtual = ${virtual}, hyperthreading = ${htt}" + + awk -F: '/cpu MHz/{print $2}' "${file}" \ + | sort | uniq -c > "$TMPDIR/parse_proc_cpuinfo_cpu.unq" + name_val "Speeds" "$(group_concat "$TMPDIR/parse_proc_cpuinfo_cpu.unq")" + + awk -F: '/model name/{print $2}' "${file}" \ + | sort | uniq -c > "$TMPDIR/parse_proc_cpuinfo_model.unq" + name_val "Models" "$(group_concat "$TMPDIR/parse_proc_cpuinfo_model.unq")" + + awk -F: '/cache size/{print $2}' "${file}" \ + | sort | uniq -c > "$TMPDIR/parse_proc_cpuinfo_cache.unq" + name_val "Caches" "$(group_concat "$TMPDIR/parse_proc_cpuinfo_cache.unq")" +} + +# ############################################################################## +# Parse sysctl -a output on FreeBSD, and format it as CPU info. The file is the +# first argument. +# ############################################################################## +parse_sysctl_cpu_freebsd() { local PTFUNCNAME=parse_sysctl_cpu_freebsd; + local file="$1" + test ! -e "$file" && return; + local virtual="$(awk '/hw.ncpu/{print $2}' "$file")" + name_val "Processors" "virtual = ${virtual}" + name_val "Speeds" "$(awk '/hw.clockrate/{print $2}' "$file")" + name_val "Models" "$(awk -F: '/hw.model/{print substr($2, 2)}' "$file")" +} + +# ############################################################################## +# Parse sysctl -a output on NetBSD. +# ############################################################################## +parse_sysctl_cpu_netbsd() { local PTFUNCNAME=parse_sysctl_cpu_netbsd; + local file="$1" + + # return early if they didn't pass in a file + test ! -e "$file" && return + + local virtual="$(awk '/hw.ncpu /{print $NF}' "$file")" + name_val "Processors" "virtual = ${virtual}" + #name_val "Speeds" # TODO: No clue + name_val "Models" "$(awk -F: '/hw.model/{print $3}' "$file")" +} + +# ############################################################################## +# Detect cpu info on OpenBSD, and format it as CPU info +# ############################################################################## +parse_sysctl_cpu_openbsd() { local PTFUNCNAME=parse_sysctl_cpu_openbsd; + local file="$1" + + test ! -e "$file" && return + + name_val "Processors" "$(awk -F= '/hw.ncpu=/{print $2}' "$file")" + name_val "Speeds" "$(awk -F= '/hw.cpuspeed/{print $2}' "$file")" + name_val "Models" "$(awk -F= '/hw.model/{print substr($2, 0, index($2, " "))}' "$file")" +} + +# ############################################################################## +# Parse CPU info from psrinfo -v +# ############################################################################## +parse_psrinfo_cpus() { local PTFUNCNAME=parse_psrinfo_cpus; + local file="$1" + + test ! -e "$file" && return + + name_val Processors "$(grep -c 'Status of .* processor' "$file")" + awk '/operates at/ { + start = index($0, " at ") + 4; + end = length($0) - start - 4 + print substr($0, start, end); + }' "$file" | sort | uniq -c > "$TMPDIR/parse_psrinfo_cpus.tmp" + name_val "Speeds" "$(group_concat "$TMPDIR/parse_psrinfo_cpus.tmp")" +} + +# ############################################################################## +# Parse the output of 'free -b' plus the contents of /proc/meminfo +# ############################################################################## +parse_free_minus_b () { local PTFUNCNAME=parse_free_minus_b; + local file="$1" + + test ! -e "$file" && return + + local physical=$(awk '/Mem:/{print $3}' "${file}") + local swap_alloc=$(awk '/Swap:/{print $2}' "${file}") + local swap_used=$(awk '/Swap:/{print $3}' "${file}") + local virtual=$(shorten $(($physical + $swap_used)) 1) + + name_val Total $(shorten $(awk '/Mem:/{print $2}' "${file}") 1) + name_val Free $(shorten $(awk '/Mem:/{print $4}' "${file}") 1) + name_val Used "physical = $(shorten ${physical} 1), swap allocated = $(shorten ${swap_alloc} 1), swap used = $(shorten ${swap_used} 1), virtual = ${virtual}" + name_val Buffers $(shorten $(awk '/Mem:/{print $6}' "${file}") 1) + name_val Caches $(shorten $(awk '/Mem:/{print $7}' "${file}") 1) + name_val Dirty "$(awk '/Dirty:/ {print $2, $3}' "${file}")" +} + +# ############################################################################## +# Parse FreeBSD memory info from sysctl output. +# ############################################################################## +parse_memory_sysctl_freebsd() { local PTFUNCNAME=parse_memory_sysctl_freebsd; + local file="$1" + + test ! -e "$file" && return + + local physical=$(awk '/hw.realmem:/{print $2}' "${file}") + local mem_hw=$(awk '/hw.physmem:/{print $2}' "${file}") + local mem_used=$(awk ' + /hw.physmem/ { mem_hw = $2; } + /vm.stats.vm.v_inactive_count/ { mem_inactive = $2; } + /vm.stats.vm.v_cache_count/ { mem_cache = $2; } + /vm.stats.vm.v_free_count/ { mem_free = $2; } + /hw.pagesize/ { pagesize = $2; } + END { + mem_inactive *= pagesize; + mem_cache *= pagesize; + mem_free *= pagesize; + print mem_hw - mem_inactive - mem_cache - mem_free; + } + ' "$file"); + name_val Total $(shorten ${mem_hw} 1) + name_val Virtual $(shorten ${physical} 1) + name_val Used $(shorten ${mem_used} 1) +} + +# ############################################################################## +# Parse NetBSD memory info from sysctl output. +# ############################################################################## +parse_memory_sysctl_netbsd() { local PTFUNCNAME=parse_memory_sysctl_netbsd; + local file="$1" + local swapctl_file="$2" + + test ! -e "$file" -o ! -e "$swapctl_file" && return + + local swap_mem="$(echo "$(awk '{print $2;}' "$swapctl_file")*512" | bc -l)" + name_val Total $(shorten "$(awk '/hw.physmem /{print $NF}' "$file")" 1) + name_val User $(shorten "$(awk '/hw.usermem /{print $NF}' "$file")" 1) + name_val Swap $(shorten ${swap_mem} 1) +} + +# ############################################################################## +# Parse OpenBSD memory info from sysctl output. +# ############################################################################## +parse_memory_sysctl_openbsd() { local PTFUNCNAME=parse_memory_sysctl_openbsd; + local file="$1" + local swapctl_file="$2" + + test ! -e "$file" -o ! -e "$swapctl_file" && return + + local swap_mem="$(echo "$(awk '{print $2;}' "$swapctl_file")*512" | bc -l)" + name_val Total $(shorten "$(awk -F= '/hw.physmem/{print $2}' "$file")" 1) + name_val User $(shorten "$(awk -F= '/hw.usermem/{print $2}' "$file")" 1) + name_val Swap $(shorten ${swap_mem} 1) +} + +# ############################################################################## +# Parse memory devices from the output of 'dmidecode'. +# ############################################################################## +parse_dmidecode_mem_devices () { local PTFUNCNAME=parse_dmidecode_mem_devices; + local file="$1" + + test ! -e "$file" && return + + echo " Locator Size Speed Form Factor Type Type Detail" + echo " ========= ======== ================= ============= ============= ===========" + # Print paragraphs containing 'Memory Device\n', extract the desired bits, + # concatenate them into one long line, then format as a table. The data + # comes out in this order for each paragraph: + # $2 Size 2048 MB + # $3 Form Factor + # $4 Locator DIMM1 + # $5 Type + # $6 Type Detail Synchronous + # $7 Speed 667 MHz (1.5 ns) + sed -e '/./{H;$!d;}' \ + -e 'x;/Memory Device\n/!d;' \ + -e 's/: /:/g' \ + -e 's//}/g' \ + -e 's/[ \t]*\n/\n/g' \ + "${file}" \ + | awk -F: '/Size|Type|Form.Factor|Type.Detail|[^ ]Locator/{printf("|%s", $2)}/Speed/{print "|" $2}' \ + | sed -e 's/No Module Installed/{EMPTY}/' \ + | sort \ + | awk -F'|' '{printf(" %-9s %-8s %-17s %-13s %-13s %-8s\n", $4, $2, $7, $3, $5, $6);}' +} + +# ############################################################################## +# Parse the output of 'ip -s link' +# ############################################################################## +parse_ip_s_link () { local PTFUNCNAME=parse_ip_s_link; + local file="$1" + + test ! -e "$file" && return + + echo " interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors" + echo " ========= ========= ========== ========== ========== ========== ==========" + + awk "/^[1-9][0-9]*:/ { + save[\"iface\"] = substr(\$2, 0, index(\$2, \":\") - 1); + new = 1; + } + \$0 !~ /[^0-9 ]/ { + if ( new == 1 ) { + new = 0; + fuzzy_var = \$1; ${fuzzy_formula} save[\"bytes\"] = fuzzy_var; + fuzzy_var = \$2; ${fuzzy_formula} save[\"packs\"] = fuzzy_var; + fuzzy_var = \$3; ${fuzzy_formula} save[\"errs\"] = fuzzy_var; + } + else { + fuzzy_var = \$1; ${fuzzy_formula} tx_bytes = fuzzy_var; + fuzzy_var = \$2; ${fuzzy_formula} tx_packets = fuzzy_var; + fuzzy_var = \$3; ${fuzzy_formula} tx_errors = fuzzy_var; + printf \" %-8s %10d %10d %10d %10d %10d %10d\\n\", save[\"iface\"], save[\"bytes\"], save[\"packs\"], save[\"errs\"], tx_bytes, tx_packets, tx_errors; + } + }" "$file" +} + +# ############################################################################## +# Parse the output of 'netstat -antp' +# ############################################################################## +parse_netstat () { local PTFUNCNAME=parse_netstat; + local file="$1" + + test ! -e "$file" && return + + echo " Connections from remote IP addresses" + awk '$1 ~ /^tcp/ && $5 ~ /^[1-9]/ { + print substr($5, 0, index($5, ":") - 1); + }' "${file}" | sort | uniq -c \ + | awk "{ + fuzzy_var=\$1; + ${fuzzy_formula} + printf \" %-15s %5d\\n\", \$2, fuzzy_var; + }" \ + | sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 + echo " Connections to local IP addresses" + awk '$1 ~ /^tcp/ && $5 ~ /^[1-9]/ { + print substr($4, 0, index($4, ":") - 1); + }' "${file}" | sort | uniq -c \ + | awk "{ + fuzzy_var=\$1; + ${fuzzy_formula} + printf \" %-15s %5d\\n\", \$2, fuzzy_var; + }" \ + | sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 + echo " Connections to top 10 local ports" + awk '$1 ~ /^tcp/ && $5 ~ /^[1-9]/ { + print substr($4, index($4, ":") + 1); + }' "${file}" | sort | uniq -c | sort -rn | head -n10 \ + | awk "{ + fuzzy_var=\$1; + ${fuzzy_formula} + printf \" %-15s %5d\\n\", \$2, fuzzy_var; + }" | sort + echo " States of connections" + awk '$1 ~ /^tcp/ { + print $6; + }' "${file}" | sort | uniq -c | sort -rn \ + | awk "{ + fuzzy_var=\$1; + ${fuzzy_formula} + printf \" %-15s %5d\\n\", \$2, fuzzy_var; + }" | sort +} + +# ############################################################################## +# Parse the joined output of 'mount' and 'df -hP'. $1 = file; $2 = ostype. +# ############################################################################## +parse_filesystems () { local PTFUNCNAME=parse_filesystems; + # Filesystem names and mountpoints can be very long. We try to align things + # as nicely as possible by making columns only as wide as needed. This + # requires two passes through the file. The first pass finds the max size of + # these columns and prints out a printf spec, and the second prints out the + # file nicely aligned. + local file="$1" + local platform="$2" + + test ! -e "$file" && return + + local spec="$(awk " + BEGIN { + device = 10; + fstype = 4; + options = 4; + } + /./ { + f_device = \$1; + f_fstype = \$10; + f_options = substr(\$11, 2, length(\$11) - 2); + if ( \"$2\" ~ /(Free|Open|Net)BSD/ ) { + f_fstype = substr(\$9, 2, length(\$9) - 2); + f_options = substr(\$0, index(\$0, \",\") + 2); + f_options = substr(f_options, 1, length(f_options) - 1); + } + if ( length(f_device) > device ) { + device=length(f_device); + } + if ( length(f_fstype) > fstype ) { + fstype=length(f_fstype); + } + if ( length(f_options) > options ) { + options=length(f_options); + } + } + END{ + print \"%-\" device \"s %5s %4s %-\" fstype \"s %-\" options \"s %s\"; + } + " "${file}")" + + awk " + BEGIN { + spec=\" ${spec}\\n\"; + printf spec, \"Filesystem\", \"Size\", \"Used\", \"Type\", \"Opts\", \"Mountpoint\"; + } + { + f_fstype = \$10; + f_options = substr(\$11, 2, length(\$11) - 2); + if ( \"$2\" ~ /(Free|Open|Net)BSD/ ) { + f_fstype = substr(\$9, 2, length(\$9) - 2); + f_options = substr(\$0, index(\$0, \",\") + 2); + f_options = substr(f_options, 1, length(f_options) - 1); + } + printf spec, \$1, \$2, \$5, f_fstype, f_options, \$6; + } + " "${file}" +} + +# ############################################################################## +# Parse the output of fdisk -l, which should be in $TMPDIR/percona-toolkit; there might be +# multiple fdisk -l outputs in the file. +# ############################################################################## +parse_fdisk () { local PTFUNCNAME=parse_fdisk; + local file="$1" + + test ! -e "$file" && return + + awk ' + BEGIN { + format="%-12s %4s %10s %10s %18s\n"; + printf(format, "Device", "Type", "Start", "End", "Size"); + printf(format, "============", "====", "==========", "==========", "=================="); + } + /Disk.*bytes/ { + disk = substr($2, 1, length($2) - 1); + size = $5; + printf(format, disk, "Disk", "", "", size); + } + /Units/ { + units = $9; + } + /^\/dev/ { + if ( $2 == "*" ) { + start = $3; + end = $4; + } + else { + start = $2; + end = $3; + } + printf(format, $1, "Part", start, end, sprintf("%.0f", (end - start) * units)); + } + ' "${file}" +} + +# ############################################################################## +# Parse the output of lspci, and detect ethernet cards. +# ############################################################################## +parse_ethernet_controller_lspci () { local PTFUNCNAME=parse_ethernet_controller_lspci; + local file="$1" + + test ! -e "$file" && return + + grep -i ethernet "${file}" | cut -d: -f3 | while read line; do + name_val Controller "${line}" + done +} + +# ############################################################################## +# Parse the output of "hpacucli ctrl all show config", which should be stored in +# $TMPDIR/percona-toolkit +# ############################################################################## +parse_hpacucli () { local PTFUNCNAME=parse_hpacucli; + local file="$1" + test ! -e "$file" && return + grep 'logicaldrive\|physicaldrive' "${file}" +} + +# ############################################################################## +# Parse the output of arcconf, which should be stored in $TMPDIR/percona-toolkit +# ############################################################################## +parse_arcconf () { local PTFUNCNAME=parse_arcconf; + local file="$1" + + test ! -e "$file" && return + + local model="$(awk -F: '/Controller Model/{print $2}' "${file}")" + local chan="$(awk -F: '/Channel description/{print $2}' "${file}")" + local cache="$(awk -F: '/Installed memory/{print $2}' "${file}")" + local status="$(awk -F: '/Controller Status/{print $2}' "${file}")" + name_val Specs "$(echo "$model" | sed -e 's/ //'),${chan},${cache} cache,${status}" + + local battery="" + if grep -q "ZMM" "$file"; then + battery="$(grep -A2 'Controller ZMM Information' "$file" \ + | awk '/Status/ {s=$4} + END {printf "ZMM %s", s}')" + else + battery="$(grep -A5 'Controller Battery Info' "${file}" \ + | awk '/Capacity remaining/ {c=$4} + /Status/ {s=$3} + /Time remaining/ {t=sprintf("%dd%dh%dm", $7, $9, $11)} + END {printf("%d%%, %s remaining, %s", c, t, s)}')" + fi + name_val Battery "${battery}" + + # ########################################################################### + # Logical devices + # ########################################################################### + echo + echo " LogicalDev Size RAID Disks Stripe Status Cache" + echo " ========== ========= ==== ===== ====== ======= =======" + for dev in $(awk '/Logical device number/{print $4}' "${file}"); do + sed -n -e "/^Logical device .* ${dev}$/,/^$\|^Logical device number/p" "${file}" \ + | awk ' + /Logical device name/ {d=$5} + /Size/ {z=$3 " " $4} + /RAID level/ {r=$4} + /Group [0-9]/ {g++} + /Stripe-unit size/ {p=$4 " " $5} + /Status of logical/ {s=$6} + /Write-cache mode.*Ena.*write-back/ {c="On (WB)"} + /Write-cache mode.*Ena.*write-thro/ {c="On (WT)"} + /Write-cache mode.*Disabled/ {c="Off"} + END { + printf(" %-10s %-9s %4d %5d %-6s %-7s %-7s\n", + d, z, r, g, p, s, c); + }' + done + + # ########################################################################### + # Physical devices + # ########################################################################### + echo + echo " PhysiclDev State Speed Vendor Model Size Cache" + echo " ========== ======= ============= ======= ============ =========== =======" + + # Find the paragraph with physical devices, tabularize with assoc arrays. + local tempresult="" + sed -n -e '/Physical Device information/,/^$/p' "${file}" \ + | awk -F: ' + /Device #[0-9]/ { + device=substr($0, index($0, "#")); + devicenames[device]=device; + } + /Device is a/ { + devices[device ",isa"] = substr($0, index($0, "is a") + 5); + } + /State/ { + devices[device ",state"] = substr($2, 2); + } + /Transfer Speed/ { + devices[device ",speed"] = substr($2, 2); + } + /Vendor/ { + devices[device ",vendor"] = substr($2, 2); + } + /Model/ { + devices[device ",model"] = substr($2, 2); + } + /Size/ { + devices[device ",size"] = substr($2, 2); + } + /Write Cache/ { + if ( $2 ~ /Enabled .write-back./ ) + devices[device ",cache"] = "On (WB)"; + else + if ( $2 ~ /Enabled .write-th/ ) + devices[device ",cache"] = "On (WT)"; + else + devices[device ",cache"] = "Off"; + } + END { + for ( device in devicenames ) { + if ( devices[device ",isa"] ~ /Hard drive/ ) { + printf(" %-10s %-7s %-13s %-7s %-12s %-11s %-7s\n", + devices[device ",isa"], + devices[device ",state"], + devices[device ",speed"], + devices[device ",vendor"], + devices[device ",model"], + devices[device ",size"], + devices[device ",cache"]); + } + } + }' +} + +# ############################################################################## +# Parse the output of "lsiutil -i -s". +# ############################################################################## +# TODO This isn't used anywhere +parse_fusionmpt_lsiutil () { local PTFUNCNAME=parse_fusionmpt_lsiutil; + local file="$1" + echo + awk '/LSI.*Firmware/ { print " ", $0 }' "${file}" + grep . "${file}" | sed -n -e '/B___T___L/,$ {s/^/ /; p}' +} + +# ############################################################################## +# Parse the output of MegaCli64 -AdpAllInfo -aALL +# ############################################################################## +# TODO why aren't we printing the latter half? +parse_lsi_megaraid_adapter_info () { local PTFUNCNAME=parse_lsi_megaraid_adapter_info; + local file="$1" + + test ! -e "$file" && return + + local name="$(awk -F: '/Product Name/{print substr($2, 2)}' "${file}")"; + local int=$(awk '/Host Interface/{print $4}' "${file}"); + local prt=$(awk '/Number of Backend Port/{print $5}' "${file}"); + local bbu=$(awk '/^BBU :/{print $3}' "${file}"); + local mem=$(awk '/Memory Size/{print $4}' "${file}"); + local vdr=$(awk '/Virtual Drives/{print $4}' "${file}"); + local dvd=$(awk '/Degraded/{print $3}' "${file}"); + local phy=$(awk '/^ Disks/{print $3}' "${file}"); + local crd=$(awk '/Critical Disks/{print $4}' "${file}"); + local fad=$(awk '/Failed Disks/{print $4}' "${file}"); + + name_val Model "${name}, ${int} interface, ${prt} ports" + name_val Cache "${mem} Memory, BBU ${bbu}" +} + +# ############################################################################## +# Parse the output of +# /opt/MegaRAID/MegaCli/MegaCli64 -AdpBbuCmd -GetBbuStatus -aALL +# ############################################################################## +parse_lsi_megaraid_bbu_status () { local PTFUNCNAME=parse_lsi_megaraid_bbu_status; + local file="$1" + + test ! -e "$file" && return + + local charge=$(awk '/Relative State/{print $5}' "${file}"); + local temp=$(awk '/^Temperature/{print $2}' "${file}"); + local soh=$(awk '/isSOHGood:/{print $2}' "${file}"); + name_val BBU "${charge}% Charged, Temperature ${temp}C, isSOHGood=${soh}" +} + +# ############################################################################## +# Reports the output of lvs. Additionally, if the second argument is a file +# that contains the output of 'vgs -o vg_name,vg_size,vg_free', appends the +# total and free space available to each volume. +# ############################################################################## +format_lvs () { local PTFUNCNAME=format_lvs; + local lvs_file="$1" + local vgs_file="$2" + + if [ -e "$lvs_file" -a -e "$vgs_file" ]; then + local header="$(head -n1 "$lvs_file")$(head -n1 "$vgs_file" | sed -e 's/^ *VG//')" + + echo $header + tail -n+2 "$lvs_file" | while read lvs_line; do + local current_vg="$(echo $lvs_line | awk '{print $2}')" + while read vgs_line; do + local current_vgs_vg="$(echo $vgs_line | awk '{print $1}' )" + if [ "$current_vg" = "$current_vgs_vg" ]; then + lvs_line="${lvs_line}$(echo $vgs_line | sed -e "s/^ *$current_vg//")" + break + fi + done < "$vgs_file" + echo $lvs_line + done + else + if [ -e "$lvs_file" ]; then + cat "$lvs_file" + else + echo "Cannot execute 'lvs'"; + fi + fi +} + +# ############################################################################## +# Parse physical devices from the output of +# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL +# OR, it will also work with the output of +# /opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL +# ############################################################################## +parse_lsi_megaraid_devices () { local PTFUNCNAME=parse_lsi_megaraid_devices; + local file="$1" + + test ! -e "$file" && return + + echo + echo " PhysiclDev Type State Errors Vendor Model Size" + echo " ========== ==== ======= ====== ======= ============ ===========" + for dev in $(awk '/Device Id/{print $3}' "${file}"); do + sed -e '/./{H;$!d;}' -e "x;/Device Id: ${dev}/!d;" "${file}" \ + | awk ' + /Media Type/ {d=substr($0, index($0, ":") + 2)} + /PD Type/ {t=$3} + /Firmware state/ {s=$3} + /Media Error Count/ {me=$4} + /Other Error Count/ {oe=$4} + /Predictive Failure Count/ {pe=$4} + /Inquiry Data/ {v=$3; m=$4;} + /Raw Size/ {z=$3} + END { + printf(" %-10s %-4s %-7s %6s %-7s %-12s %-7s\n", + substr(d, 0, 10), t, s, me "/" oe "/" pe, v, m, z); + }' + done +} + +# ############################################################################## +# Parse virtual devices from the output of +# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL +# OR, it will also work with the output of +# /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aAll +# ############################################################################## +parse_lsi_megaraid_virtual_devices () { local PTFUNCNAME=parse_lsi_megaraid_virtual_devices; + local file="$1" + + test ! -e "$file" && return + + # Somewhere on the Internet, I found the following guide to understanding the + # RAID level, but I don't know the source anymore. + # Primary-0, Secondary-0, RAID Level Qualifier-0 = 0 + # Primary-1, Secondary-0, RAID Level Qualifier-0 = 1 + # Primary-5, Secondary-0, RAID Level Qualifier-3 = 5 + # Primary-1, Secondary-3, RAID Level Qualifier-0 = 10 + # I am not sure if this is always correct or not (it seems correct). The + # terminology MegaRAID uses is not clear to me, and isn't documented that I + # am aware of. Anyone who can clarify the above, please contact me. + echo + echo " VirtualDev Size RAID Level Disks SpnDpth Stripe Status Cache" + echo " ========== ========= ========== ===== ======= ====== ======= =========" + awk ' + /^Virtual (Drive|Disk):/ { + device = $3; + devicenames[device] = device; + } + /Number Of Drives/ { + devices[device ",numdisks"] = substr($0, index($0, ":") + 1); + } + /^Name/ { + devices[device ",name"] = substr($0, index($0, ":") + 1) > "" ? substr($0, index($0, ":") + 1) : "(no name)"; + } + /RAID Level/ { + devices[device ",primary"] = substr($3, index($3, "-") + 1, 1); + devices[device ",secondary"] = substr($4, index($4, "-") + 1, 1); + devices[device ",qualifier"] = substr($NF, index($NF, "-") + 1, 1); + } + /Span Depth/ { + devices[device ",spandepth"] = substr($2, index($2, ":") + 1); + } + /Number of Spans/ { + devices[device ",numspans"] = $4; + } + /^Size/ { + devices[device ",size"] = substr($0, index($0, ":") + 1); + } + /^State/ { + devices[device ",state"] = substr($0, index($0, ":") + 2); + } + /^Stripe? Size/ { + devices[device ",stripe"] = substr($0, index($0, ":") + 1); + } + /^Current Cache Policy/ { + devices[device ",wpolicy"] = $4 ~ /WriteBack/ ? "WB" : "WT"; + devices[device ",rpolicy"] = $5 ~ /ReadAheadNone/ ? "no RA" : "RA"; + } + END { + for ( device in devicenames ) { + raid = 0; + if ( devices[device ",primary"] == 1 ) { + raid = 1; + if ( devices[device ",secondary"] == 3 ) { + raid = 10; + } + } + else { + if ( devices[device ",primary"] == 5 ) { + raid = 5; + } + } + printf(" %-10s %-9s %-10s %5d %7s %6s %-7s %s\n", + device devices[device ",name"], + devices[device ",size"], + raid " (" devices[device ",primary"] "-" devices[device ",secondary"] "-" devices[device ",qualifier"] ")", + devices[device ",numdisks"], + devices[device ",spandepth"] "-" devices[device ",numspans"], + devices[device ",stripe"], devices[device ",state"], + devices[device ",wpolicy"] ", " devices[device ",rpolicy"]); + } + }' "${file}" +} + +# ############################################################################## +# Simplifies vmstat and aligns it nicely. We don't need the memory stats, the +# system activity is enough. +# ############################################################################## +format_vmstat () { local PTFUNCNAME=format_vmstat; + local file="$1" + + test ! -e "$file" && return + + awk " + BEGIN { + format = \" %2s %2s %4s %4s %5s %5s %6s %6s %3s %3s %3s %3s %3s\n\"; + } + /procs/ { + print \" procs ---swap-- -----io---- ---system---- --------cpu--------\"; + } + /bo/ { + printf format, \"r\", \"b\", \"si\", \"so\", \"bi\", \"bo\", \"ir\", \"cs\", \"us\", \"sy\", \"il\", \"wa\", \"st\"; + } + \$0 !~ /r/ { + fuzzy_var = \$1; ${fuzzy_formula} r = fuzzy_var; + fuzzy_var = \$2; ${fuzzy_formula} b = fuzzy_var; + fuzzy_var = \$7; ${fuzzy_formula} si = fuzzy_var; + fuzzy_var = \$8; ${fuzzy_formula} so = fuzzy_var; + fuzzy_var = \$9; ${fuzzy_formula} bi = fuzzy_var; + fuzzy_var = \$10; ${fuzzy_formula} bo = fuzzy_var; + fuzzy_var = \$11; ${fuzzy_formula} ir = fuzzy_var; + fuzzy_var = \$12; ${fuzzy_formula} cs = fuzzy_var; + fuzzy_var = \$13; us = fuzzy_var; + fuzzy_var = \$14; sy = fuzzy_var; + fuzzy_var = \$15; il = fuzzy_var; + fuzzy_var = \$16; wa = fuzzy_var; + fuzzy_var = \$17; st = fuzzy_var; + printf format, r, b, si, so, bi, bo, ir, cs, us, sy, il, wa, st; + } + " "${file}" +} + +processes_section () { local PTFUNCNAME=processes_section; + local top_process_file="$1" + local notable_procs_file="$2" + local vmstat_file="$3" + local platform="$4" + + if echo "${PT_SUMMARY_SKIP}" | grep -v PROCESS >/dev/null; then + section Top_Processes + cat "$top_process_file" + section Notable_Processes + cat "$notable_procs_file" + if [ -e "$vmstat_file" ]; then + section "Simplified_and_fuzzy_rounded_vmstat_(wait_please)" + wait # For the process we forked that was gathering vmstat samples + if [ "${platform}" = "Linux" ]; then + format_vmstat "$vmstat_file" + else + # TODO: simplify/format for other platforms + cat "$vmstat_file" + fi + fi + fi +} + +# The sum of all of the above +report_system_summary () { local PTFUNCNAME=report_system_summary; + local data_dir="$1" + + section Percona_Toolkit_System_Summary_Report + + # ######################################################################## + # General date, time, load, etc + # ######################################################################## + + test ! -e "$data_dir/summary" \ + && die "The data directory doesn't have a summary file, exiting." + + local platform="$(get_var platform "$data_dir/summary")" + name_val "Date" "`date -u +'%F %T UTC'` (local TZ: `date +'%Z %z'`)" + name_val "Hostname" "$(get_var hostname "$data_dir/summary")" + name_val "Uptime" "$(get_var uptime "$data_dir/summary")" + + if [ -n "$(get_var vendor "$data_dir/summary")" ]; then + name_val "System" "$(get_var system "$data_dir/summary")"; + name_val "Service Tag" "$(get_var servicetag "$data_dir/summary")"; + fi + + name_val "Platform" "${platform}" + local zonename="$(get_var zonename "$data_dir/summary")"; + if [ -n "${zonename}" ]; then + name_val "Zonename" "$zonename" + fi + + name_val Release "$(get_var release "$data_dir/summary")" + name_val Kernel "$(get_var kernel "$data_dir/summary")" + + name_val "Architecture" "CPU = $(get_var CPU_ARCH "$data_dir/summary"), OS = $(get_var OS_ARCH "$data_dir/summary")" + + local threading="$(get_var threading "$data_dir/summary")" + local compiler="$(get_var compiler "$data_dir/summary")" + [ -n "$threading" ] && name_val Threading "$threading" + [ -n "$compiler" ] && name_val Compiler "$compiler" + + local getenforce="$(get_var getenforce "$data_dir/summary")" + [ -n "$getenforce" ] && name_val "SELinux" "${getenforce}"; + + name_val Virtualized "$(get_var virt "$data_dir/summary")" + + # ######################################################################## + # Processor/CPU, Memory, Swappiness, dmidecode + # ######################################################################## + section Processor + if [ -e "$data_dir/proc_cpuinfo_copy" ]; then + parse_proc_cpuinfo "$data_dir/proc_cpuinfo_copy" + elif [ "${platform}" = "FreeBSD" ]; then + parse_sysctl_cpu_freebsd "$data_dir/sysctl" + elif [ "${platform}" = "NetBSD" ]; then + parse_sysctl_cpu_netbsd "$data_dir/sysctl" + elif [ "${platform}" = "OpenBSD" ]; then + parse_sysctl_cpu_openbsd "$data_dir/sysctl" + elif [ "${platform}" = "SunOS" ]; then + parse_psrinfo_cpus "$data_dir/psrinfo_minus_v" + # TODO: prtconf -v actually prints the CPU model name etc. + fi + + section Memory + if [ "${platform}" = "Linux" ]; then + parse_free_minus_b "$data_dir/memory" + elif [ "${platform}" = "FreeBSD" ]; then + parse_memory_sysctl_freebsd "$data_dir/sysctl" + elif [ "${platform}" = "NetBSD" ]; then + parse_memory_sysctl_netbsd "$data_dir/sysctl" "$data_dir/swapctl" + elif [ "${platform}" = "OpenBSD" ]; then + parse_memory_sysctl_openbsd "$data_dir/sysctl" "$data_dir/swapctl" + elif [ "${platform}" = "SunOS" ]; then + name_val Memory "$(cat "$data_dir/memory")" + fi + + local rss=$( get_var rss "$data_dir/summary" ) + name_val UsedRSS "$(shorten ${rss} 1)" + + if [ "${platform}" = "Linux" ]; then + name_val Swappiness "$(get_var swappiness "$data_dir/summary")" + name_val DirtyPolicy "$(get_var dirtypolicy "$data_dir/summary")" + local dirty_status="$(get_var dirtystatus "$data_dir/summary")" + if [ -n "$dirty_status" ]; then + name_val DirtyStatus "$dirty_status" + fi + fi + + if [ -s "$data_dir/dmidecode" ]; then + parse_dmidecode_mem_devices "$data_dir/dmidecode" + fi + + # ######################################################################## + # Disks, RAID, Filesystems + # ######################################################################## + # TODO: Add info about software RAID + + if [ -s "$data_dir/mounted_fs" ]; then + section "Mounted_Filesystems" + parse_filesystems "$data_dir/mounted_fs" "${platform}" + fi + + if [ "${platform}" = "Linux" ]; then + section "Disk_Schedulers_And_Queue_Size" + + local disks="$( get_var disks "$data_dir/summary" )" + for disk in ${disks}; do + name_val "${disk}" "$( get_var "internal::${disk}" "$data_dir/summary" )" + done + + section "Disk_Partioning" + parse_fdisk "$data_dir/partitioning" + + section "Kernel_Inode_State" + for file in dentry-state file-nr inode-nr; do + name_val "${file}" "$(get_var "${file}" "$data_dir/summary")" + done + + section "LVM_Volumes" + format_lvs "$data_dir/lvs" "$data_dir/vgs" + fi + + section "RAID_Controller" + local controller="$(get_var raid_controller "$data_dir/summary")" + name_val Controller "$controller" + local key="$(get_var "internal::raid_opt" "$data_dir/summary")" + case "$key" in + 0) + # Not found + cat "$data_dir/raid-controller" + ;; + 1) + parse_arcconf "$data_dir/raid-controller" + ;; + 2) + parse_hpacucli "$data_dir/raid-controller" + ;; + 3) + # TODO: This is pretty bad form, but seeing how the three forms + # aren't mutually exclusive, I can't come up with a better way. + [ -e "$data_dir/lsi_megaraid_adapter_info.tmp" ] && \ + parse_lsi_megaraid_adapter_info "$data_dir/lsi_megaraid_adapter_info.tmp" + [ -e "$data_dir/lsi_megaraid_bbu_status.tmp" ] && \ + parse_lsi_megaraid_bbu_status "$data_dir/lsi_megaraid_bbu_status.tmp" + if [ -e "$data_dir/lsi_megaraid_devices.tmp" ]; then + parse_lsi_megaraid_virtual_devices "$data_dir/lsi_megaraid_devices.tmp" + parse_lsi_megaraid_devices "$data_dir/lsi_megaraid_devices.tmp" + fi + ;; + esac + + if echo "${PT_SUMMARY_SKIP}" | grep -v NETWORK >/dev/null; then + # ##################################################################### + # Network stuff + # ##################################################################### + if [ "${platform}" = "Linux" ]; then + section Network_Config + if [ -s "$data_dir/lspci_file" ]; then + parse_ethernet_controller_lspci "$data_dir/lspci_file" + fi + if grep net.ipv4.tcp_fin_timeout "$data_dir/sysctl" > /dev/null 2>&1; then + name_val "FIN Timeout" "$(awk '/net.ipv4.tcp_fin_timeout/{print $NF}' "$data_dir/sysctl")" + name_val "Port Range" "$(awk '/net.ipv4.ip_local_port_range/{print $NF}' "$data_dir/sysctl")" + fi + fi + + # TODO cat /proc/sys/net/ipv4/ip_conntrack_max ; it might be + # /proc/sys/net/netfilter/nf_conntrack_max or /proc/sys/net/nf_conntrack_max + # in new kernels like Fedora 12? + + if [ -s "$data_dir/ip" ]; then + section Interface_Statistics + parse_ip_s_link "$data_dir/ip" + fi + + if [ "${platform}" = "Linux" ] && [ -e "$data_dir/netstat" ]; then + section Network_Connections + parse_netstat "$data_dir/netstat" + fi + fi + + # ######################################################################## + # Processes, load, etc + # ######################################################################## + processes_section "$data_dir/processes" "$data_dir/notable_procs" "$data_dir/vmstat" "$platform" + + # ######################################################################## + # All done. Signal the end so it's explicit. + # ######################################################################## + section The_End +} + +# ########################################################################### +# End report_system_info package +# ########################################################################### diff --git a/lib/bash/summary_common.sh b/lib/bash/summary_common.sh index d89375ed..3b893040 100644 --- a/lib/bash/summary_common.sh +++ b/lib/bash/summary_common.sh @@ -23,6 +23,10 @@ set -u +CMD_FILE="$( _which file 2>/dev/null )" +CMD_NM="$( _which nm 2>/dev/null )" +CMD_OBJDUMP="$( _which objdump 2>/dev/null )" + # Tries to find the niceness of the passed in PID. First with ps, and # failing that, with a bit of C, using getpriority(). # Returns the nice for the pid, or "?" if it can't find any. @@ -92,10 +96,6 @@ get_oom_of_pid () { fi } -CMD_FILE="$( _which file 2>/dev/null )" -CMD_NM="$( _which nm 2>/dev/null )" -CMD_OBJDUMP="$( _which objdump 2>/dev/null )" - has_symbols () { local executable="$(_which "$1")" local has_symbols="" @@ -117,10 +117,8 @@ has_symbols () { if [ "${has_symbols}" ]; then echo "Yes" - return 0 else echo "No" - return 1 fi } @@ -142,14 +140,17 @@ setup_data_dir () { echo "$data_dir" } -# gets a value from the passed in file. Returns _GET_VAR_DEFAULT if it doesn't -# exist, which unless changed is 0. -_GET_VAR_DEFAULT=0 +# gets a value from the passed in file. get_var () { local varname="$1" local file="$2" - local v="$(awk "\$1 ~ /^${varname}$/ { print \$2 }" "${file}")" - echo "${v:-$_GET_VAR_DEFAULT}" + local v="$(awk "\$1 ~ /^${varname}$/ { if (length(\$2)) { print substr(\$0, index(\$0,\$2)) } }" "${file}")" + if [ -n "$v" ]; then + echo "$v" + return 0 + else + return 1 + fi } # ########################################################################### diff --git a/t/lib/bash/collect_mysql_info.sh b/t/lib/bash/collect_mysql_info.sh index 753ed236..7185f0c9 100644 --- a/t/lib/bash/collect_mysql_info.sh +++ b/t/lib/bash/collect_mysql_info.sh @@ -50,7 +50,7 @@ no_diff \ # collect_mysql_status $CMD_MYSQL $EXT_ARGV -ss -e 'SHOW /*!50000 GLOBAL*/ STATUS' > "$TMPDIR/collect_mysql_status" -pat='Com_\|Bytes_\|Handler_\|Created_\|Que\|Uptime\|Select_scan\|Connections\|Opened_files\|_created\|Table_locks' +pat='Com_\|Bytes_\|Handler_\|Created_\|Que\|Uptime\|Select_scan\|Connections\|Opened_files\|_created\|Table_locks\|Innodb' grep -v $pat "$p/percona-toolkit-mysql-status" > "$TMPDIR/collect_mysql_status_collect" grep -v $pat "$TMPDIR/collect_mysql_status" > "$TMPDIR/collect_mysql_status_manual" diff --git a/t/lib/bash/collect_system_info.sh b/t/lib/bash/collect_system_info.sh new file mode 100644 index 00000000..f5dedf23 --- /dev/null +++ b/t/lib/bash/collect_system_info.sh @@ -0,0 +1,293 @@ +#!/usr/bin/env bash + +plan 32 + +TMPDIR="$TEST_TMPDIR" +PATH="$PATH:$PERCONA_TOOLKIT_SANDBOX/bin" +TOOL="pt-summary" + +. "$LIB_DIR/log_warn_die.sh" +. "$LIB_DIR/alt_cmds.sh" +. "$LIB_DIR/parse_options.sh" +. "$LIB_DIR/summary_common.sh" +. "$LIB_DIR/collect_system_info.sh" + +# Prefix (with path) for the collect files. +p="$TMPDIR/collect_mysql_info" +samples="$PERCONA_TOOLKIT_BRANCH/t/pt-summary/samples" + +mkdir "$p" + +OPT_SLEEP="1" +collect_system_data "$p" + +cat < "$TMPDIR/expected" +Fusion-MPT SAS +EOF +find_raid_controller_lspci "$samples/lspci-001.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lspci-001.txt" + +cat < "$TMPDIR/expected" +LSI Logic Unknown +EOF +find_raid_controller_lspci "$samples/lspci-002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lspci-002.txt" + +cat < "$TMPDIR/expected" +AACRAID +EOF +find_raid_controller_lspci "$samples/lspci-003.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lspci-003.txt" + +cat < "$TMPDIR/expected" +LSI Logic MegaRAID SAS +EOF +find_raid_controller_lspci "$samples/lspci-004.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lspci-004.txt" + +cat < "$TMPDIR/expected" +Fusion-MPT SAS +EOF +find_raid_controller_lspci "$samples/lspci-005.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lspci-005.txt" + +cat < "$TMPDIR/expected" +HP Smart Array +EOF +find_raid_controller_lspci "$samples/lspci-006.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lspci-006.txt" + +# find_raid_controller_dmesg + +cat < "$TMPDIR/expected" +Fusion-MPT SAS +EOF +find_raid_controller_dmesg "$samples/dmesg-001.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmesg-001.txt" + +cat < "$TMPDIR/expected" +AACRAID +EOF +find_raid_controller_dmesg "$samples/dmesg-002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmesg-002.txt" + +cat < "$TMPDIR/expected" +LSI Logic MegaRAID SAS +EOF +find_raid_controller_dmesg "$samples/dmesg-003.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmesg-003.txt" + +cat < "$TMPDIR/expected" +AACRAID +EOF +find_raid_controller_dmesg "$samples/dmesg-004.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmesg-004.txt" + +cat < "$TMPDIR/expected" +Fusion-MPT SAS +EOF +find_raid_controller_dmesg "$samples/dmesg-005.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmesg-005.txt" + +# TODO is this right? +cat < "$TMPDIR/expected" +EOF +find_raid_controller_dmesg "$samples/dmesg-006.txt" > "$TMPDIR/got" +cat "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmesg-006.txt" + +# TODO is this right? +cat < "$TMPDIR/expected" +EOF +find_raid_controller_dmesg "$samples/dmesg-007.txt" > "$TMPDIR/got" +cat "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmesg-007.txt" + +# raid_controller + +rm "$TMPDIR/raid_controller_outfile.tmp" 2>/dev/null +raid_controller "$TMPDIR/raid_controller_outfile.tmp" "" "" + +is \ + "$(get_var raid_controller "$TMPDIR/raid_controller_outfile.tmp")" \ + "No RAID controller detected" \ + "raid_controller has a sane default" + +rm "$TMPDIR/raid_controller_outfile.tmp" 2>/dev/null +raid_controller "$TMPDIR/raid_controller_outfile.tmp" "" "$samples/lspci-001.txt" +is \ + "$(get_var raid_controller "$TMPDIR/raid_controller_outfile.tmp")" \ + "Fusion-MPT SAS" \ + "raid_controller gets the correct result from an lspci file" + +rm "$TMPDIR/raid_controller_outfile.tmp" 2>/dev/null +raid_controller "$TMPDIR/raid_controller_outfile.tmp" "$samples/dmesg-004.txt" "" +is \ + "$(get_var raid_controller "$TMPDIR/raid_controller_outfile.tmp")" \ + "AACRAID" \ + "...Or from a dmseg file" + +# find_virtualization_dmesg + +i=1 +for expected in "" "" "" "" "" "Xen" "VirtualBox"; do + find_virtualization_dmesg "$samples/dmesg-00$i.txt" > "$TMPDIR/got" + is "$(cat "$TMPDIR/got")" "$expected" "dmesg-00$i.txt" + i=$(($i + 1)) +done + +# linux_exclusive_collection + +fake_command () { + local cmd="$1" + local output="$2" + + printf "#!/usr/bin/env bash\necho \"${output}\"\n" > "$TMPDIR/${cmd}_replacement" + chmod +x "$TMPDIR/${cmd}_replacement" + eval "CMD_$(echo $cmd | tr '[a-z]' '[A-Z]')=\"$TMPDIR/${cmd}_replacement\"" +} + +test_linux_exclusive_collection () { + local dir="$1" + + # First, let's try what happens if none of the commands are available + local CMD_LVS="" + local CMD_VGS="" + local CMD_NETSTAT="" + local PT_SUMMARY_SKIP="" + + mkdir "$dir/1" + linux_exclusive_collection "$dir/1" + + is \ + "$(ls "$dir/1" | grep 'lvs\|vgs\|netstat' )" \ + "" \ + 'linux_exclusive_collection: If a command isnt available, doesnt create spurious files' + + local i=1 + for f in lvs vgs netstat; do + fake_command "$f" "ok $i" + i=$(($i + 1)) + done + + mkdir "$dir/2" + linux_exclusive_collection "$dir/2" + + is \ + "$(ls "${dir}/2" | grep 'lvs\|vgs\|netstat' | sort | xargs echo )" \ + "lvs netstat vgs" \ + "linux_exclusive_collection: And works as expected if they are there" + + local i=1 + for f in lvs vgs netstat; do + is \ + "$(cat "${dir}/2/${f}")" \ + "ok $i" \ + "linux_exclusive_collection: output for $f is correct" + i=$(($i + 1)) + done +} + +platform="$(get_var platform "$p/summary")" + +if [ "$platform" = "Linux" ]; then + mkdir "$TMPDIR/linux_data" + test_linux_exclusive_collection "$TMPDIR/linux_data" +else + skip 1 5 "Tests exclusive for Linux" +fi + +# propietary_raid_controller + +test_propietary_raid_controller () { + local dir="$1" + + local CMD_ARCCONF="" + local CMD_HPACUCLI="" + local CMD_MEGACLI64="" + + local controller="" + mkdir "$dir/1" + for controller in "AACRAID" "HP Smart Array" "LSI Logic MegaRAID SAS"; do + rm "$dir/1/summary" 2>/dev/null + touch "$dir/1/summary" + propietary_raid_controller "$dir/1/raid-controller" "$dir/1/summary" "$dir/1" "$controller" + is \ + "$(get_var "internal::raid_opt" "$dir/1/summary")" \ + 0 \ + "propietary_raid_controller: correct raid_opt default for $controller" + + cmd_ok \ + "grep -q 'RAID controller software not found' \"$dir/1/raid-controller\"" \ + "propietary_raid_controller: correct default for $controller if the command isn't available" + done + + mkdir "$dir/2" + fake_command arcconf "ok arcconf" + propietary_raid_controller "$dir/2/raid-controller" "$dir/2/summary" "$dir/2" "AACRAID" + is \ + "$(get_var "internal::raid_opt" "$dir/2/summary")" \ + 1 \ + "propietary_raid_controller: correct raid_opt default for $controller when arcconf is there" + + is \ + "$(cat "$dir/2/raid-controller")" \ + "ok arcconf" \ + "AACRAID calls arcconf" +} + +mkdir "$TMPDIR/raid_controller" +test_propietary_raid_controller "$TMPDIR/raid_controller" + + +# notable_processes_info +( + sleep 50000 +) 2>/dev/null & +forked_pid="$!" + +if [ -e /proc/$forked_pid/oom_adj ] \ + && echo "-17" > /proc/$forked_pid/oom_adj 2>/dev/null; then + + notable_processes_info "$TMPDIR/notable_procs" + like \ + "$(cat "$TMPDIR/notable_procs")" \ + "${forked_pid}\\s+-17" \ + "notable_proccesses_info finds the process we manually changed earlier" + +else + skip 1 1 "Either this OS doesn't have an oom, or this user doesn't have enough privileges to change the oom of other processes" +fi + +disown $forked_pid +kill -9 $forked_pid + +# dmidecode_system_info + +test_dmidecode_system_info () { + local dir="$1" + + local CMD_DMIDECODE="" + touch "$dir/outfile" + dmidecode_system_info "$dir/outfile" + + cmd_ok '! test -s "$dir/outfile"' "If dmidecode isn't found, produces nothing" + + fake_command dmidecode '[$@]' + dmidecode_system_info "$dir/outfile" + + cat <> "$dir/expected" +vendor [-s system-manufacturer] +system [-s system-manufacturer]; [-s system-product-name]; v[-s system-version] ([-s chassis-type]) +servicetag [-s system-serial-number] +EOF + + no_diff \ + "$dir/outfile" \ + "$dir/expected" \ + "..but if it's there, it gets called with the expected parameters " +} + +mkdir "$TMPDIR/dmidecode_system_info" +test_dmidecode_system_info "$TMPDIR/dmidecode_system_info" + diff --git a/t/lib/bash/collect_system_info.t b/t/lib/bash/collect_system_info.t new file mode 120000 index 00000000..edb04c13 --- /dev/null +++ b/t/lib/bash/collect_system_info.t @@ -0,0 +1 @@ +../../../util/test-bash-functions \ No newline at end of file diff --git a/t/lib/bash/parse_options.sh.~1~ b/t/lib/bash/parse_options.sh.~1~ new file mode 100644 index 00000000..426d8648 --- /dev/null +++ b/t/lib/bash/parse_options.sh.~1~ @@ -0,0 +1,241 @@ +#!/usr/bin/env bash + +plan 80 + +TMPFILE="$TEST_TMPDIR/parse-opts-output" +TOOL="pt-stalk" +TMPDIR="$TEST_TMPDIR" + +source "$LIB_DIR/log_warn_die.sh" +source "$LIB_DIR/parse_options.sh" + +# ############################################################################ +# Parse options from POD using all default values. +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" 2>$TMPFILE + +is "`cat $TMPFILE`" "" "No warnings or errors" + +is "$OPT_STRING_OPT" "" "Default string option" +is "$OPT_STRING_OPT2" "foo" "Default string option with default" +is "$OPT_TYPELESS_OPTION" "" "Default typeless option" +is "$OPT_NOPTION" "yes" "Default neg option" +is "$OPT_INT_OPT" "" "Default int option" +is "$OPT_INT_OPT2" "42" "Default int option with default" +is "$OPT_VERSION" "" "--version" + +# ############################################################################ +# Specify some opts, but use default values for the rest. +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --int-opt 50 --typeless-option --string-opt bar + +is "$OPT_STRING_OPT" "bar" "Specified string option (spec)" +is "$OPT_STRING_OPT2" "foo" "Default string option with default (spec)" +is "$OPT_TYPELESS_OPTION" "yes" "Specified typeless option (spec)" +is "$OPT_NOPTION" "yes" "Default neg option (spec)" +is "$OPT_INT_OPT" "50" "Specified int option (spec)" +is "$OPT_INT_OPT2" "42" "Default int option with default (spec)" +is "$OPT_VERSION" "" "--version (spec)" +is "$ARGV" "" "ARGV" +is "$EXT_ARGV" "" "External ARGV" + +# ############################################################################ +# --option=value should work like --option value. +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --int-opt=42 + +is "$OPT_INT_OPT" "42" "Specified int option (--option=value)" + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --string-opt="hello world" + +is "$OPT_STRING_OPT" "hello world" "Specified int option (--option=\"value\")" + +# ############################################################################ +# Negate an option like --no-option. +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --no-noption + +is "$OPT_STRING_OPT" "" "Default string option (neg)" +is "$OPT_STRING_OPT2" "foo" "Default string option with default (neg)" +is "$OPT_TYPELESS_OPTION" "" "Default typeless option (neg)" +is "$OPT_NOPTION" "" "Negated option (neg)" +is "$OPT_INT_OPT" "" "Default int option (neg)" +is "$OPT_INT_OPT2" "42" "Default int option with default (neg)" +is "$OPT_VERSION" "" "--version (neg)" + +# ############################################################################ +# Short form. +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" -v +is "$OPT_VERSION" "yes" "Short form" + +# ############################################################################ +# Command line options plus externals args. +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --no-noption -- --foo + +is "$OPT_NOPTION" "" "Negated option (--)" +is "$ARGV" "" "ARGV (--)" +is "$EXT_ARGV" "--foo" "External ARGV (--)" + +# ############################################################################ +# An unknown option should produce an error. +# ############################################################################ + +# Have to call this in a subshell because the error will cause an exit. +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --foo >$TMPFILE 2>&1 +cmd_ok "grep -q 'Unknown option: --foo' $TMPFILE" "Error on unknown option" + +usage_or_errors "$T_LIB_DIR/samples/bash/po001.sh" >$TMPFILE 2>&1 +err=$? +is "$err" "1" "Non-zero exit on unknown option" + +# ########################################################################### +# --help +# ########################################################################### +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --help +usage_or_errors "$T_LIB_DIR/samples/bash/po001.sh" >$TMPFILE 2>&1 +cmd_ok \ + "grep -q \"For more information, 'man pt-stalk' or 'perldoc\" $TMPFILE" \ + "--help" + +cmd_ok \ + "grep -q ' --string-opt2[ ]*String option with a default.' $TMPFILE" \ + "Command line options" + +cmd_ok \ + "grep -q '\-\-string-opt[ ]*(No value)' $TMPFILE" \ + "Options and values after processing arguments" + +# Don't interpolate. +parse_options "$T_LIB_DIR/samples/bash/po003.sh" --help +usage_or_errors "$T_LIB_DIR/samples/bash/po003.sh" >$TMPFILE 2>&1 + +cmd_ok \ + "grep -q 'Exit if the disk is less than this %full.' $TMPFILE" \ + "Don't interpolate --help descriptions" + +# ########################################################################### +# Config files. +# ########################################################################### +TOOL="pt-test" +cp "$T_LIB_DIR/samples/bash/config001.conf" "$HOME/.$TOOL.conf" + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" + +is "$OPT_STRING_OPT" "abc" "Default string option (conf)" +is "$OPT_STRING_OPT2" "foo" "Default string option with default (conf)" +is "$OPT_TYPELESS_OPTION" "yes" "Default typeless option (conf)" +is "$OPT_NOPTION" "yes" "Default neg option (conf)" +is "$OPT_INT_OPT" "" "Default int option (conf)" +is "$OPT_INT_OPT2" "42" "Default int option with default (conf)" +is "$OPT_VERSION" "" "--version (conf)" +is "$ARGV" "" "ARGV (conf)" +is "$EXT_ARGV" "--host=127.1 --user=daniel" "External ARGV (conf)" + +# Command line should override config file. +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --string-opt zzz + +is "$OPT_STRING_OPT" "zzz" "Command line overrides config file" + +# User-specified --config +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --config "$T_LIB_DIR/samples/bash/config003.conf" --string-opt bar + +is "$OPT_STRING_OPT" "bar" "--config string option" +is "$OPT_STRING_OPT2" "foo" "--config string option2" +is "$OPT_TYPELESS_OPTION" "" "--config typeless option" +is "$OPT_NOPTION" "yes" "--config negatable option" +is "$OPT_INT_OPT" "123" "--config int option" +is "$OPT_INT_OPT2" "42" "--config int option2" +is "$OPT_VERSION" "" "--config version option" +is "$ARGV" "" "--config ARGV" +is "$EXT_ARGV" "" "--config External ARGV" + +# Multiple --config files, last should take precedence. +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --config $T_LIB_DIR/samples/bash/config001.conf,$T_LIB_DIR/samples/bash/config002.conf + +is "$OPT_STRING_OPT" "hello world" "Two --config string option" +is "$OPT_TYPELESS_OPTION" "yes" "Two --config typeless option" +is "$OPT_INT_OPT" "100" "Two --config int option" +is "$ARGV" "" "Two --config ARGV" +is "$EXT_ARGV" "--host=127.1 --user=daniel" "Two--config External ARGV" + +# Spaces before and after the option[=value] lines. +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --config $T_LIB_DIR/samples/bash/config004.conf + +is "$OPT_STRING_OPT" "foo" "Default string option (spacey)" +is "$OPT_TYPELESS_OPTION" "yes" "Default typeless option (spacey)" +is "$OPT_INT_OPT" "123" "Default int option (spacey)" +is "$ARGV" "" "ARGV (spacey)" +is "$EXT_ARGV" "" "External ARGV (spacey)" + +# ############################################################################ +# Option values with spaces. +# ############################################################################ + +# Config file +cp "$T_LIB_DIR/samples/bash/config002.conf" "$HOME/.$TOOL.conf" + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" "" + +is "$OPT_STRING_OPT" "hello world" "Option value with space (conf)" +is "$OPT_INT_OPT" "100" "Option = value # comment (conf)" + +rm "$HOME/.$TOOL.conf" +TOOL="pt-stalk" + +# Command line +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --string-opt "hello world" +is "$OPT_STRING_OPT" "hello world" "Option value with space (cmd line)" +is "$ARGV" "" "ARGV (cmd line)" +is "$EXT_ARGV" "" "External ARGV (cmd line)" + +# ############################################################################ +# Size options. +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" --disk-bytes-free 1T +is "$OPT_DISK_BYTES_FREE" "1099511627776" "Size: 1T" + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" --disk-bytes-free 1G +is "$OPT_DISK_BYTES_FREE" "1073741824" "Size: 1G" + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" --disk-bytes-free 1M +is "$OPT_DISK_BYTES_FREE" "1048576" "Size: 1M" + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" --disk-bytes-free 1K +is "$OPT_DISK_BYTES_FREE" "1024" "Size: 1K" + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" --disk-bytes-free 1k +is "$OPT_DISK_BYTES_FREE" "1024" "Size: 1k" + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" --disk-bytes-free 1 +is "$OPT_DISK_BYTES_FREE" "1" "Size: 1" + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" --disk-bytes-free 100M +is "$OPT_DISK_BYTES_FREE" "104857600" "Size: 100M" + +parse_options "$T_LIB_DIR/samples/bash/po004.sh" +is "$OPT_DISK_BYTES_FREE" "104857600" "Size: 100M default" + +# ############################################################################ +# --version +# ############################################################################ + +parse_options "$T_LIB_DIR/samples/bash/po001.sh" --version +usage_or_errors "$T_LIB_DIR/samples/bash/po001.sh" >$TMPFILE 2>&1 +is "$OPT_VERSION" "yes" "--version works" +is \ + "$(cat "$TMPFILE")" \ + "pt-fake 1.0.1" \ + "And gets the correct output" + +# ############################################################################ +# Done +# ############################################################################ diff --git a/t/lib/bash/report_mysql_info.sh b/t/lib/bash/report_mysql_info.sh index 267606a3..5384173d 100644 --- a/t/lib/bash/report_mysql_info.sh +++ b/t/lib/bash/report_mysql_info.sh @@ -128,23 +128,23 @@ no_diff "$TMPDIR/expected" "$TMPDIR/got" "summarize_binlogs" # ########################################################################### cat < "$TMPDIR/expected" - master semisync status | 0 + master semisync status | master trace level | 32, net wait (more information about network waits) master timeout in milliseconds | 10000 master waits for slaves | ON - master clients | 0 - master net_avg_wait_time | 0 - master net_wait_time | 0 - master net_waits | 0 - master no_times | 0 - master no_tx | 0 - master timefunc_failures | 0 - master tx_avg_wait_time | 0 - master tx_wait_time | 0 - master tx_waits | 0 -master wait_pos_backtraverse | 0 - master wait_sessions | 0 - master yes_tx | 0 + master clients | + master net_avg_wait_time | + master net_wait_time | + master net_waits | + master no_times | + master no_tx | + master timefunc_failures | + master tx_avg_wait_time | + master tx_wait_time | + master tx_waits | +master wait_pos_backtraverse | + master wait_sessions | + master yes_tx | EOF _semi_sync_stats_for "master" "$samples/mysql-variables-with-semisync.txt" > "$TMPDIR/got" @@ -267,36 +267,36 @@ is \ _NO_FALSE_NEGATIVES=1 cat < $TMPDIR/expected - Port Data Directory Nice OOM Value Socket - ===== ========================== ==== ========= ====== - 3306 /var/lib/mysql ? ? /var/run/mysqld/mysqld.sock - 12345 /tmp/12345/data ? ? /tmp/12345/mysql_sandbox12345.sock - 12346 /tmp/12346/data ? ? /tmp/12346/mysql_sandbox12346.sock + Port Data Directory Nice OOM Socket + ===== ========================== ==== === ====== + 3306 /var/lib/mysql ? ? /var/run/mysqld/mysqld.sock + 12345 /tmp/12345/data ? ? /tmp/12345/mysql_sandbox12345.sock + 12346 /tmp/12346/data ? ? /tmp/12346/mysql_sandbox12346.sock EOF parse_mysqld_instances "$samples/ps-mysqld-001.txt" > "$TMPDIR/got" no_diff "$TMPDIR/got" "$TMPDIR/expected" "ps-mysqld-001.txt" cat < "$TMPDIR/expected" - Port Data Directory Nice OOM Value Socket - ===== ========================== ==== ========= ====== - /var/lib/mysql ? ? /var/lib/mysql/mysql.sock + Port Data Directory Nice OOM Socket + ===== ========================== ==== === ====== + /var/lib/mysql ? ? /var/lib/mysql/mysql.sock EOF parse_mysqld_instances "$samples/ps-mysqld-002.txt" > "$TMPDIR/got" no_diff "$TMPDIR/got" "$TMPDIR/expected" "ps-mysqld-002.txt" #parse_mysqld_instances cat < $TMPDIR/expected - Port Data Directory Nice OOM Value Socket - ===== ========================== ==== ========= ====== - 3306 /mnt/data-store/mysql/data ? ? /tmp/mysql.sock + Port Data Directory Nice OOM Socket + ===== ========================== ==== === ====== + 3306 /mnt/data-store/mysql/data ? ? /tmp/mysql.sock EOF parse_mysqld_instances "$samples/ps-mysqld-003.txt" > "$TMPDIR/got" no_diff "$TMPDIR/got" "$TMPDIR/expected" "ps-mysqld-003.txt" cat < "$TMPDIR/expected" - Port Data Directory Nice OOM Value Socket - ===== ========================== ==== ========= ====== - /var/db/mysql ? ? + Port Data Directory Nice OOM Socket + ===== ========================== ==== === ====== + /var/db/mysql ? ? EOF cat < "$TMPDIR/in" @@ -304,7 +304,7 @@ mysql 767 0.0 0.9 3492 1100 v0 I 3:01PM 0:00.07 /bin/sh /usr/local mysql 818 0.0 17.4 45292 20584 v0 I 3:01PM 0:02.28 /usr/local/libexec/mysqld --defaults-extra-file=/var/db/mysql/my.cnf --basedir=/usr/local --datadir=/var/db/mysql --user=mysql --log-error=/var/db/mysql/freebsd.hsd1.va.comcast.net..err --pid-file=/var/db/mysql/freebsd.hsd1.va.comcast.net..pid EOF parse_mysqld_instances "$TMPDIR/in" > "$TMPDIR/got" -no_diff "$TMPDIR/got" "$TMPDIR/expected" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_mysqld_instances" # ########################################################################### # get_mysql_* @@ -655,7 +655,7 @@ test_format_innodb () { Page Size | 16k Log File Size | 2 * 1.5G = 3.0G Log Buffer Size | 8M - Flush Method | 0 + Flush Method | Flush Log At Commit | 1 XA Support | ON Checksums | ON @@ -670,7 +670,7 @@ test_format_innodb () { Adaptive Checkpoint | estimate EOF - section_innodb $samples/temp001/percona-toolkit-mysql-variables $samples/temp001/percona-toolkit-mysql-status > $TMPDIR/got + section_innodb "$samples/temp001/percona-toolkit-mysql-variables" $samples/temp001/percona-toolkit-mysql-status > $TMPDIR/got no_diff $TMPDIR/expected $TMPDIR/got } @@ -689,8 +689,8 @@ format_innodb_filters_test () { binlog_ignore_db | mysql,test EOF - format_binlog_filters $samples/mysql-show-master-status-001.txt > $TMPDIR/got - no_diff $TMPDIR/got $TMPDIR/expected + format_binlog_filters "$samples/mysql-show-master-status-001.txt" > $TMPDIR/got + no_diff "$TMPDIR/got" "$TMPDIR/expected" } format_innodb_filters_test @@ -703,9 +703,13 @@ OPT_SLEEP=1 OPT_DUMP_SCHEMAS="mysql" NAME_VAL_LEN=25 _NO_FALSE_NEGATIVES=1 -report_mysql_summary "$samples/tempdir" "percona-toolkit" | tail -n+3 > $TMPDIR/got +report_mysql_summary "$samples/tempdir" "percona-toolkit" | tail -n+3 > "$TMPDIR/got" no_diff "$TMPDIR/got" "$samples/expected_result_report_summary.txt" +OPT_SLEEP=10 +report_mysql_summary "$samples/temp002" "percona-toolkit" 2>/dev/null | tail -n+3 > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$samples/expected_output_temp002.txt" + # ########################################################################### # Done # ########################################################################### diff --git a/t/lib/bash/report_system_info.sh b/t/lib/bash/report_system_info.sh new file mode 100644 index 00000000..ebdbd7e3 --- /dev/null +++ b/t/lib/bash/report_system_info.sh @@ -0,0 +1,1434 @@ +#!/usr/bin/env bash + +plan 40 + +. "$LIB_DIR/alt_cmds.sh" +. "$LIB_DIR/log_warn_die.sh" +. "$LIB_DIR/summary_common.sh" +. "$LIB_DIR/report_formatting.sh" +. "$LIB_DIR/report_system_info.sh" + +TMPDIR="$TEST_TMPDIR" +PATH="$PATH:$PERCONA_TOOLKIT_SANDBOX/bin" +TOOL="pt-summary" + +samples="$PERCONA_TOOLKIT_BRANCH/t/pt-summary/samples" +NAME_VAL_LEN=12 + +# parse_proc_cpuinfo + +cat < "$TMPDIR/expected" + Processors | physical = 1, cores = 2, virtual = 2, hyperthreading = no + Speeds | 2x1300.000 + Models | 2xGenuine Intel(R) CPU U7300 @ 1.30GHz + Caches | 2x3072 KB +EOF + +parse_proc_cpuinfo "$samples/proc_cpuinfo001.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_proc_cpuinfo, proc_cpuinfo001.txt" + +cat < "$TMPDIR/expected" + Processors | physical = 1, cores = 1, virtual = 2, hyperthreading = yes + Speeds | 2x1000.000 + Models | 2xIntel(R) Atom(TM) CPU N455 @ 1.66GHz + Caches | 2x512 KB +EOF + +parse_proc_cpuinfo "$samples/proc_cpuinfo002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_proc_cpuinfo, proc_cpuinfo002.txt" + +# parse_netstat + +cat < $TMPDIR/expected + Connections from remote IP addresses + 192.168.243.72 1 + 192.168.243.81 2 + Connections to local IP addresses + 192.168.243.71 3 + Connections to top 10 local ports + 3306 3 + States of connections + ESTABLISHED 4 + LISTEN 15 +EOF +parse_netstat "$samples/netstat-001.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_netstat, netstat-001.txt" + +cat < "$TMPDIR/expected" + Connections from remote IP addresses + 10.14.82.196 175 + 10.14.82.200 10 + 10.14.82.202 45 + 10.17.85.70 60 + 10.17.85.72 1 + 10.17.85.74 2 + 10.17.85.86 225 + 10.17.85.88 80 + 10.17.85.90 40 + 10.17.85.92 1 + 10.17.85.100 25 + 10.17.85.104 20 + 10.36.34.66 300 + 10.36.34.68 300 + Connections to local IP addresses + 10.17.85.70 175 + 10.17.146.20 1250 + Connections to top 10 local ports + 3306 1250 + 44811 1 + 44816 1 + 44817 1 + 44820 1 + 44822 1 + 44824 1 + 44825 1 + 54446 1 + States of connections + ESTABLISHED 150 + LISTEN 15 + TIME_WAIT 1250 +EOF +parse_netstat "$samples/netstat-002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_netstat, netstat-002.txt" + +cat < "$TMPDIR/expected" + Connections from remote IP addresses + 10.8.0.12 6 + 10.8.0.14 2 + 10.8.0.65 1 + 10.8.0.76 25 + 10.8.0.77 1 + 192.168.5.77 2 + Connections to local IP addresses + 10.8.0.75 35 + Connections to top 10 local ports + 22 1 + 3306 25 + 37570 1 + 51071 1 + 51072 1 + 51073 1 + 51074 1 + 52300 1 + 60757 1 + States of connections + ESTABLISHED 30 + LISTEN 3 + TIME_WAIT 3 +EOF + +parse_netstat "$samples/netstat-003.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_netstat, netstat-003.txt" + +# parse_lsi_megaraid + +cat < "$TMPDIR/expected" + BBU | 100% Charged, Temperature 18C, isSOHGood=Yes +EOF + +cat < "$TMPDIR/in" +BBU status for Adapter: 0 + +BatteryType: BBU +Voltage: 4072 mV +Current: 0 mA +Temperature: 18 C +Firmware Status: 00000000 + +Battery state: + +GasGuageStatus: + Fully Discharged : No + Fully Charged : Yes + Discharging : Yes + Initialized : Yes + Remaining Time Alarm : No + Remaining Capacity Alarm: No + Discharge Terminated : No + Over Temperature : No + Charging Terminated : No + Over Charged : No + +Relative State of Charge: 100 % +Charger Status: Complete +Remaining Capacity: 867 mAh +Full Charge Capacity: 867 mAh +isSOHGood: Yes + +Exit Code: 0x00 +EOF +parse_lsi_megaraid_bbu_status "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + +# ############################################################################ +cat < "$TMPDIR/expected" + + PhysiclDev Type State Errors Vendor Model Size + ========== ==== ======= ====== ======= ============ =========== + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB +EOF + +cat < "$TMPDIR/in" + +Adapter #0 + +Enclosure Device ID: 32 +Slot Number: 0 +Device Id: 0 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079f8cf9 +SAS Address(1): 0x0 +Connected Port Number: 0(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2DZ33 +Foreign State: None +Media Type: Hard Disk Device + +Enclosure Device ID: 32 +Slot Number: 1 +Device Id: 1 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079f5c35 +SAS Address(1): 0x0 +Connected Port Number: 1(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2D9RH +Foreign State: None +Media Type: Hard Disk Device + +Enclosure Device ID: 32 +Slot Number: 2 +Device Id: 2 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079fc0c9 +SAS Address(1): 0x0 +Connected Port Number: 2(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2DPST +Foreign State: None +Media Type: Hard Disk Device + +Enclosure Device ID: 32 +Slot Number: 3 +Device Id: 3 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079dc339 +SAS Address(1): 0x0 +Connected Port Number: 3(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2CKD5 +Foreign State: None +Media Type: Hard Disk Device + + +Exit Code: 0x00 +EOF +parse_lsi_megaraid_devices "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + + +# ############################################################################ +cat < "$TMPDIR/expected" + + PhysiclDev Type State Errors Vendor Model Size + ========== ==== ======= ====== ======= ============ =========== + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB + Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB +EOF + +cat < "$TMPDIR/in" +[root@pc-db1 ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL + +Adapter #0 + +Number of Virtual Disks: 2 +Virtual Disk: 0 (Target Id: 0) +Name: +RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 +Size:69376MB +State: Optimal +Stripe Size: 64kB +Number Of Drives:2 +Span Depth:1 +Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Access Policy: Read/Write +Disk Cache Policy: Disk's Default +Number of Spans: 1 +Span: 0 - Number of PDs: 2 +PD: 0 Information +Enclosure Device ID: 32 +Slot Number: 0 +Device Id: 0 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079f8cf9 +SAS Address(1): 0x0 +Connected Port Number: 0(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2DZ33 +Foreign State: None +Media Type: Hard Disk Device + +PD: 1 Information +Enclosure Device ID: 32 +Slot Number: 1 +Device Id: 1 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079f5c35 +SAS Address(1): 0x0 +Connected Port Number: 1(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2D9RH +Foreign State: None +Media Type: Hard Disk Device + +Virtual Disk: 1 (Target Id: 1) +Name: +RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 +Size:69376MB +State: Optimal +Stripe Size: 64kB +Number Of Drives:2 +Span Depth:1 +Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Access Policy: Read/Write +Disk Cache Policy: Disk's Default +Number of Spans: 1 +Span: 0 - Number of PDs: 2 +PD: 0 Information +Enclosure Device ID: 32 +Slot Number: 2 +Device Id: 2 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079fc0c9 +SAS Address(1): 0x0 +Connected Port Number: 2(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2DPST +Foreign State: None +Media Type: Hard Disk Device + +PD: 1 Information +Enclosure Device ID: 32 +Slot Number: 3 +Device Id: 3 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079dc339 +SAS Address(1): 0x0 +Connected Port Number: 3(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2CKD5 +Foreign State: None +Media Type: Hard Disk Device + + +Exit Code: 0x00 +EOF +parse_lsi_megaraid_devices "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + +# ############################################################################ +cat < "$TMPDIR/expected" + + VirtualDev Size RAID Level Disks SpnDpth Stripe Status Cache + ========== ========= ========== ===== ======= ====== ======= ========= + 0(no name) 69376MB 1 (1-0-0) 2 1-1 64kB Optimal WB, no RA + 1(no name) 69376MB 1 (1-0-0) 2 1-1 64kB Optimal WB, no RA +EOF + +cat < "$TMPDIR/in" +[root@pc-db1 ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL + +Adapter #0 + +Number of Virtual Disks: 2 +Virtual Disk: 0 (Target Id: 0) +Name: +RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 +Size:69376MB +State: Optimal +Stripe Size: 64kB +Number Of Drives:2 +Span Depth:1 +Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Access Policy: Read/Write +Disk Cache Policy: Disk's Default +Number of Spans: 1 +Span: 0 - Number of PDs: 2 +PD: 0 Information +Enclosure Device ID: 32 +Slot Number: 0 +Device Id: 0 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079f8cf9 +SAS Address(1): 0x0 +Connected Port Number: 0(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2DZ33 +Foreign State: None +Media Type: Hard Disk Device + +PD: 1 Information +Enclosure Device ID: 32 +Slot Number: 1 +Device Id: 1 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079f5c35 +SAS Address(1): 0x0 +Connected Port Number: 1(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2D9RH +Foreign State: None +Media Type: Hard Disk Device + +Virtual Disk: 1 (Target Id: 1) +Name: +RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 +Size:69376MB +State: Optimal +Stripe Size: 64kB +Number Of Drives:2 +Span Depth:1 +Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Access Policy: Read/Write +Disk Cache Policy: Disk's Default +Number of Spans: 1 +Span: 0 - Number of PDs: 2 +PD: 0 Information +Enclosure Device ID: 32 +Slot Number: 2 +Device Id: 2 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079fc0c9 +SAS Address(1): 0x0 +Connected Port Number: 2(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2DPST +Foreign State: None +Media Type: Hard Disk Device + +PD: 1 Information +Enclosure Device ID: 32 +Slot Number: 3 +Device Id: 3 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 70007MB [0x88bb93a Sectors] +Non Coerced Size: 69495MB [0x87bb93a Sectors] +Coerced Size: 69376MB [0x8780000 Sectors] +Firmware state: Online +SAS Address(0): 0x5000c500079dc339 +SAS Address(1): 0x0 +Connected Port Number: 3(path0) +Inquiry Data: SEAGATE ST373455SS S5273LQ2CKD5 +Foreign State: None +Media Type: Hard Disk Device + + +Exit Code: 0x00 +EOF +parse_lsi_megaraid_virtual_devices "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + +# ############################################################################ +cat < "$TMPDIR/expected" + + VirtualDev Size RAID Level Disks SpnDpth Stripe Status Cache + ========== ========= ========== ===== ======= ====== ======= ========= + 0(no name) 69376MB 1 (1-0-0) 2 1- 64kB Optimal WB, no RA + 1(no name) 69376MB 1 (1-0-0) 2 1- 64kB Optimal WB, no RA +EOF + +cat < "$TMPDIR/in" +[root@pc-db1 ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aAll + + +Adapter 0 -- Virtual Drive Information: +Virtual Disk: 0 (Target Id: 0) +Name: +RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 +Size:69376MB +State: Optimal +Stripe Size: 64kB +Number Of Drives:2 +Span Depth:1 +Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Access Policy: Read/Write +Disk Cache Policy: Disk's Default +Virtual Disk: 1 (Target Id: 1) +Name: +RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 +Size:69376MB +State: Optimal +Stripe Size: 64kB +Number Of Drives:2 +Span Depth:1 +Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Access Policy: Read/Write +Disk Cache Policy: Disk's Default + +Exit Code: 0x00 +EOF +parse_lsi_megaraid_virtual_devices "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + + +# ############################################################################ +cat < "$TMPDIR/expected" + Model | PERC 6/i Integrated, PCIE interface, 8 ports + Cache | 256MB Memory, BBU Present +EOF + +parse_lsi_megaraid_adapter_info "$samples/MegaCli64_AdpAllInfo_aALL001.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + +# Launchpad 886223 +cat < "$TMPDIR/expected" + + VirtualDev Size RAID Level Disks SpnDpth Stripe Status Cache + ========== ========= ========== ===== ======= ====== ======= ========= + 0(no name) 135.5 GB 0 (:-1-0) 2 Depth-2 64 KB Optimal WB, no RA +EOF +parse_lsi_megaraid_virtual_devices "$PERCONA_TOOLKIT_BRANCH/t/pt-summary/samples/MegaCli64_LdPdInfo_aALL_886223" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "Bug 886223" + +# parse_hpacucli + +cat < "$TMPDIR/expected" + logicaldrive 1 (136.7 GB, RAID 1, OK) + physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK) + physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK) +EOF + +cat < "$TMPDIR/in" + +Smart Array P400i in Slot 0 (Embedded) (sn: PH73MU7325 ) + + array A (SAS, Unused Space: 0 MB) + + + logicaldrive 1 (136.7 GB, RAID 1, OK) + + physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK) + physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK) + +EOF +parse_hpacucli "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + +parse_hpacucli "$samples/hpaculi-003.txt" > "$TMPDIR/got" +is \ + "$(cat "$TMPDIR/got")" \ + "" \ + "parse_hpacucli, hpaculi-003.txt" + +# parse_fusionmpt_lsiutil + +cat < "$TMPDIR/expected" + + /proc/mpt/ioc0 LSI Logic SAS1068E B3 MPT 105 Firmware 00192f00 IOC 0 + B___T___L Type Vendor Product Rev SASAddress PhyNum + 0 0 0 Disk Dell VIRTUAL DISK 1028 + 0 2 0 Disk Dell VIRTUAL DISK 1028 + 0 8 0 EnclServ DP BACKPLANE 1.05 510240805f4feb00 8 + Hidden RAID Devices: + B___T Device Vendor Product Rev SASAddress PhyNum + 0 1 PhysDisk 0 SEAGATE ST373455SS S52A 5000c50012a8ac61 1 + 0 9 PhysDisk 1 SEAGATE ST373455SS S52A 5000c50012a8a24d 0 + 0 3 PhysDisk 2 SEAGATE ST3146855SS S52A 5000c500130fcaed 3 + 0 10 PhysDisk 3 SEAGATE ST3146855SS S52A 5000c500131093f5 2 +EOF +parse_fusionmpt_lsiutil "$samples/lsiutil-001.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lsiutil-001.txt" + +cat < "$TMPDIR/expected" + + /proc/mpt/ioc0 LSI Logic SAS1064E B3 MPT 105 Firmware 011e0000 IOC 0 + B___T___L Type Vendor Product Rev SASAddress PhyNum + 0 1 0 Disk LSILOGIC Logical Volume 3000 + Hidden RAID Devices: + B___T Device Vendor Product Rev SASAddress PhyNum + 0 2 PhysDisk 0 IBM-ESXS ST9300603SS F B536 5000c5001d784329 1 + 0 3 PhysDisk 1 IBM-ESXS MBD2300RC SB17 500000e113c17152 0 +EOF +parse_fusionmpt_lsiutil "$samples/lsiutil-002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lsiutil-002.txt" + +cat < "$TMPDIR/expected" + + /proc/mpt/ioc0 LSI Logic SAS1064E B3 MPT 105 Firmware 011e0000 IOC 0 + B___T___L Type Vendor Product Rev SASAddress PhyNum + 0 1 0 Disk LSILOGIC Logical Volume 3000 + Hidden RAID Devices: + B___T Device Vendor Product Rev SASAddress PhyNum + 0 2 PhysDisk 0 IBM-ESXS MBD2300RC SB17 500000e113c00ed2 1 + 0 3 PhysDisk 1 IBM-ESXS MBD2300RC SB17 500000e113c17ee2 0 +EOF +parse_fusionmpt_lsiutil "$samples/lsiutil-003.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "lsiutil-003.txt" + +# parse_free_minus_b + +cat < "$TMPDIR/expected" + Total | 3.9G + Free | 1.4G + Used | physical = 2.5G, swap allocated = 4.9G, swap used = 0.0, virtual = 2.5G + Buffers | 131.8M + Caches | 1.9G + Dirty | 60 kB +EOF + +cat < "$TMPDIR/in" + total used free shared buffers cached +Mem: 4182048768 2653696000 1528352768 0 138240000 2060787712 +-/+ buffers/cache: 454668288 3727380480 +Swap: 5284814848 0 5284814848 +MemTotal: 4084040 kB +MemFree: 2390720 kB +Buffers: 121868 kB +Cached: 1155116 kB +SwapCached: 0 kB +Active: 579712 kB +Inactive: 941436 kB +Active(anon): 244720 kB +Inactive(anon): 40572 kB +Active(file): 334992 kB +Inactive(file): 900864 kB +Unevictable: 48 kB +Mlocked: 48 kB +HighTotal: 3251848 kB +HighFree: 1837740 kB +LowTotal: 832192 kB +LowFree: 552980 kB +SwapTotal: 5144572 kB +SwapFree: 5144572 kB +Dirty: 60 kB +Writeback: 0 kB +AnonPages: 244264 kB +Mapped: 84452 kB +Shmem: 41140 kB +Slab: 133548 kB +SReclaimable: 107672 kB +SUnreclaim: 25876 kB +KernelStack: 2264 kB +PageTables: 7740 kB +NFS_Unstable: 0 kB +Bounce: 0 kB +WritebackTmp: 0 kB +CommitLimit: 7186592 kB +Committed_AS: 1192140 kB +VmallocTotal: 122880 kB +VmallocUsed: 32276 kB +VmallocChunk: 65120 kB +HardwareCorrupted: 0 kB +HugePages_Total: 0 +HugePages_Free: 0 +HugePages_Rsvd: 0 +HugePages_Surp: 0 +Hugepagesize: 2048 kB +DirectMap4k: 10232 kB +DirectMap2M: 897024 kB +EOF +parse_free_minus_b "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_free_minus_b" + +# parse_filesystems + +cat < $TMPDIR/expected + Filesystem Size Used Type Opts Mountpoint + /dev/sda1 99M 13% ext3 rw /boot + /dev/sda2 540G 89% ext3 rw / + tmpfs 48G 0% tmpfs rw /dev/shm +EOF +parse_filesystems "$samples/df-mount-003.txt" "Linux" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "df-mount-003.txt Linux" + +cat < $TMPDIR/expected + Filesystem Size Used Type Opts Mountpoint + /dev/sda1 9.9G 34% ext3 rw / + /dev/sdb 414G 1% ext3 rw /mnt + none 7.6G 0% devpts rw,gid=5,mode=620 /dev/shm + none 7.6G 0% tmpfs rw /dev/shm + none 7.6G 0% binfmt_misc rw /dev/shm + none 7.6G 0% proc rw /dev/shm + none 7.6G 0% sysfs rw /dev/shm +EOF +parse_filesystems "$samples/df-mount-004.txt" "Linux" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "df-mount-004.txt Linux" + +cat < $TMPDIR/expected + Filesystem Size Used Type Opts Mountpoint + /dev/cciss/c0d0p1 99M 24% ext3 rw /boot + /dev/mapper/VolGroup00-LogVol00 194G 58% ext3 rw / + /dev/mapper/VolGroup00-mysql_log 191G 4% ext3 rw /data/mysql-log + /dev/mapper/VolGroup01-mysql_data 1008G 44% ext3 rw,noatime /data/mysql-data + tmpfs 48G 0% tmpfs rw /dev/shm +EOF +parse_filesystems "$samples/df-mount-005.txt" "Linux" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "df-mount-005.txt Linux" + +cat < $TMPDIR/expected + Filesystem Size Used Type Opts Mountpoint + /dev/ad0s1a 496M 32% ufs local / + /dev/ad0s1d 1.1G 1% ufs local, soft-updates /var + /dev/ad0s1e 496M 0% ufs local, soft-updates /tmp + /dev/ad0s1f 17G 9% ufs local, soft-updates /usr + devfs 1.0K 100% devfs local /dev +EOF +parse_filesystems "$samples/df-mount-006.txt" "FreeBSD" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "df-mount-006.txt FreeBSD" + +# parse_ip_s_link + +cat < "$TMPDIR/expected" + interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors + ========= ========= ========== ========== ========== ========== ========== + lo 3000000 25000 0 3000000 25000 0 + eth0 175000000 30000000 0 125000000 900000 0 + wlan0 50000000 80000 0 20000000 90000 0 + vboxnet0 0 0 0 0 0 0 +EOF +parse_ip_s_link "$samples/ip-s-link-001.txt" > $TMPDIR/got +no_diff "$TMPDIR/got" "$TMPDIR/expected" "ip-s-link-001.txt" + +cat < "$TMPDIR/expected" + interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors + ========= ========= ========== ========== ========== ========== ========== + lo 3500000000 350000000 0 3500000000 350000000 0 + eth0 1750000000 1250000000 0 3500000000 700000000 0 + eth1 1250000000 60000000 0 900000000 50000000 0 + sit0 0 0 0 0 0 0 +EOF +parse_ip_s_link "$samples/ip-s-link-002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "ip-s-link-002.txt" + +cat < "$TMPDIR/expected" + interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors + ========= ========= ========== ========== ========== ========== ========== + lo 25000000 300000 0 25000000 300000 0 + eth0 0 0 0 0 0 0 + wlan0 0 0 0 0 0 0 + virbr0 0 0 0 0 0 0 +EOF +parse_ip_s_link "$samples/ip-s-link-003.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "ip-s-link-003.txt" + +# parse_fdisk + +cat < "$TMPDIR/expected" +Device Type Start End Size +============ ==== ========== ========== ================== +/dev/dm-0 Disk 494609104896 +/dev/dm-1 Disk 5284823040 +/dev/sda Disk 500107862016 +/dev/sda1 Part 1 26 205632000 +/dev/sda2 Part 26 60801 499891392000 +EOF +parse_fdisk "$samples/fdisk-01.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "parse_fdisk" + +# parse_ethernet_controller_lspci + +cat < $TMPDIR/expected + Controller | Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet (rev 12) + Controller | Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet (rev 12) +EOF +parse_ethernet_controller_lspci "$samples/lspci-001.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + +# parse_dmidecode_mem_devices + +cat < $TMPDIR/expected + Locator Size Speed Form Factor Type Type Detail + ========= ======== ================= ============= ============= =========== + SODIMM0 2048 MB 800 MHz SODIMM Other Synchronous + SODIMM1 2048 MB 800 MHz SODIMM Other Synchronous +EOF +parse_dmidecode_mem_devices "$samples/dmidecode-001.txt" > $TMPDIR/got +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmidecode-001.tx" + +cat < "$TMPDIR/expected" + Locator Size Speed Form Factor Type Type Detail + ========= ======== ================= ============= ============= =========== + DIMM1 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous + DIMM2 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous + DIMM3 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous + DIMM4 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous + DIMM5 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous + DIMM6 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous + DIMM7 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous + DIMM8 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous +EOF +parse_dmidecode_mem_devices "$samples/dmidecode-002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmidecode-002.tx" + +cat < "$TMPDIR/expected" + Locator Size Speed Form Factor Type Type Detail + ========= ======== ================= ============= ============= =========== + 1024 kB 33 MHz Other Flash Non-Volatile + D5 4096 MB 1066 MHz DIMM Other Other + D8 4096 MB 1066 MHz DIMM Other Other + D0 {EMPTY} 1333 MHz DIMM Other Other + D0 {EMPTY} 1333 MHz DIMM Other Other + D1 {EMPTY} 1333 MHz DIMM Other Other + D1 {EMPTY} 1333 MHz DIMM Other Other + D2 {EMPTY} 1333 MHz DIMM Other Other + D2 {EMPTY} 1333 MHz DIMM Other Other + D3 {EMPTY} 1333 MHz DIMM Other Other + D3 {EMPTY} 1333 MHz DIMM Other Other + D4 {EMPTY} 1333 MHz DIMM Other Other + D4 {EMPTY} 1333 MHz DIMM Other Other + D5 {EMPTY} 1333 MHz DIMM Other Other + D6 {EMPTY} 1333 MHz DIMM Other Other + D6 {EMPTY} 1333 MHz DIMM Other Other + D7 {EMPTY} 1333 MHz DIMM Other Other + D7 {EMPTY} 1333 MHz DIMM Other Other + D8 {EMPTY} 1333 MHz DIMM Other Other +EOF +parse_dmidecode_mem_devices "$samples/dmidecode-003.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmidecode-003.txt" + +cat < "$TMPDIR/expected" + Locator Size Speed Form Factor Type Type Detail + ========= ======== ================= ============= ============= =========== + DIMM_A2 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_A3 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_A5 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_A6 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_B2 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_B3 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_B5 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_B6 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous + DIMM_A1 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous + DIMM_A4 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous + DIMM_B1 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous + DIMM_B4 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous +EOF +parse_dmidecode_mem_devices "$samples/dmidecode-004.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmidecode-004.txt" + +cat < "$TMPDIR/expected" + Locator Size Speed Form Factor Type Type Detail + ========= ======== ================= ============= ============= =========== + P1-DIMM1A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other + P1-DIMM2A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other + P1-DIMM3A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other + P2-DIMM1A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other + P2-DIMM2A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other + P2-DIMM3A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other + 4096 kB 33 MHz (30.3 ns) Other Flash Non-Volatile + P1-DIMM1B {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P1-DIMM1C {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P1-DIMM2B {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P1-DIMM2C {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P1-DIMM3B {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P1-DIMM3C {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P2-DIMM1B {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P2-DIMM1C {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P2-DIMM2B {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P2-DIMM2C {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P2-DIMM3B {EMPTY} Unknown DIMM {OUT OF SPEC} Other + P2-DIMM3C {EMPTY} Unknown DIMM {OUT OF SPEC} Other +EOF +parse_dmidecode_mem_devices "$samples/dmidecode-005.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "dmidecode-005.txt" + +# parse_arcconf + +cat < "$TMPDIR/expected" + Specs | Adaptec 3405, SAS/SATA, 128 MB cache, Optimal + Battery | 99%, 3d1h11m remaining, Optimal + + LogicalDev Size RAID Disks Stripe Status Cache + ========== ========= ==== ===== ====== ======= ======= + raid10 279800 MB 10 4 256 KB Optimal On (WB) + + PhysiclDev State Speed Vendor Model Size Cache + ========== ======= ============= ======= ============ =========== ======= + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146855SS 140014 MB On (WB) + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146356SS 140014 MB On (WB) + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146356SS 140014 MB On (WB) + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146855SS 140014 MB On (WB) +EOF + +cat < "$TMPDIR/in" +# /usr/StorMan/arcconf getconfig 1 +Controllers found: 1 +---------------------------------------------------------------------- +Controller information +---------------------------------------------------------------------- + Controller Status : Optimal + Channel description : SAS/SATA + Controller Model : Adaptec 3405 + Controller Serial Number : 8C16103E017 + Physical Slot : 1 + Temperature : 35 C/ 95 F (Normal) + Installed memory : 128 MB + Copyback : Disabled + Background consistency check : Disabled + Automatic Failover : Enabled + Global task priority : High + Stayawake period : Disabled + Spinup limit internal drives : 0 + Spinup limit external drives : 0 + Defunct disk drive count : 0 + Logical devices/Failed/Degraded : 1/0/0 + -------------------------------------------------------- + Controller Version Information + -------------------------------------------------------- + BIOS : 5.2-0 (17304) + Firmware : 5.2-0 (17304) + Driver : 1.1-5 (2461) + Boot Flash : 5.2-0 (17304) + -------------------------------------------------------- + Controller Battery Information + -------------------------------------------------------- + Status : Optimal + Over temperature : No + Capacity remaining : 99 percent + Time remaining (at current draw) : 3 days, 1 hours, 11 minutes + +---------------------------------------------------------------------- +Logical device information +---------------------------------------------------------------------- +Logical device number 0 + Logical device name : raid10 + RAID level : 10 + Status of logical device : Optimal + Size : 279800 MB + Stripe-unit size : 256 KB + Read-cache mode : Enabled + Write-cache mode : Enabled (write-back) + Write-cache setting : Enabled (write-back) when protected by battery + Partitioned : Unknown + Protected by Hot-Spare : No + Bootable : Yes + Failed stripes : No + Power settings : Disabled + -------------------------------------------------------- + Logical device segment information + -------------------------------------------------------- + Group 0, Segment 0 : Present (0,0) 3LN6552C00009903T8E4 + Group 0, Segment 1 : Present (0,1) 3QN26HL400009009KZ0Q + Group 1, Segment 0 : Present (0,2) 3QN1S2AN00009001XVFZ + Group 1, Segment 1 : Present (0,3) 3LN648WZ00009903T916 + + +---------------------------------------------------------------------- +Physical Device information +---------------------------------------------------------------------- + Device #0 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SAS 3.0 Gb/s + Reported Channel,Device(T:L) : 0,0(0:0) + Reported Location : Connector 0, Device 0 + Vendor : SEAGATE + Model : ST3146855SS + Firmware : 0002 + Serial number : 3LN6552C00009903T8E4 + World-wide name : 5000C5000C4DDBB8 + Size : 140014 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + Device #1 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SAS 3.0 Gb/s + Reported Channel,Device(T:L) : 0,1(1:0) + Reported Location : Connector 0, Device 1 + Vendor : SEAGATE + Model : ST3146356SS + Firmware : 0005 + Serial number : 3QN26HL400009009KZ0Q + World-wide name : 5000C50016F5E66C + Size : 140014 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + Device #2 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SAS 3.0 Gb/s + Reported Channel,Device(T:L) : 0,2(2:0) + Reported Location : Connector 0, Device 2 + Vendor : SEAGATE + Model : ST3146356SS + Firmware : 0005 + Serial number : 3QN1S2AN00009001XVFZ + World-wide name : 5000C50016F5EF4C + Size : 140014 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + Device #3 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SAS 3.0 Gb/s + Reported Channel,Device(T:L) : 0,3(3:0) + Reported Location : Connector 0, Device 3 + Vendor : SEAGATE + Model : ST3146855SS + Firmware : 0002 + Serial number : 3LN648WZ00009903T916 + World-wide name : 5000C5000C4DEA60 + Size : 140014 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + + +Command completed successfully. + +EOF +parse_arcconf "$TMPDIR/in" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" + +cat < "$TMPDIR/expected" + Specs | Adaptec 3405, SAS/SATA, 128 MB cache, Optimal + Battery | 99%, 3d1h11m remaining, Optimal + + LogicalDev Size RAID Disks Stripe Status Cache + ========== ========= ==== ===== ====== ======= ======= + Raid10-A 571392 MB 10 4 256 KB Optimal On (WB) + + PhysiclDev State Speed Vendor Model Size Cache + ========== ======= ============= ======= ============ =========== ======= + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) + Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) +EOF +parse_arcconf "$samples/arcconf-002.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "arcconf-002.txt" + +# Launchpad 917781, parse_arcconf doesn't work with ZMM +# https://bugs.launchpad.net/percona-toolkit/+bug/917781 +cat < "$TMPDIR/expected" + Specs | Adaptec 5405Z, SAS/SATA, 512 MB cache, Optimal + Battery | ZMM Optimal + + LogicalDev Size RAID Disks Stripe Status Cache + ========== ========= ==== ===== ====== ======= ======= + RAID10-A 571382 MB 10 4 256 KB Optimal On (WB) + + PhysiclDev State Speed Vendor Model Size Cache + ========== ======= ============= ======= ============ =========== ======= + Hard drive Full rpm,Powered off SATA 3.0 Gb/s WDC WD3000HLFS-0 286168 MB On (WB) + Hard drive Full rpm,Powered off SATA 3.0 Gb/s WDC WD3000HLFS-0 286168 MB On (WB) + Hard drive Full rpm,Powered off SATA 3.0 Gb/s WDC WD3000HLFS-0 286168 MB On (WB) + Hard drive Full rpm,Powered off SATA 3.0 Gb/s WDC WD3000HLFS-0 286168 MB On (WB) +EOF + +parse_arcconf "$samples/arcconf-004_917781.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "Bug 917781" + +# Launchpad 900285, ${var/ /} doesn't work in sh +# https://bugs.launchpad.net/percona-toolkit/+bug/900285 +cat < "$TMPDIR/expected" + Specs | Adaptec 5805Z, SAS/SATA, 512 MB cache, Optimal + Battery | ZMM Optimal + + LogicalDev Size RAID Disks Stripe Status Cache + ========== ========= ==== ===== ====== ======= ======= + RAID10-A 121790 MB 10 4 256 KB Optimal On (WB) + RAID1-A 285686 MB 1 0 Optimal On (WB) + + PhysiclDev State Speed Vendor Model Size Cache + ========== ======= ============= ======= ============ =========== ======= + Hard drive Full rpm,Powered off SATA 3.0 Gb/s INTEL SSDSA2SH064G1GC 61057 MB On (WB) + Hard drive Full rpm,Powered off SATA 3.0 Gb/s INTEL SSDSA2SH064G1GC 61057 MB On (WB) + Hard drive Full rpm,Powered off SATA 3.0 Gb/s INTEL SSDSA2SH064G1GC 61057 MB On (WB) + Hard drive Full rpm,Powered off SATA 3.0 Gb/s INTEL SSDSA2SH064G1GC 61057 MB On (WB) + Hard drive Full rpm,Powered off SAS 3.0 Gb/s SEAGATE ST3300657SS 286102 MB On (WB) + Hard drive Full rpm,Powered off SAS 3.0 Gb/s SEAGATE ST3300657SS 286102 MB On (WB) +EOF +parse_arcconf "$samples/arcconf-003_900285.txt" > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "Bug 900285" + +# report_system_summary +PT_SUMMARY_SKIP="" + +cat < "$TMPDIR/expected" + Hostname | + Uptime | 57 mins, 1 user, load averages: 0.16, 0.03, 0.07 + Platform | FreeBSD + Release | 8.2-RELEASE + Kernel | 199506 +Architecture | CPU = 32-bit, OS = 32-bit + Virtualized | No virtualization detected +# Processor ################################################## + Processors | virtual = 1 + Speeds | 2109 + Models | AMD Athlon(tm) 64 X2 Dual Core Processor 4000+ +# Memory ##################################################### + Total | 499.4M + Virtual | 511.9M + Used | 66.4M + UsedRSS | 17.7M +# Mounted Filesystems ######################################## + Filesystem Size Used Type Opts Mountpoint + /dev/ad0s1a 620M 30% ufs local / + /dev/ad0s1d 1.3G 0% ufs local, soft-updates /var + /dev/ad0s1e 341M 0% ufs local, soft-updates /tmp + /dev/ad0s1f 3.3G 32% ufs local, soft-updates /usr + /dev/da0s1 3.8G 0% msdosfs local /mnt/usb + devfs 1.0K 100% devfs local, multilabel /dev + procfs 4.0K 100% procfs local /proc +# RAID Controller ############################################ + Controller | No RAID controller detected +# Top Processes ############################################## + PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND +23318 root 1 76 0 3632K 1744K wait 0:00 0.98% sh + 447 root 1 44 0 1888K 584K select 0:00 0.00% devd + 945 root 1 44 0 4672K 2336K pause 0:00 0.00% csh + 556 root 1 44 0 3352K 1264K select 0:00 0.00% syslogd + 848 root 1 44 0 6092K 3164K select 0:00 0.00% sendmail + 859 root 1 44 0 3380K 1308K nanslp 0:00 0.00% cron + 931 root 1 44 0 3816K 1724K wait 0:00 0.00% login + 937 root 1 76 0 3352K 1096K ttyin 0:00 0.00% getty + 934 root 1 76 0 3352K 1096K ttyin 0:00 0.00% getty +# Notable Processes ########################################## + PID OOM COMMAND + ? ? sshd doesn't appear to be running +# Simplified and fuzzy rounded vmstat (wait please) ########## + procs memory page disks faults cpu + r b w avm fre flt re pi po fr sr ad0 da0 in sy cs us sy id + 1 0 0 63720 339504 1158 0 0 0 1022 0 0 0 246 1201 336 22 15 63 + 0 0 0 58164 339792 7924 0 0 0 6663 0 4 3 242 5829 744 15 71 14 + 0 0 0 58164 339792 0 0 0 0 0 0 0 0 230 107 231 0 9 91 + 0 0 0 58164 339792 0 0 0 0 0 0 0 0 230 107 229 0 3 97 + 0 0 0 58164 339792 0 0 0 0 0 0 0 0 231 115 229 0 5 95 +# The End #################################################### +EOF +report_system_summary "$samples/BSD/freebsd_001" | tail -n +3 > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "report_system_summary works with samples from a FreeBSD box" + +cat < "$TMPDIR/expected" + Hostname | + Uptime | 43 mins, 2 users, load averages: 0.00, 0.00, 0.00 + Platform | NetBSD + Release | 5.1.2 + Kernel | 501000200 +Architecture | CPU = 32-bit, OS = 32-bit + Virtualized | No virtualization detected +# Processor ################################################## + Processors | physical = 1, cores = 0, virtual = 1, hyperthreading = no + Speeds | 1x2178.48 + Models | 1xAMD Athlon(tm) 64 X2 Dual Core Processor 4000+ + Caches | +# Memory ##################################################### + Total | 127.6M + User | 127.2M + Swap | 64.5M + UsedRSS | 10.6M +# Mounted Filesystems ######################################## + Filesystem Size Used Type Opts Mountpoint + /dev/sd0e 3.8G 0% yp dev/sd0e 3.8G 17M 3.7G 0% /mnt/usb on /mnt/usb type msdos (local /mnt/usb + /dev/wd0a 1.8G 30% yp dev/wd0a 1.8G 545M 1.2G 30% / on / type ffs (local / + kernfs 1.0K 100% yp ernfs 1.0K 1.0K 0B 100% /kern on /kern type kernfs (local /kern + procfs 4.0K 100% yp rocfs 4.0K 4.0K 0B 100% /proc on /proc type procfs (local /proc + ptyfs 1.0K 100% yp tyfs 1.0K 1.0K 0B 100% /dev/pts on /dev/pts type ptyfs (local /dev/pts +# RAID Controller ############################################ + Controller | No RAID controller detected +# Top Processes ############################################## + PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND + 0 root 124 0 0K 20M syncer 0:01 0.00% 0.00% [system] + 3922 root 43 0 2976K 984K CPU 0:00 0.00% 0.00% top + 277 root 85 0 5592K 2232K wait 0:00 0.00% 0.00% login + 279 root 85 0 5592K 2164K wait 0:00 0.00% 0.00% login + 3501 root 85 0 2836K 1396K pause 0:00 0.00% 0.00% ksh + 284 root 85 0 2960K 1192K wait 0:00 0.00% 0.00% sh + 1957 root 85 0 2960K 1164K ttyraw 0:00 0.00% 0.00% sh + 116 root 85 0 2940K 1016K kqueue 0:00 0.00% 0.00% syslogd + 272 root 85 0 2920K 940K ttyraw 0:00 0.00% 0.00% getty +# Notable Processes ########################################## + PID OOM COMMAND + ? ? sshd doesn't appear to be running +# Simplified and fuzzy rounded vmstat (wait please) ########## + procs memory page disks faults cpu + r b w avm fre flt re pi po fr sr w0 c0 in sy cs us sy id + 2 0 0 78624 21544 103 0 0 0 0 0 6 0 113 154 33 0 2 98 + 2 0 0 78652 21260 12425 0 0 0 0 0 0 0 92 6208 355 12 84 4 + 0 0 0 78564 21364 1208 0 0 0 0 0 0 0 98 806 43 2 9 89 + 0 0 0 78564 21364 0 0 0 0 0 0 0 0 101 11 9 0 0 100 + 0 0 0 78564 21364 0 0 0 0 0 0 0 0 101 11 10 0 0 100 +# The End #################################################### +EOF +report_system_summary "$samples/BSD/netbsd_001" | tail -n +3 > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "report_system_summary works with samples from a NetBSD box" + +cat < "$TMPDIR/expected" + Hostname | openbsd.my.domain + Uptime | 1:14, 1 user, load averages: 0.44, 0.20, 0.16 + Platform | OpenBSD + Release | 5.0 + Kernel | 201111 +Architecture | CPU = 32-bit, OS = 32-bit + Virtualized | No virtualization detected +# Processor ################################################## + Processors | 1 + Speeds | 2111 + Models | AMD +# Memory ##################################################### + Total | 255.5M + User | 255.5M + Swap | 81.1M + UsedRSS | 5.3M +# Mounted Filesystems ######################################## + Filesystem Size Used Type Opts Mountpoint + /dev/sd0i 3.8G 0% yp long /mnt/usb + /dev/wd0a 788M 6% yp dev/wd0a 788M 42.5M 706M 6% / on / type ffs (local / + /dev/wd0d 893M 48% yp nodev /usr + /dev/wd0e 252M 37% yp nodev, nosuid /home +# RAID Controller ############################################ + Controller | No RAID controller detected +# Top Processes ############################################## + PID USERNAME PRI NICE SIZE RES STATE WAIT TIME CPU COMMAND +22422 root 18 0 888K 1012K sleep pause 0:00 0.93% sh +20216 _pflogd 4 0 528K 312K sleep bpf 0:01 0.00% pflogd +22982 root 2 0 1372K 1956K sleep select 0:00 0.00% sendmail +26829 root 18 0 544K 532K sleep pause 0:00 0.00% ksh +17299 _syslogd 2 0 524K 752K sleep poll 0:00 0.00% syslogd + 7254 root 2 0 508K 872K idle select 0:00 0.00% cron + 1 root 10 0 544K 324K idle wait 0:00 0.00% init +28237 root 2 0 500K 696K idle netio 0:00 0.00% syslogd +30259 root 3 0 408K 812K idle ttyin 0:00 0.00% getty +# Notable Processes ########################################## + PID OOM COMMAND + ? ? sshd doesn't appear to be running +# Simplified and fuzzy rounded vmstat (wait please) ########## + procs memory page disks traps cpu + r b w avm fre flt re pi po fr sr wd0 cd0 int sys cs us sy id + 2 1 0 7608 191356 66 0 0 0 0 0 2 0 231 108 14 0 1 99 + 1 1 0 7804 191192 9916 0 0 0 0 0 0 0 234 14726 315 9 90 1 + 1 0 0 7600 191360 9461 0 0 0 0 0 0 0 256 14435 285 6 94 0 + 0 0 0 7496 191456 1272 0 0 0 0 0 0 0 256 1973 50 2 12 85 + 0 0 0 7496 191456 11 0 0 0 0 0 0 0 230 23 12 0 0 100 +# The End #################################################### +EOF +report_system_summary "$samples/BSD/openbsd_001" | tail -n +3 > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "report_system_summary works with samples from a OpenBSD box" + +cat < "$TMPDIR/expected" + Hostname | hugmeir + Uptime | 1 day, 15:14, 5 users, load average: 0.00, 0.06, 0.07 + System | Quanta; UW3; vTBD (Other) + Service Tag | 123456789 + Platform | Linux + Release | Ubuntu 11.10 (oneiric) + Kernel | 3.0.0-16-generic +Architecture | CPU = 32-bit, OS = 32-bit + Threading | NPTL 2.13 + SELinux | No SELinux detected + Virtualized | No virtualization detected +# Processor ################################################## + Processors | physical = 1, cores = 1, virtual = 2, hyperthreading = yes + Speeds | 1x1000.000, 1x1666.000 + Models | 2xIntel(R) Atom(TM) CPU N455 @ 1.66GHz + Caches | 2x512 KB +# Memory ##################################################### + Total | 2.0G + Free | 477.3M + Used | physical = 1.5G, swap allocated = 2.0G, swap used = 0.0, virtual = 1.5G + Buffers | 194.9M + Caches | 726.8M + Dirty | 144 kB + UsedRSS | 1.1G + Swappiness | 60 + DirtyPolicy | 20, 10 + Locator Size Speed Form Factor Type Type Detail + ========= ======== ================= ============= ============= =========== + DIMM0 2048 MB 667 MHz (1.5 ns) SODIMM DDR2 Synchronous +# Mounted Filesystems ######################################## + Filesystem Size Used Type Opts Mountpoint + /dev/sda7 333G 12% ext4 rw,errors=remount-ro,commit=0 / + /dev/sdb1 3.8G 1% vfat rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks /media/PENDRIVE + none 1002M 1% tmpfs rw,noexec,nosuid,nodev,size=5242880 /run/shm + none 1002M 1% tmpfs rw,nosuid,nodev /run/shm + none 1002M 1% debugfs rw /run/shm + none 1002M 1% securityfs rw /run/shm + none 5.0M 0% tmpfs rw,noexec,nosuid,nodev,size=5242880 /run/lock + none 5.0M 0% tmpfs rw,nosuid,nodev /run/lock + none 5.0M 0% debugfs rw /run/lock + none 5.0M 0% securityfs rw /run/lock + tmpfs 401M 1% tmpfs rw,noexec,nosuid,size=10%,mode=0755 /run + udev 995M 1% devtmpfs rw,mode=0755 /dev +# Disk Schedulers And Queue Size ############################# + sda | [cfq] 128 +# Disk Partioning ############################################ +Device Type Start End Size +============ ==== ========== ========== ================== +/dev/sda Disk 500107862016 +/dev/sda1 Part 2048 206847 104857088 +/dev/sda2 Part 206848 12494847 6291455488 +/dev/sda3 Part 12494848 207808587 100000634368 +/dev/sda4 Part 207810558 976771071 393707782656 +/dev/sda5 Part 207810560 259807667 26622518784 +/dev/sda6 Part 972603392 976771071 2133851648 +/dev/sda7 Part 259809280 968421375 362809392640 +/dev/sda8 Part 968423424 972591103 2133851648 +/dev/sdb Disk 4041211904 +/dev/sdb1 Part 63 7892991 4041179136 +# Kernel Inode State ######################################### +dentry-state | 78471 67588 45 0 0 0 + file-nr | 9248 0 203574 + inode-nr | 70996 10387 +# LVM Volumes ################################################ +No volume groups found +# RAID Controller ############################################ + Controller | No RAID controller detected +# Network Config ############################################# + Controller | Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 02) + FIN Timeout | 60 + Port Range | 61000 +# Interface Statistics ####################################### + interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors + ========= ========= ========== ========== ========== ========== ========== + lo 25000000 350000 0 25000000 350000 0 + eth0 0 0 0 0 0 0 + wlan0 0 0 0 0 0 0 + virbr0 0 0 0 0 0 0 +# Network Connections ######################################## + Connections from remote IP addresses + Connections to local IP addresses + Connections to top 10 local ports + States of connections + LISTEN 4 +# Top Processes ############################################## + PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND + 1548 hugmeir 20 0 122m 14m 10m S 2 0.7 1:44.97 gnome-settings- + 1567 hugmeir 20 0 257m 88m 22m S 2 4.4 83:35.58 compiz + 4455 hugmeir 20 0 283m 30m 21m S 2 1.5 30:42.87 knotify4 +17394 hugmeir 20 0 118m 37m 26m S 2 1.9 0:29.35 kwrite +30819 root 20 0 2824 1144 844 R 2 0.1 0:00.03 top + 1 root 20 0 3328 1912 1248 S 0 0.1 0:01.55 init + 2 root 20 0 0 0 0 S 0 0.0 0:00.07 kthreadd + 3 root 20 0 0 0 0 S 0 0.0 0:05.54 ksoftirqd/0 + 6 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/0 +# Notable Processes ########################################## + PID OOM COMMAND + ? ? sshd doesn't appear to be running + 305 -17 udevd +29745 -17 udevd +29746 -17 udevd +# Simplified and fuzzy rounded vmstat (wait please) ########## + procs ---swap-- -----io---- ---system---- --------cpu-------- + r b si so bi bo ir cs us sy il wa st + 2 0 0 0 2 1 150 50 4 1 95 0 + 0 0 0 0 0 8 900 2250 28 26 46 0 + 0 0 0 0 0 0 200 200 1 0 99 0 + 1 0 0 0 0 150 225 225 1 1 95 3 + 0 0 0 0 0 150 250 250 1 0 99 0 +# The End #################################################### +EOF + +report_system_summary "$samples/Linux/001" | tail -n +3 > "$TMPDIR/got" +no_diff "$TMPDIR/got" "$TMPDIR/expected" "report_system_summary works with samples from Linux" diff --git a/t/lib/bash/report_system_info.t b/t/lib/bash/report_system_info.t new file mode 100755 index 00000000..533265fd --- /dev/null +++ b/t/lib/bash/report_system_info.t @@ -0,0 +1,212 @@ +#!/usr/bin/env bash + +# This script is a test harness and TAP producer for testing bash functions +# in a bash file. A bash and test file are sourced; the former provides the +# functions to test and the latter provides the testing. + +# ############################################################################ +# Standard startup, find the branch's root directory +# ############################################################################ +LANG='en_US.UTF-8' + +die() { + echo $1 >&2 + exit 255 +} + +cwd="$PWD" +if [ -n "$PERCONA_TOOLKIT_BRANCH" ]; then + BRANCH=$PERCONA_TOOLKIT_BRANCH + cd $BRANCH +else + while [ ! -f Makefile.PL ] && [ $(pwd) != "/" ]; do + cd .. + done + if [ ! -f Makefile.PL ]; then + die "Cannot find the root directory of the Percona Toolkit branch" + exit 1 + fi + BRANCH="$PWD" +fi +cd "$cwd" + +BIN_DIR="$BRANCH/bin"; +LIB_DIR="$BRANCH/lib/bash"; +T_LIB_DIR="$BRANCH/t/lib"; +SANDBOX_VERSION="$($BRANCH/sandbox/test-env version)" + +# ############################################################################ +# Paths +# ############################################################################ + +# Do not use TMPDIR because the tools use it for their own secure tmpdir. +TEST_TMPDIR="/tmp/percona-toolkit.test" +if [ ! -d $TEST_TMPDIR ]; then + mkdir $TEST_TMPDIR +fi + +# ############################################################################ +# Subroutines +# ############################################################################ + +# Load (count) the tests and print a TAP-style test plan. +load_tests() { + local test_files="$@" + local i=0 + local n_tests=0 + for t in $test_files; do + # Return unless the test file is bash. There may be other types of + # files in the tool's test dir. + if [ ! -f $t ]; then + continue + fi + head -n 1 $t | grep -q bash || continue + + tests[$i]=$t + i=$((i + 1)) + + number_of_tests=$(grep --max-count 1 '^TESTS=[0-9]' $t | cut -d'=' -f2) + if [ -z "$number_of_tests" ]; then + n_tests=$(( $n_tests + 1 )) + else + n_tests=$(( $n_tests + $number_of_tests )) + fi + done + echo "1..$n_tests" +} + +# Source a test file to run whatever it contains (hopefully tests!). +run_test() { + local t=$1 # test file name, e.g. "group-by-all-01" for pt-diskstats + rm -rf $TEST_TMPDIR/* >/dev/null 2>&1 + + # Tests assume that they're being ran from their own dir, so they access + # sample files like "samples/foo.txt". So cd to the dir of the test file + # and run it. But the test file may have been given as a relative path, + # so run its basename after cd'ing to its directory. Then cd back in case + # other test files are in other dirs. + cwd="$PWD" + local t_dir=$(dirname $t) + TEST_FILE=$(basename $t) + cd $t_dir + source ./$TEST_FILE + cd $cwd + + return $? +} + +# Print a TAP-style test result. +result() { + local result=$1 + local test_name=${2:-""} + if [ $result -eq 0 ]; then + echo "ok $testno - $TEST_FILE $test_name" + else + echo "not ok $testno - $TEST_FILE $test_name" + failed_tests=$(( failed_tests + 1)) + echo "# Failed '$test_command'" >&2 + if [ -f $TEST_TMPDIR/failed_result ]; then + cat $TEST_TMPDIR/failed_result | sed -e 's/^/# /' -e '30q' >&2 + fi + fi + testno=$((testno + 1)) + return $result +} + +plan() { + local n_tests=${1:-""} + if [ "$n_tests" ]; then + echo "1..$n_tests" + fi +} + +# +# The following subs are for the test files to call. +# + +skip() { + local skip="$1" + local number_of_tests="$2" + local reason="${3:-""}" + + if [ $skip ]; then + for n in $(seq $number_of_tests); do + result 0 "# skip $n $reason" + done + fi +} + +# TODO unperlify +like() { + local got="$1" + local regex="$2" + local test_name=${3:-""} + test_command="$got =~ m<$regex>" + perl -e 'exit(scalar($ARGV[0] =~ m<^$ARGV[1]>msi ? 0 : 1))' "$got" "$regex" + result $? "$test_name" +} + +no_diff() { + local got=$1 + local expected=$2 + local test_name=${3:-""} + test_command="diff $got $expected" + eval $test_command > $TEST_TMPDIR/failed_result 2>&1 + result $? "$test_name" +} + +is() { + local got=$1 + local expected=$2 + local test_name=${3:-""} + test_command="\"$got\" == \"$expected\"" + test "$got" = "$expected" + result $? "$test_name" +} + +cmd_ok() { + local test_command=$1 + local test_name=${2:-""} + eval $test_command + result $? "$test_name" +} + +# ############################################################################ +# Script starts here +# ############################################################################ + +testno=1 +failed_tests=0 + +if [ $# -eq 0 ]; then + TEST_FILE=$(basename "$0") + TEST="${TEST_FILE%".t"}" + source "$BRANCH/t/lib/bash/$TEST.sh" +else + if [ $# -lt 2 ]; then + die "Usage: test-bash-functions FILE TESTS" + fi + + # Check and source the bash file. This is the code being tested. + # All its global vars and subs will be imported. + bash_file=$1 + shift + if [ ! -f "$bash_file" ]; then + die "$bash_file does not exist" + fi + head -n1 $bash_file | grep -q -E 'bash|sh' || die "$bash_file is not a bash file" + source $bash_file + + # Load (count) the tests so that we can write a TAP test plan like 1..5 + # for expecting 5 tests. Perl prove needs this. + declare -a tests + load_tests "$@" + + # Run the test files. + for t in "${tests[@]}"; do + run_test $t + done +fi + +rm -rf $TEST_TMPDIR +exit $failed_tests diff --git a/t/lib/bash/summary_common.sh b/t/lib/bash/summary_common.sh new file mode 100644 index 00000000..fb55378f --- /dev/null +++ b/t/lib/bash/summary_common.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +plan 3 + +TMPDIR="$TEST_TMPDIR" +PATH="$PATH:$PERCONA_TOOLKIT_SANDBOX/bin" + +. "$LIB_DIR/summary_common.sh" + +p="$TMPDIR/get_var_samples" + +echo "test1 abcdef" > "$p" +is \ + "$(get_var test1 "$p")" \ + "abcdef" \ + "Sanity check, get_var works" + +echo "test2 abc def" > "$p" +is \ + "$(get_var test2 "$p")" \ + "abc def" \ + "get_var works even if the value has spaces" + +echo "test::1 abcdef" > "$p" +is \ + "$(get_var "test::1" "$p")" \ + "abcdef" \ + "get_var works if the 'key' has colons" + diff --git a/t/lib/bash/summary_common.t b/t/lib/bash/summary_common.t new file mode 120000 index 00000000..edb04c13 --- /dev/null +++ b/t/lib/bash/summary_common.t @@ -0,0 +1 @@ +../../../util/test-bash-functions \ No newline at end of file diff --git a/t/pt-mysql-summary/samples/expected_result_report_summary.txt b/t/pt-mysql-summary/samples/expected_result_report_summary.txt index 15dd2961..590abd56 100644 --- a/t/pt-mysql-summary/samples/expected_result_report_summary.txt +++ b/t/pt-mysql-summary/samples/expected_result_report_summary.txt @@ -1,16 +1,16 @@ # Instances ################################################## - Port Data Directory Nice OOM Value Socket - ===== ========================== ==== ========= ====== - 3306 /var/lib/mysql ? ? /var/run/mysqld/mysqld.sock + Port Data Directory Nice OOM Socket + ===== ========================== ==== === ====== + 3306 /var/lib/mysql ? ? /var/run/mysqld/mysqld.sock # MySQL Executable ########################################### Has symbols | No # Report On Port 3306 ######################################## - User | 0 - Time | 0 (ART) + User | + Time | 2012-02-22 06:24:23 (ART) Hostname | msandbox Version | 5.1.58-1ubuntu1-log (Ubuntu) Built On | debian-linux-gnu i686 - Started | 0 (up 0+00:02:43) + Started | 2012-02-22 06:21 (up 0+00:02:43) Databases | 3 Datadir | /var/lib/mysql/ Processes | 1 connected, 1 running @@ -116,9 +116,6 @@ Uptime 90000 1 1 Size | 16.0M Usage | 0% HitToInsertRatio | 0% -# Semisynchronous Replication ################################ - Master | Disabled - Slave | Disabled # Schema ##################################################### Database Tables Views SPs Trigs Funcs FKs Partn @@ -155,7 +152,7 @@ Uptime 90000 1 1 Prepared Statements | No Prepared statement count | 0 # InnoDB ##################################################### - Version | 0 + Version | default Buffer Pool Size | 8.0M Buffer Pool Fill | 3% Buffer Pool Dirty | 0% @@ -163,19 +160,19 @@ Uptime 90000 1 1 Page Size | 16k Log File Size | 2 * 5.0M = 10.0M Log Buffer Size | 1M - Flush Method | 0 + Flush Method | Flush Log At Commit | 1 XA Support | ON Checksums | ON Doublewrite | ON - R/W I/O Threads | 0 0 - I/O Capacity | 0 + R/W I/O Threads | + I/O Capacity | Thread Concurrency | 8 Concurrency Tickets | 500 Commit Concurrency | 0 Txn Isolation Level | REPEATABLE-READ - Adaptive Flushing | 0 - Adaptive Checkpoint | 0 + Adaptive Flushing | + Adaptive Checkpoint | Checkpoint Age | 0 InnoDB Queue | 0 queries inside InnoDB, 0 queries in queue Oldest Transaction | 0 Seconds @@ -209,16 +206,16 @@ Uptime 90000 1 1 binlog_ignore_db | # Noteworthy Variables ####################################### Auto-Inc Incr/Offset | 1/1 - default_storage_engine | 0 + default_storage_engine | flush_time | 0 - init_connect | 0 - init_file | 0 - sql_mode | 0 + init_connect | + init_file | + sql_mode | join_buffer_size | 128k sort_buffer_size | 2M read_buffer_size | 128k read_rnd_buffer_size | 256k - bulk_insert_buffer | 0 + bulk_insert_buffer | 0.00 max_heap_table_size | 16M tmp_table_size | 16M max_allowed_packet | 16M diff --git a/t/pt-summary/format_vmstat.sh b/t/pt-summary/format_vmstat.sh deleted file mode 100644 index 7f2f553b..00000000 --- a/t/pt-summary/format_vmstat.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash - -TESTS=1 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/in -procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ - r b swpd free buff cache si so bi bo in cs us sy id wa st - 0 0 68 288220 372588 13534140 0 0 24 138 1 1 4 1 94 1 0 - 1 0 68 288080 372588 13534184 0 0 0 187 721 943 3 0 96 0 0 - 0 0 68 287708 372588 13534276 0 0 0 1058 747 992 8 3 89 0 0 - 1 0 68 287468 372588 13534340 0 0 0 1058 552 856 15 2 84 0 0 - 1 0 68 287460 372588 13534388 0 0 0 322 859 1014 10 3 87 0 0 - 0 0 68 287460 372588 13534444 0 0 0 214 612 729 10 3 88 0 0 - 0 0 68 287460 372588 13534484 0 0 0 309 553 741 0 0 99 0 0 - 1 0 68 287460 372588 13534532 0 0 2 197 605 727 2 1 97 0 0 - 0 0 68 287344 372588 13534596 0 0 0 1037 485 626 0 0 99 0 0 - 0 0 68 287220 372588 13534656 0 0 0 235 875 1004 0 0 99 0 0 -EOF - -cat < $TMPDIR/expected - procs ---swap-- -----io---- ---system---- --------cpu-------- - r b si so bi bo ir cs us sy il wa st - 0 0 0 0 25 150 1 1 4 1 94 1 0 - 1 0 0 0 0 175 700 900 3 0 96 0 0 - 0 0 0 0 0 1000 700 1000 8 3 89 0 0 - 1 0 0 0 0 1000 600 900 15 2 84 0 0 - 1 0 0 0 0 300 900 1000 10 3 87 0 0 - 0 0 0 0 0 225 600 700 10 3 88 0 0 - 0 0 0 0 0 300 600 700 0 0 99 0 0 - 1 0 0 0 2 200 600 700 2 1 97 0 0 - 0 0 0 0 0 1000 500 600 0 0 99 0 0 - 0 0 0 0 0 225 900 1000 0 0 99 0 0 -EOF - -format_vmstat $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_dmidecode_mem_devices.sh b/t/pt-summary/parse_dmidecode_mem_devices.sh deleted file mode 100644 index c424a10a..00000000 --- a/t/pt-summary/parse_dmidecode_mem_devices.sh +++ /dev/null @@ -1,104 +0,0 @@ -#!/bin/bash - -TESTS=5 -TMPDIR=$TEST_TMPDIR - -TEST_NAME="dmidecode-001.txt" -cat < $TMPDIR/expected - Locator Size Speed Form Factor Type Type Detail - ========= ======== ================= ============= ============= =========== - SODIMM0 2048 MB 800 MHz SODIMM Other Synchronous - SODIMM1 2048 MB 800 MHz SODIMM Other Synchronous -EOF -parse_dmidecode_mem_devices samples/dmidecode-001.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="dmidecode-002.tx" -cat < $TMPDIR/expected - Locator Size Speed Form Factor Type Type Detail - ========= ======== ================= ============= ============= =========== - DIMM1 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous - DIMM2 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous - DIMM3 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous - DIMM4 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous - DIMM5 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous - DIMM6 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous - DIMM7 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous - DIMM8 2048 MB 667 MHz (1.5 ns) {OUT OF SPEC} {OUT OF SPEC} Synchronous -EOF -parse_dmidecode_mem_devices samples/dmidecode-002.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="dmidecode-003.txt" -cat < $TMPDIR/expected - Locator Size Speed Form Factor Type Type Detail - ========= ======== ================= ============= ============= =========== - 1024 kB 33 MHz Other Flash Non-Volatile - D5 4096 MB 1066 MHz DIMM Other Other - D8 4096 MB 1066 MHz DIMM Other Other - D0 {EMPTY} 1333 MHz DIMM Other Other - D0 {EMPTY} 1333 MHz DIMM Other Other - D1 {EMPTY} 1333 MHz DIMM Other Other - D1 {EMPTY} 1333 MHz DIMM Other Other - D2 {EMPTY} 1333 MHz DIMM Other Other - D2 {EMPTY} 1333 MHz DIMM Other Other - D3 {EMPTY} 1333 MHz DIMM Other Other - D3 {EMPTY} 1333 MHz DIMM Other Other - D4 {EMPTY} 1333 MHz DIMM Other Other - D4 {EMPTY} 1333 MHz DIMM Other Other - D5 {EMPTY} 1333 MHz DIMM Other Other - D6 {EMPTY} 1333 MHz DIMM Other Other - D6 {EMPTY} 1333 MHz DIMM Other Other - D7 {EMPTY} 1333 MHz DIMM Other Other - D7 {EMPTY} 1333 MHz DIMM Other Other - D8 {EMPTY} 1333 MHz DIMM Other Other -EOF -parse_dmidecode_mem_devices samples/dmidecode-003.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="dmidecode-004.txt" -cat < $TMPDIR/expected - Locator Size Speed Form Factor Type Type Detail - ========= ======== ================= ============= ============= =========== - DIMM_A2 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_A3 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_A5 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_A6 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_B2 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_B3 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_B5 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_B6 4096 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Synchronous - DIMM_A1 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous - DIMM_A4 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous - DIMM_B1 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous - DIMM_B4 {EMPTY} Unknown DIMM {OUT OF SPEC} Synchronous -EOF -parse_dmidecode_mem_devices samples/dmidecode-004.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="dmidecode-005.txt" -cat < $TMPDIR/expected - Locator Size Speed Form Factor Type Type Detail - ========= ======== ================= ============= ============= =========== - P1-DIMM1A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other - P1-DIMM2A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other - P1-DIMM3A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other - P2-DIMM1A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other - P2-DIMM2A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other - P2-DIMM3A 16384 MB 1066 MHz (0.9 ns) DIMM {OUT OF SPEC} Other - 4096 kB 33 MHz (30.3 ns) Other Flash Non-Volatile - P1-DIMM1B {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P1-DIMM1C {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P1-DIMM2B {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P1-DIMM2C {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P1-DIMM3B {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P1-DIMM3C {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P2-DIMM1B {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P2-DIMM1C {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P2-DIMM2B {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P2-DIMM2C {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P2-DIMM3B {EMPTY} Unknown DIMM {OUT OF SPEC} Other - P2-DIMM3C {EMPTY} Unknown DIMM {OUT OF SPEC} Other -EOF -parse_dmidecode_mem_devices samples/dmidecode-005.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_ethernet_controller_lspci.sh b/t/pt-summary/parse_ethernet_controller_lspci.sh deleted file mode 100644 index 123c854d..00000000 --- a/t/pt-summary/parse_ethernet_controller_lspci.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -TESTS=1 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/expected - Controller | Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet (rev 12) - Controller | Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet (rev 12) -EOF -parse_ethernet_controller_lspci samples/lspci-001.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_fdisk.sh b/t/pt-summary/parse_fdisk.sh deleted file mode 100644 index 5797965a..00000000 --- a/t/pt-summary/parse_fdisk.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -TESTS=1 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/expected -Device Type Start End Size -============ ==== ========== ========== ================== -/dev/dm-0 Disk 494609104896 -/dev/dm-1 Disk 5284823040 -/dev/sda Disk 500107862016 -/dev/sda1 Part 1 26 205632000 -/dev/sda2 Part 26 60801 499891392000 -EOF -parse_fdisk samples/fdisk-01.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_filesystems.sh b/t/pt-summary/parse_filesystems.sh deleted file mode 100644 index 7f105d6a..00000000 --- a/t/pt-summary/parse_filesystems.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash - -TESTS=4 -TMPDIR=$TEST_TMPDIR - -TEST_NAME="df-mount-003.txt Linux" -cat < $TMPDIR/expected - Filesystem Size Used Type Opts Mountpoint - /dev/sda1 99M 13% ext3 rw /boot - /dev/sda2 540G 89% ext3 rw / - tmpfs 48G 0% tmpfs rw /dev/shm -EOF -parse_filesystems samples/df-mount-003.txt Linux > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="df-mount-004.txt Linux" -cat < $TMPDIR/expected - Filesystem Size Used Type Opts Mountpoint - /dev/sda1 9.9G 34% ext3 rw / - /dev/sdb 414G 1% ext3 rw /mnt - none 7.6G 0% devpts rw,gid=5,mode=620 /dev/shm - none 7.6G 0% tmpfs rw /dev/shm - none 7.6G 0% binfmt_misc rw /dev/shm - none 7.6G 0% proc rw /dev/shm - none 7.6G 0% sysfs rw /dev/shm -EOF -parse_filesystems samples/df-mount-004.txt Linux > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="df-mount-005.txt Linux" -cat < $TMPDIR/expected - Filesystem Size Used Type Opts Mountpoint - /dev/cciss/c0d0p1 99M 24% ext3 rw /boot - /dev/mapper/VolGroup00-LogVol00 194G 58% ext3 rw / - /dev/mapper/VolGroup00-mysql_log 191G 4% ext3 rw /data/mysql-log - /dev/mapper/VolGroup01-mysql_data 1008G 44% ext3 rw,noatime /data/mysql-data - tmpfs 48G 0% tmpfs rw /dev/shm -EOF -parse_filesystems samples/df-mount-005.txt Linux > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="df-mount-006.txt FreeBSD" -cat < $TMPDIR/expected - Filesystem Size Used Type Opts Mountpoint - /dev/ad0s1a 496M 32% ufs local / - /dev/ad0s1d 1.1G 1% ufs local, soft-updates /var - /dev/ad0s1e 496M 0% ufs local, soft-updates /tmp - /dev/ad0s1f 17G 9% ufs local, soft-updates /usr - devfs 1.0K 100% devfs local /dev -EOF -parse_filesystems samples/df-mount-006.txt FreeBSD > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_free_minus_b.sh b/t/pt-summary/parse_free_minus_b.sh deleted file mode 100644 index 18b02912..00000000 --- a/t/pt-summary/parse_free_minus_b.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/bash - -TESTS=1 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/expected - Total | 3.89G - Free | 1.42G - Used | physical = 2.47G, swap = 0.00k, virtual = 2.47G - Buffers | 131.84M - Caches | 1.92G - Dirty | 60 kB -EOF - -cat < $TMPDIR/in - total used free shared buffers cached -Mem: 4182048768 2653696000 1528352768 0 138240000 2060787712 --/+ buffers/cache: 454668288 3727380480 -Swap: 5284814848 0 5284814848 -MemTotal: 4084040 kB -MemFree: 2390720 kB -Buffers: 121868 kB -Cached: 1155116 kB -SwapCached: 0 kB -Active: 579712 kB -Inactive: 941436 kB -Active(anon): 244720 kB -Inactive(anon): 40572 kB -Active(file): 334992 kB -Inactive(file): 900864 kB -Unevictable: 48 kB -Mlocked: 48 kB -HighTotal: 3251848 kB -HighFree: 1837740 kB -LowTotal: 832192 kB -LowFree: 552980 kB -SwapTotal: 5144572 kB -SwapFree: 5144572 kB -Dirty: 60 kB -Writeback: 0 kB -AnonPages: 244264 kB -Mapped: 84452 kB -Shmem: 41140 kB -Slab: 133548 kB -SReclaimable: 107672 kB -SUnreclaim: 25876 kB -KernelStack: 2264 kB -PageTables: 7740 kB -NFS_Unstable: 0 kB -Bounce: 0 kB -WritebackTmp: 0 kB -CommitLimit: 7186592 kB -Committed_AS: 1192140 kB -VmallocTotal: 122880 kB -VmallocUsed: 32276 kB -VmallocChunk: 65120 kB -HardwareCorrupted: 0 kB -HugePages_Total: 0 -HugePages_Free: 0 -HugePages_Rsvd: 0 -HugePages_Surp: 0 -Hugepagesize: 2048 kB -DirectMap4k: 10232 kB -DirectMap2M: 897024 kB -EOF -parse_free_minus_b $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_fusionmpt_lsiutil.sh b/t/pt-summary/parse_fusionmpt_lsiutil.sh deleted file mode 100644 index 3900cc35..00000000 --- a/t/pt-summary/parse_fusionmpt_lsiutil.sh +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/bash - -TESTS=3 -TMPDIR=$TEST_TMPDIR - -TEST_NAME="lsiutil-001.txt" -cat < $TMPDIR/expected - - /proc/mpt/ioc0 LSI Logic SAS1068E B3 MPT 105 Firmware 00192f00 IOC 0 - B___T___L Type Vendor Product Rev SASAddress PhyNum - 0 0 0 Disk Dell VIRTUAL DISK 1028 - 0 2 0 Disk Dell VIRTUAL DISK 1028 - 0 8 0 EnclServ DP BACKPLANE 1.05 510240805f4feb00 8 - Hidden RAID Devices: - B___T Device Vendor Product Rev SASAddress PhyNum - 0 1 PhysDisk 0 SEAGATE ST373455SS S52A 5000c50012a8ac61 1 - 0 9 PhysDisk 1 SEAGATE ST373455SS S52A 5000c50012a8a24d 0 - 0 3 PhysDisk 2 SEAGATE ST3146855SS S52A 5000c500130fcaed 3 - 0 10 PhysDisk 3 SEAGATE ST3146855SS S52A 5000c500131093f5 2 -EOF -parse_fusionmpt_lsiutil samples/lsiutil-001.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="lsiutil-002.txt" -cat < $TMPDIR/expected - - /proc/mpt/ioc0 LSI Logic SAS1064E B3 MPT 105 Firmware 011e0000 IOC 0 - B___T___L Type Vendor Product Rev SASAddress PhyNum - 0 1 0 Disk LSILOGIC Logical Volume 3000 - Hidden RAID Devices: - B___T Device Vendor Product Rev SASAddress PhyNum - 0 2 PhysDisk 0 IBM-ESXS ST9300603SS F B536 5000c5001d784329 1 - 0 3 PhysDisk 1 IBM-ESXS MBD2300RC SB17 500000e113c17152 0 -EOF -parse_fusionmpt_lsiutil samples/lsiutil-002.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="lsiutil-003.txt" -cat < $TMPDIR/expected - - /proc/mpt/ioc0 LSI Logic SAS1064E B3 MPT 105 Firmware 011e0000 IOC 0 - B___T___L Type Vendor Product Rev SASAddress PhyNum - 0 1 0 Disk LSILOGIC Logical Volume 3000 - Hidden RAID Devices: - B___T Device Vendor Product Rev SASAddress PhyNum - 0 2 PhysDisk 0 IBM-ESXS MBD2300RC SB17 500000e113c00ed2 1 - 0 3 PhysDisk 1 IBM-ESXS MBD2300RC SB17 500000e113c17ee2 0 -EOF -parse_fusionmpt_lsiutil samples/lsiutil-003.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_hpacucli.sh b/t/pt-summary/parse_hpacucli.sh deleted file mode 100644 index ee4dd078..00000000 --- a/t/pt-summary/parse_hpacucli.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -TESTS=1 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/expected - logicaldrive 1 (136.7 GB, RAID 1, OK) - physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK) - physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK) -EOF - -cat < $TMPDIR/in - -Smart Array P400i in Slot 0 (Embedded) (sn: PH73MU7325 ) - - array A (SAS, Unused Space: 0 MB) - - - logicaldrive 1 (136.7 GB, RAID 1, OK) - - physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK) - physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK) - -EOF -parse_hpacucli $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_ip_s_link.sh b/t/pt-summary/parse_ip_s_link.sh deleted file mode 100644 index 68b7ad45..00000000 --- a/t/pt-summary/parse_ip_s_link.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash - -TESTS=2 -TMPDIR=$TEST_TMPDIR - -TEST_NAME="ip-s-link-001.txt" -cat < $TMPDIR/expected - interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors - ========= ========= ========== ========== ========== ========== ========== - lo 3000000 25000 0 3000000 25000 0 - eth0 175000000 30000000 0 125000000 900000 0 - wlan0 50000000 80000 0 20000000 90000 0 - vboxnet0 0 0 0 0 0 0 -EOF -parse_ip_s_link samples/ip-s-link-001.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="ip-s-link-002.txt" -cat < $TMPDIR/expected - interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors - ========= ========= ========== ========== ========== ========== ========== - lo 3500000000 350000000 0 3500000000 350000000 0 - eth0 1750000000 1250000000 0 3500000000 700000000 0 - eth1 1250000000 60000000 0 900000000 50000000 0 - sit0 0 0 0 0 0 0 -EOF -parse_ip_s_link samples/ip-s-link-002.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_lsi_megaraid.sh b/t/pt-summary/parse_lsi_megaraid.sh deleted file mode 100644 index 14bb299a..00000000 --- a/t/pt-summary/parse_lsi_megaraid.sh +++ /dev/null @@ -1,696 +0,0 @@ -#!/bin/bash - -TESTS=6 -TMPDIR=$TEST_TMPDIR - -# ############################################################################ -cat < $TMPDIR/expected - BBU | 100% Charged, Temperature 18C, isSOHGood=Yes -EOF - -cat < $TMPDIR/in -BBU status for Adapter: 0 - -BatteryType: BBU -Voltage: 4072 mV -Current: 0 mA -Temperature: 18 C -Firmware Status: 00000000 - -Battery state: - -GasGuageStatus: - Fully Discharged : No - Fully Charged : Yes - Discharging : Yes - Initialized : Yes - Remaining Time Alarm : No - Remaining Capacity Alarm: No - Discharge Terminated : No - Over Temperature : No - Charging Terminated : No - Over Charged : No - -Relative State of Charge: 100 % -Charger Status: Complete -Remaining Capacity: 867 mAh -Full Charge Capacity: 867 mAh -isSOHGood: Yes - -Exit Code: 0x00 -EOF -parse_lsi_megaraid_bbu_status $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -# ############################################################################ -cat < $TMPDIR/expected - - PhysiclDev Type State Errors Vendor Model Size - ========== ==== ======= ====== ======= ============ =========== - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB -EOF - -cat < $TMPDIR/in - -Adapter #0 - -Enclosure Device ID: 32 -Slot Number: 0 -Device Id: 0 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079f8cf9 -SAS Address(1): 0x0 -Connected Port Number: 0(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2DZ33 -Foreign State: None -Media Type: Hard Disk Device - -Enclosure Device ID: 32 -Slot Number: 1 -Device Id: 1 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079f5c35 -SAS Address(1): 0x0 -Connected Port Number: 1(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2D9RH -Foreign State: None -Media Type: Hard Disk Device - -Enclosure Device ID: 32 -Slot Number: 2 -Device Id: 2 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079fc0c9 -SAS Address(1): 0x0 -Connected Port Number: 2(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2DPST -Foreign State: None -Media Type: Hard Disk Device - -Enclosure Device ID: 32 -Slot Number: 3 -Device Id: 3 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079dc339 -SAS Address(1): 0x0 -Connected Port Number: 3(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2CKD5 -Foreign State: None -Media Type: Hard Disk Device - - -Exit Code: 0x00 -EOF -parse_lsi_megaraid_devices $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - - -# ############################################################################ -cat < $TMPDIR/expected - - PhysiclDev Type State Errors Vendor Model Size - ========== ==== ======= ====== ======= ============ =========== - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB - Hard Disk SAS Online 0/0/0 SEAGATE ST373455SS 70007MB -EOF - -cat < $TMPDIR/in -[root@pc-db1 ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL - -Adapter #0 - -Number of Virtual Disks: 2 -Virtual Disk: 0 (Target Id: 0) -Name: -RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 -Size:69376MB -State: Optimal -Stripe Size: 64kB -Number Of Drives:2 -Span Depth:1 -Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Access Policy: Read/Write -Disk Cache Policy: Disk's Default -Number of Spans: 1 -Span: 0 - Number of PDs: 2 -PD: 0 Information -Enclosure Device ID: 32 -Slot Number: 0 -Device Id: 0 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079f8cf9 -SAS Address(1): 0x0 -Connected Port Number: 0(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2DZ33 -Foreign State: None -Media Type: Hard Disk Device - -PD: 1 Information -Enclosure Device ID: 32 -Slot Number: 1 -Device Id: 1 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079f5c35 -SAS Address(1): 0x0 -Connected Port Number: 1(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2D9RH -Foreign State: None -Media Type: Hard Disk Device - -Virtual Disk: 1 (Target Id: 1) -Name: -RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 -Size:69376MB -State: Optimal -Stripe Size: 64kB -Number Of Drives:2 -Span Depth:1 -Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Access Policy: Read/Write -Disk Cache Policy: Disk's Default -Number of Spans: 1 -Span: 0 - Number of PDs: 2 -PD: 0 Information -Enclosure Device ID: 32 -Slot Number: 2 -Device Id: 2 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079fc0c9 -SAS Address(1): 0x0 -Connected Port Number: 2(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2DPST -Foreign State: None -Media Type: Hard Disk Device - -PD: 1 Information -Enclosure Device ID: 32 -Slot Number: 3 -Device Id: 3 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079dc339 -SAS Address(1): 0x0 -Connected Port Number: 3(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2CKD5 -Foreign State: None -Media Type: Hard Disk Device - - -Exit Code: 0x00 -EOF -parse_lsi_megaraid_devices $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -# ############################################################################ -cat < $TMPDIR/expected - - VirtualDev Size RAID Level Disks SpnDpth Stripe Status Cache - ========== ========= ========== ===== ======= ====== ======= ========= - 0(no name) 69376MB 1 (1-0-0) 2 1-1 64kB Optimal WB, no RA - 1(no name) 69376MB 1 (1-0-0) 2 1-1 64kB Optimal WB, no RA -EOF - -cat < $TMPDIR/in -[root@pc-db1 ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL - -Adapter #0 - -Number of Virtual Disks: 2 -Virtual Disk: 0 (Target Id: 0) -Name: -RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 -Size:69376MB -State: Optimal -Stripe Size: 64kB -Number Of Drives:2 -Span Depth:1 -Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Access Policy: Read/Write -Disk Cache Policy: Disk's Default -Number of Spans: 1 -Span: 0 - Number of PDs: 2 -PD: 0 Information -Enclosure Device ID: 32 -Slot Number: 0 -Device Id: 0 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079f8cf9 -SAS Address(1): 0x0 -Connected Port Number: 0(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2DZ33 -Foreign State: None -Media Type: Hard Disk Device - -PD: 1 Information -Enclosure Device ID: 32 -Slot Number: 1 -Device Id: 1 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079f5c35 -SAS Address(1): 0x0 -Connected Port Number: 1(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2D9RH -Foreign State: None -Media Type: Hard Disk Device - -Virtual Disk: 1 (Target Id: 1) -Name: -RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 -Size:69376MB -State: Optimal -Stripe Size: 64kB -Number Of Drives:2 -Span Depth:1 -Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Access Policy: Read/Write -Disk Cache Policy: Disk's Default -Number of Spans: 1 -Span: 0 - Number of PDs: 2 -PD: 0 Information -Enclosure Device ID: 32 -Slot Number: 2 -Device Id: 2 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079fc0c9 -SAS Address(1): 0x0 -Connected Port Number: 2(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2DPST -Foreign State: None -Media Type: Hard Disk Device - -PD: 1 Information -Enclosure Device ID: 32 -Slot Number: 3 -Device Id: 3 -Sequence Number: 2 -Media Error Count: 0 -Other Error Count: 0 -Predictive Failure Count: 0 -Last Predictive Failure Event Seq Number: 0 -PD Type: SAS -Raw Size: 70007MB [0x88bb93a Sectors] -Non Coerced Size: 69495MB [0x87bb93a Sectors] -Coerced Size: 69376MB [0x8780000 Sectors] -Firmware state: Online -SAS Address(0): 0x5000c500079dc339 -SAS Address(1): 0x0 -Connected Port Number: 3(path0) -Inquiry Data: SEAGATE ST373455SS S5273LQ2CKD5 -Foreign State: None -Media Type: Hard Disk Device - - -Exit Code: 0x00 -EOF -parse_lsi_megaraid_virtual_devices $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -# ############################################################################ -cat < $TMPDIR/expected - - VirtualDev Size RAID Level Disks SpnDpth Stripe Status Cache - ========== ========= ========== ===== ======= ====== ======= ========= - 0(no name) 69376MB 1 (1-0-0) 2 1- 64kB Optimal WB, no RA - 1(no name) 69376MB 1 (1-0-0) 2 1- 64kB Optimal WB, no RA -EOF - -cat < $TMPDIR/in -[root@pc-db1 ~]# /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aAll - - -Adapter 0 -- Virtual Drive Information: -Virtual Disk: 0 (Target Id: 0) -Name: -RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 -Size:69376MB -State: Optimal -Stripe Size: 64kB -Number Of Drives:2 -Span Depth:1 -Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Access Policy: Read/Write -Disk Cache Policy: Disk's Default -Virtual Disk: 1 (Target Id: 1) -Name: -RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0 -Size:69376MB -State: Optimal -Stripe Size: 64kB -Number Of Drives:2 -Span Depth:1 -Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU -Access Policy: Read/Write -Disk Cache Policy: Disk's Default - -Exit Code: 0x00 -EOF -parse_lsi_megaraid_virtual_devices $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - - -# ############################################################################ -cat < $TMPDIR/expected - Model | PERC 6/i Integrated, PCIE interface, 8 ports - Cache | 256MB Memory, BBU Present -EOF - -cat < $TMPDIR/in -[root@pc-db1]# /opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aALL - -Adapter #0 - -============================================================================== - Versions - ================ -Product Name : PERC 6/i Integrated -Serial No : 1122334455667788 -FW Package Build: 6.0.1-0080 - - Mfg. Data - ================ -Mfg. Date : 06/08/07 -Rework Date : 06/08/07 -Revision No : -Battery FRU : N/A - - Image Versions In Flash: - ================ -FW Version : 1.11.52-0349 -BIOS Version : NT13-2 -WebBIOS Version : 1.1-32-e_11-Rel -Ctrl-R Version : 1.01-010B -Boot Block Version : 1.00.00.01-0008 - - Pending Images In Flash - ================ -None - - PCI Info - ================ -Vendor Id : 1000 -Device Id : 0060 -SubVendorId : 1028 -SubDeviceId : 1f0c - -Host Interface : PCIE - -Number of Frontend Port: 0 -Device Interface : PCIE - -Number of Backend Port: 8 -Port : Address -0 5000c500079f8cf9 -1 5000c500079f5c35 -2 5000c500079fc0c9 -3 5000c500079dc339 -4 0000000000000000 -5 0000000000000000 -6 0000000000000000 -7 0000000000000000 - - HW Configuration - ================ -SAS Address : 5001e4f021048f00 -BBU : Present -Alarm : Absent -NVRAM : Present -Serial Debugger : Present -Memory : Present -Flash : Present -Memory Size : 256MB - - Settings - ================ -Current Time : 20:31:29 5/13, 2010 -Predictive Fail Poll Interval : 300sec -Interrupt Throttle Active Count : 16 -Interrupt Throttle Completion : 50us -Rebuild Rate : 30% -PR Rate : 30% -Resynch Rate : 30% -Check Consistency Rate : 30% -Reconstruction Rate : 30% -Cache Flush Interval : 4s -Max Drives to Spinup at One Time : 2 -Delay Among Spinup Groups : 12s -Physical Drive Coercion Mode : 128MB -Cluster Mode : Disabled -Alarm : Disabled -Auto Rebuild : Enabled -Battery Warning : Enabled -Ecc Bucket Size : 15 -Ecc Bucket Leak Rate : 1440 Minutes -Restore HotSpare on Insertion : Disabled -Expose Enclosure Devices : Disabled -Maintain PD Fail History : Disabled -Host Request Reordering : Enabled -Auto Detect BackPlane Enabled : SGPIO/i2c SEP -Load Balance Mode : Auto -Any Offline VD Cache Preserved : No - - Capabilities - ================ -RAID Level Supported : RAID0, RAID1, RAID5, RAID6, RAID10, RAID50, RAID60 -Supported Drives : SAS, SATA - -Allowed Mixing: - -Mix In Enclosure Allowed - - Status - ================ -ECC Bucket Count : 0 - - Limitations - ================ -Max Arms Per VD : 32 -Max Spans Per VD : 8 -Max Arrays : 128 -Max Number of VDs : 64 -Max Parallel Commands : 1008 -Max SGE Count : 80 -Max Data Transfer Size : 8192 sectors -Max Strips PerIO : 42 -Min Stripe Size : 8kB -Max Stripe Size : 1024kB - - Device Present - ================ -Virtual Drives : 2 - Degraded : 0 - Offline : 0 -Physical Devices : 5 - Disks : 4 - Critical Disks : 0 - Failed Disks : 0 - - Supported Adapter Operations - ================ -Rebuild Rate : Yes -CC Rate : Yes -BGI Rate : Yes -Reconstruct Rate : Yes -Patrol Read Rate : Yes -Alarm Control : Yes -Cluster Support : No -BBU : Yes -Spanning : Yes -Dedicated Hot Spare : Yes -Revertible Hot Spares : No -Foreign Config Import : Yes -Self Diagnostic : Yes -Allow Mixed Redundancy on Array : No -Global Hot Spares : Yes -Deny SCSI Passthrough : No -Deny SMP Passthrough : No -Deny STP Passthrough : No - - Supported VD Operations - ================ -Read Policy : Yes -Write Policy : Yes -IO Policy : Yes -Access Policy : Yes -Disk Cache Policy : Yes -Reconstruction : Yes -Deny Locate : No -Deny CC : No - - Supported PD Operations - ================ -Force Online : Yes -Force Offline : Yes -Force Rebuild : Yes -Deny Force Failed : No -Deny Force Good/Bad : No -Deny Missing Replace : No -Deny Clear : No -Deny Locate : No -Disable Copyback : No -Enable Copyback on SMART : No -Enable Copyback to SSD on SMART error : No - - Error Counters - ================ -Memory Correctable Errors : 0 -Memory Uncorrectable Errors : 0 - - Cluster Information - ================ -Cluster Permitted : No -Cluster Active : No - - Default Settings - ================ -Phy Polarity : 0 -Phy PolaritySplit : 0 -Background Rate : 30 -Stripe Size : 64kB -Flush Time : 4 seconds -Write Policy : WB -Read Policy : None -Cache When BBU Bad : Disabled -Cached IO : No -SMART Mode : Mode 6 -Alarm Disable : No -Coercion Mode : 128MB -ZCR Config : Unknown -Dirty LED Shows Drive Activity : No -BIOS Continue on Error : No -Spin Down Mode : None -Allowed Device Type : SAS/SATA Mix -Allow Mix In Enclosure : Yes -Allow HDD SAS/SATA Mix In VD : No -Allow SSD SAS/SATA Mix In VD : No -Allow HDD/SAS Mix In VD : No -Allow SATA In Cluster : No -Max Chained Enclosures : 1 -Disable Ctrl-R : No -Enable Web BIOS : No -Direct PD Mapping : Yes -BIOS Enumerate VDs : Yes -Restore Hot Spare on Insertion : No -Expose Enclosure Devices : No -Maintain PD Fail History : No -Disable Puncturing : No -Zero Based Enclosure Enumeration : Yes -PreBoot CLI Enabled : No -LED Show Drive Activity : No -Cluster Disable : Yes -SAS Disable : No -Auto Detect BackPlane Enable : SGPIO/i2c SEP -Delay during POST : 0 - -Exit Code: 0x00 -EOF -parse_lsi_megaraid_adapter_info $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_netstat.sh b/t/pt-summary/parse_netstat.sh deleted file mode 100644 index 5086d23e..00000000 --- a/t/pt-summary/parse_netstat.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/bash - -TESTS=2 -TMPDIR=$TEST_TMPDIR - -TEST_NAME="netstat-001.txt" -cat < $TMPDIR/expected - Connections from remote IP addresses - 192.168.243.72 1 - 192.168.243.81 2 - Connections to local IP addresses - 192.168.243.71 3 - Connections to top 10 local ports - 3306 3 - States of connections - ESTABLISHED 4 - LISTEN 15 -EOF -parse_netstat samples/netstat-001.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="netstat-003.txt" -cat < $TMPDIR/expected - Connections from remote IP addresses - 10.8.0.12 6 - 10.8.0.14 2 - 10.8.0.65 1 - 10.8.0.76 25 - 10.8.0.77 1 - 192.168.5.77 2 - Connections to local IP addresses - 10.8.0.75 35 - Connections to top 10 local ports - 22 1 - 3306 25 - 37570 1 - 51071 1 - 51072 1 - 51073 1 - 51074 1 - 52300 1 - 60757 1 - States of connections - ESTABLISHED 30 - LISTEN 3 - TIME_WAIT 3 -EOF -parse_netstat samples/netstat-003.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_proc_cpuinfo.sh b/t/pt-summary/parse_proc_cpuinfo.sh deleted file mode 100644 index cdc800f7..00000000 --- a/t/pt-summary/parse_proc_cpuinfo.sh +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/bash - -TESTS=1 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/expected - Processors | physical = 1, cores = 2, virtual = 2, hyperthreading = no - Speeds | 2x1300.000 - Models | 2xGenuine Intel(R) CPU U7300 @ 1.30GHz - Caches | 2x3072 KB -EOF - -cat < $TMPDIR/in -processor : 0 -vendor_id : GenuineIntel -cpu family : 6 -model : 23 -model name : Genuine Intel(R) CPU U7300 @ 1.30GHz -stepping : 10 -cpu MHz : 1300.000 -cache size : 3072 KB -physical id : 0 -siblings : 2 -core id : 0 -cpu cores : 2 -apicid : 0 -initial apicid : 0 -fdiv_bug : no -hlt_bug : no -f00f_bug : no -coma_bug : no -fpu : yes -fpu_exception : yes -cpuid level : 13 -wp : yes -flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority -bogomips : 2678.10 -clflush size : 64 -cache_alignment : 64 -address sizes : 36 bits physical, 48 bits virtual -power management: - -processor : 1 -vendor_id : GenuineIntel -cpu family : 6 -model : 23 -model name : Genuine Intel(R) CPU U7300 @ 1.30GHz -stepping : 10 -cpu MHz : 1300.000 -cache size : 3072 KB -physical id : 0 -siblings : 2 -core id : 1 -cpu cores : 2 -apicid : 1 -initial apicid : 1 -fdiv_bug : no -hlt_bug : no -f00f_bug : no -coma_bug : no -fpu : yes -fpu_exception : yes -cpuid level : 13 -wp : yes -flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority -bogomips : 2677.92 -clflush size : 64 -cache_alignment : 64 -address sizes : 36 bits physical, 48 bits virtual -power management: - -EOF -parse_proc_cpuinfo $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_raid_controller_dmesg.sh b/t/pt-summary/parse_raid_controller_dmesg.sh deleted file mode 100644 index 7bc90a69..00000000 --- a/t/pt-summary/parse_raid_controller_dmesg.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash - -TESTS=4 -TMPDIR=$TEST_TMPDIR - -TEST_NAME="dmesg-001.txt" -cat < $TMPDIR/expected -Fusion-MPT SAS -EOF -parse_raid_controller_dmesg samples/dmesg-001.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="dmesg-002.txt" -cat < $TMPDIR/expected -AACRAID -EOF -parse_raid_controller_dmesg samples/dmesg-002.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="dmesg-003.txt" -cat < $TMPDIR/expected -LSI Logic MegaRAID SAS -EOF -parse_raid_controller_dmesg samples/dmesg-003.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="dmesg-004.txt" -cat < $TMPDIR/expected -AACRAID -EOF -parse_raid_controller_dmesg samples/dmesg-004.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_raid_controller_lspci.sh b/t/pt-summary/parse_raid_controller_lspci.sh deleted file mode 100644 index d9b9cf08..00000000 --- a/t/pt-summary/parse_raid_controller_lspci.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash - -TESTS=5 -TMPDIR=$TEST_TMPDIR - -TEST_NAME="lspci-001.txt" -cat < $TMPDIR/expected -Fusion-MPT SAS -EOF -parse_raid_controller_lspci samples/lspci-001.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="lspci-002.txt" -cat < $TMPDIR/expected -LSI Logic Unknown -EOF -parse_raid_controller_lspci samples/lspci-002.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="lspci-003.txt" -cat < $TMPDIR/expected -AACRAID -EOF -parse_raid_controller_lspci samples/lspci-003.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="lspci-004.txt" -cat < $TMPDIR/expected -LSI Logic MegaRAID SAS -EOF -parse_raid_controller_lspci samples/lspci-004.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -TEST_NAME="lspci-006.txt" -cat < $TMPDIR/expected -HP Smart Array -EOF -parse_raid_controller_lspci samples/lspci-006.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/parse_virtualization_dmesg.sh b/t/pt-summary/parse_virtualization_dmesg.sh deleted file mode 100644 index f91ff32a..00000000 --- a/t/pt-summary/parse_virtualization_dmesg.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -TESTS=1 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/expected -Xen -EOF -parse_virtualization_dmesg samples/dmesg-006.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/samples/BSD/freebsd_001/mounted_fs b/t/pt-summary/samples/BSD/freebsd_001/mounted_fs new file mode 100644 index 00000000..cdf80945 --- /dev/null +++ b/t/pt-summary/samples/BSD/freebsd_001/mounted_fs @@ -0,0 +1,7 @@ +/dev/ad0s1a 620M 172M 398M 30% / on / (ufs, local) +/dev/ad0s1d 1.3G 1.0M 1.2G 0% /var on /var (ufs, local, soft-updates) +/dev/ad0s1e 341M 18K 313M 0% /tmp on /tmp (ufs, local, soft-updates) +/dev/ad0s1f 3.3G 976M 2.0G 32% /usr on /usr (ufs, local, soft-updates) +/dev/da0s1 3.8G 18M 3.7G 0% /mnt/usb on /mnt/usb (msdosfs, local) +devfs 1.0K 1.0K 0B 100% /dev on /dev (devfs, local, multilabel) +procfs 4.0K 4.0K 0B 100% /proc on /proc (procfs, local) diff --git a/t/pt-summary/samples/BSD/freebsd_001/notable_procs b/t/pt-summary/samples/BSD/freebsd_001/notable_procs new file mode 100644 index 00000000..12d2fbe6 --- /dev/null +++ b/t/pt-summary/samples/BSD/freebsd_001/notable_procs @@ -0,0 +1,2 @@ + PID OOM COMMAND + ? ? sshd doesn't appear to be running diff --git a/t/pt-summary/samples/BSD/freebsd_001/processes b/t/pt-summary/samples/BSD/freebsd_001/processes new file mode 100644 index 00000000..35751c73 --- /dev/null +++ b/t/pt-summary/samples/BSD/freebsd_001/processes @@ -0,0 +1,10 @@ + PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND +23318 root 1 76 0 3632K 1744K wait 0:00 0.98% sh + 447 root 1 44 0 1888K 584K select 0:00 0.00% devd + 945 root 1 44 0 4672K 2336K pause 0:00 0.00% csh + 556 root 1 44 0 3352K 1264K select 0:00 0.00% syslogd + 848 root 1 44 0 6092K 3164K select 0:00 0.00% sendmail + 859 root 1 44 0 3380K 1308K nanslp 0:00 0.00% cron + 931 root 1 44 0 3816K 1724K wait 0:00 0.00% login + 937 root 1 76 0 3352K 1096K ttyin 0:00 0.00% getty + 934 root 1 76 0 3352K 1096K ttyin 0:00 0.00% getty diff --git a/t/pt-summary/samples/BSD/freebsd_001/raid-controller b/t/pt-summary/samples/BSD/freebsd_001/raid-controller new file mode 100644 index 00000000..e69de29b diff --git a/t/pt-summary/samples/BSD/freebsd_001/summary b/t/pt-summary/samples/BSD/freebsd_001/summary new file mode 100644 index 00000000..9f9a3751 --- /dev/null +++ b/t/pt-summary/samples/BSD/freebsd_001/summary @@ -0,0 +1,10 @@ +platform FreeBSD +hostname +uptime 57 mins, 1 user, load averages: 0.16, 0.03, 0.07 +kernel 199506 +release 8.2-RELEASE +CPU_ARCH 32-bit +OS_ARCH 32-bit +virt No virtualization detected +rss 18558976 +raid_controller No RAID controller detected diff --git a/t/pt-summary/samples/BSD/freebsd_001/sysctl b/t/pt-summary/samples/BSD/freebsd_001/sysctl new file mode 100644 index 00000000..ba56dde0 --- /dev/null +++ b/t/pt-summary/samples/BSD/freebsd_001/sysctl @@ -0,0 +1,1481 @@ +kern.ostype: FreeBSD +kern.osrelease: 8.2-RELEASE +kern.osrevision: 199506 +kern.version: FreeBSD 8.2-RELEASE #0: Fri Feb 18 02:24:46 UTC 2011 + root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC + +kern.maxvnodes: 35372 +kern.maxproc: 4004 +kern.maxfiles: 8008 +kern.argmax: 262144 +kern.securelevel: -1 +kern.hostname: +kern.hostid: 837058316 +kern.clockrate: { hz = 100, tick = 10000, profhz = 1024, stathz = 128 } +kern.posix1version: 200112 +kern.ngroups: 1023 +kern.job_control: 1 +kern.saved_ids: 0 +kern.boottime: { sec = 1332482080, usec = 486249 } Fri Mar 23 05:54:40 2012 +kern.domainname: +kern.osreldate: 802000 +kern.bootfile: /boot/kernel/kernel +kern.maxfilesperproc: 7207 +kern.maxprocperuid: 3603 +kern.ipc.maxsockbuf: 262144 +kern.ipc.sockbuf_waste_factor: 8 +kern.ipc.somaxconn: 128 +kern.ipc.max_linkhdr: 16 +kern.ipc.max_protohdr: 60 +kern.ipc.max_hdr: 76 +kern.ipc.max_datalen: 124 +kern.ipc.nmbjumbo16: 2120 +kern.ipc.nmbjumbo9: 4240 +kern.ipc.nmbjumbop: 8480 +kern.ipc.nmbclusters: 16960 +kern.ipc.piperesizeallowed: 1 +kern.ipc.piperesizefail: 0 +kern.ipc.pipeallocfail: 0 +kern.ipc.pipefragretry: 0 +kern.ipc.pipekva: 20480 +kern.ipc.maxpipekva: 8564736 +kern.ipc.msgseg: 2048 +kern.ipc.msgssz: 8 +kern.ipc.msgtql: 40 +kern.ipc.msgmnb: 2048 +kern.ipc.msgmni: 40 +kern.ipc.msgmax: 16384 +kern.ipc.semaem: 16384 +kern.ipc.semvmx: 32767 +kern.ipc.semusz: 136 +kern.ipc.semume: 10 +kern.ipc.semopm: 100 +kern.ipc.semmsl: 60 +kern.ipc.semmnu: 30 +kern.ipc.semmns: 60 +kern.ipc.semmni: 10 +kern.ipc.semmap: 30 +kern.ipc.shm_allow_removed: 0 +kern.ipc.shm_use_phys: 0 +kern.ipc.shmall: 8192 +kern.ipc.shmseg: 128 +kern.ipc.shmmni: 192 +kern.ipc.shmmin: 1 +kern.ipc.shmmax: 33554432 +kern.ipc.maxsockets: 16960 +kern.ipc.numopensockets: 12 +kern.ipc.nsfbufsused: 0 +kern.ipc.nsfbufspeak: 4 +kern.ipc.nsfbufs: 4496 +kern.dummy: 0 +kern.ps_strings: 3217031152 +kern.usrstack: 3217031168 +kern.logsigexit: 1 +kern.iov_max: 1024 +kern.hostuuid: 94e57e7c-5328-4825-b960-fdf6fcf68604 +kern.cam.boot_delay: 0 +kern.cam.pmp.default_timeout: 30 +kern.cam.pmp.retry_count: 1 +kern.cam.cam_srch_hi: 0 +kern.cam.scsi_delay: 5000 +kern.cam.cd.retry_count: 4 +kern.cam.cd.changer.max_busy_seconds: 15 +kern.cam.cd.changer.min_busy_seconds: 5 +kern.cam.ada.spindown_shutdown: 1 +kern.cam.ada.ada_send_ordered: 1 +kern.cam.ada.default_timeout: 30 +kern.cam.ada.retry_count: 4 +kern.cam.da.da_send_ordered: 1 +kern.cam.da.default_timeout: 60 +kern.cam.da.retry_count: 4 +kern.cam.da.0.minimum_cmd_size: 10 +kern.dcons.poll_hz: 25 +kern.disks: da0 ad0 +kern.geom.collectstats: 1 +kern.geom.debugflags: 0 +kern.geom.label.debug: 0 +kern.geom.label.ext2fs.enable: 1 +kern.geom.label.iso9660.enable: 1 +kern.geom.label.msdosfs.enable: 1 +kern.geom.label.ntfs.enable: 1 +kern.geom.label.reiserfs.enable: 1 +kern.geom.label.ufs.enable: 1 +kern.geom.label.ufsid.enable: 1 +kern.geom.label.gptid.enable: 1 +kern.geom.label.gpt.enable: 1 +kern.elf32.fallback_brand: -1 +kern.init_shutdown_timeout: 120 +kern.init_path: /sbin/init:/sbin/oinit:/sbin/init.bak:/rescue/init:/stand/sysinstall +kern.acct_suspended: 0 +kern.acct_configured: 0 +kern.acct_chkfreq: 15 +kern.acct_resume: 4 +kern.acct_suspend: 2 +kern.cp_times: 93774 2 33529 31522 274903 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +kern.cp_time: 93774 2 33529 31522 274903 +kern.constty_wakeups_per_second: 5 +kern.consmsgbuf_size: 8192 +kern.consmute: 0 +kern.console: ttyv0,dcons,/dcons,ttyv0,ucom, +kern.openfiles: 52 +kern.kq_calloutmax: 4096 +kern.ps_arg_cache_limit: 256 +kern.stackprot: 7 +kern.randompid: 0 +kern.lastpid: 23450 +kern.ktrace.request_pool: 100 +kern.ktrace.genio_size: 4096 +kern.module_path: /boot/kernel;/boot/modules +kern.malloc_count: 267 +kern.fallback_elf_brand: -1 +kern.features.compat_freebsd7: 1 +kern.features.compat_freebsd6: 1 +kern.features.compat_freebsd5: 1 +kern.features.compat_freebsd4: 1 +kern.features.posix_sem: 1 +kern.features.posix_shm: 1 +kern.maxusers: 249 +kern.ident: GENERIC +kern.kstack_pages: 2 +kern.shutdown.kproc_shutdown_wait: 60 +kern.shutdown.poweroff_delay: 5000 +kern.sync_on_panic: 0 +kern.corefile: %N.core +kern.nodump_coredump: 0 +kern.coredump: 1 +kern.sugid_coredump: 0 +kern.sigqueue.alloc_fail: 0 +kern.sigqueue.overflow: 0 +kern.sigqueue.preallocate: 1024 +kern.sigqueue.max_pending_per_proc: 128 +kern.forcesigexit: 1 +kern.fscale: 2048 +kern.timecounter.tick: 1 +kern.timecounter.choice: TSC(800) ACPI-safe(850) i8254(0) dummy(-1000000) +kern.timecounter.hardware: ACPI-safe +kern.timecounter.stepwarnings: 0 +kern.timecounter.tc.i8254.mask: 4294967295 +kern.timecounter.tc.i8254.counter: 63597 +kern.timecounter.tc.i8254.frequency: 1193182 +kern.timecounter.tc.i8254.quality: 0 +kern.timecounter.tc.ACPI-safe.mask: 4294967295 +kern.timecounter.tc.ACPI-safe.counter: 3632181619 +kern.timecounter.tc.ACPI-safe.frequency: 3579545 +kern.timecounter.tc.ACPI-safe.quality: 850 +kern.timecounter.tc.TSC.mask: 4294967295 +kern.timecounter.tc.TSC.counter: 2056731261 +kern.timecounter.tc.TSC.frequency: 2109782620 +kern.timecounter.tc.TSC.quality: 800 +kern.timecounter.smp_tsc: 0 +kern.timecounter.invariant_tsc: 0 +kern.threads.max_threads_hits: 0 +kern.threads.max_threads_per_proc: 1500 +kern.ccpu: 0 +kern.sched.preemption: 1 +kern.sched.topology_spec: + + 0 + + + +kern.sched.steal_thresh: 0 +kern.sched.steal_idle: 1 +kern.sched.steal_htt: 1 +kern.sched.balance_interval: 128 +kern.sched.balance: 1 +kern.sched.affinity: 1 +kern.sched.idlespinthresh: 4 +kern.sched.idlespins: 10000 +kern.sched.static_boost: 160 +kern.sched.preempt_thresh: 64 +kern.sched.interact: 30 +kern.sched.slice: 12 +kern.sched.name: ULE +kern.devstat.version: 6 +kern.devstat.generation: 155 +kern.devstat.numdevs: 3 +kern.kobj_methodcount: 166 +kern.log_wakeups_per_second: 5 +kern.vm_guest: generic +kern.sgrowsiz: 131072 +kern.maxssiz: 67108864 +kern.dflssiz: 8388608 +kern.maxdsiz: 536870912 +kern.dfldsiz: 134217728 +kern.maxtsiz: 134217728 +kern.maxbcache: 209715200 +kern.maxswzone: 33554432 +kern.nswbuf: 256 +kern.nbuf: 3860 +kern.ncallout: 12028 +kern.hz: 100 +kern.msgbuf_clear: 0 +kern.msgbuf: +kern.always_console_output: 0 +kern.log_console_output: 1 +kern.smp.forward_signal_enabled: 1 +kern.smp.topology: 0 +kern.smp.cpus: 1 +kern.smp.disabled: 0 +kern.smp.active: 0 +kern.smp.maxcpus: 32 +kern.smp.maxid: 31 +kern.tty_inq_flush_secure: 1 +kern.tty_inq_nslow: 2873 +kern.tty_inq_nfast: 3779 +kern.tty_outq_nslow: 0 +kern.tty_outq_nfast: 0 +kern.pts_maxdev: 999 +kern.tty_pty_warningcnt: 1 +kern.tty_nout: 536847 +kern.tty_nin: 8162 +kern.minvnodes: 8843 +kern.metadelay: 28 +kern.dirdelay: 29 +kern.filedelay: 30 +kern.chroot_allow_open_directories: 1 +kern.random.yarrow.gengateinterval: 10 +kern.random.yarrow.bins: 10 +kern.random.yarrow.fastthresh: 192 +kern.random.yarrow.slowthresh: 256 +kern.random.yarrow.slowoverthresh: 2 +kern.random.sys.seeded: 1 +kern.random.sys.harvest.ethernet: 1 +kern.random.sys.harvest.point_to_point: 1 +kern.random.sys.harvest.interrupt: 1 +kern.random.sys.harvest.swi: 0 +vm.vmtotal: +System wide totals computed every five seconds: (values in kilobytes) +=============================================== +Processes: (RUNQ: 1 Disk Wait: 0 Page Wait: 0 Sleep: 17) +Virtual Memory: (Total: 2186148K Active: 58156K) +Real Memory: (Total: 46064K Active: 9864K) +Shared Virtual Memory: (Total: 6740K Active: 2796K) +Shared Real Memory: (Total: 3840K Active: 2580K) +Free Memory Pages: 339208K + +vm.loadavg: { 0.16 0.03 0.07 } +vm.v_free_min: 839 +vm.v_free_target: 3569 +vm.v_free_reserved: 213 +vm.v_inactive_target: 5353 +vm.v_cache_min: 3569 +vm.v_cache_max: 7138 +vm.v_pageout_free_min: 34 +vm.pageout_algorithm: 0 +vm.swap_enabled: 1 +vm.kmem_map_free: 139096064 +vm.kmem_map_size: 32215040 +vm.kmem_size_scale: 3 +vm.kmem_size_max: 335544320 +vm.kmem_size_min: 0 +vm.kmem_size: 171311104 +vm.nswapdev: 1 +vm.dmmax: 32 +vm.swap_async_max: 4 +vm.overcommit: 0 +vm.swap_reserved: 151109632 +vm.swap_total: 305942528 +vm.zone_count: 90 +vm.swap_idle_threshold2: 10 +vm.swap_idle_threshold1: 2 +vm.kstacks: 79 +vm.kstack_cache_size: 128 +vm.exec_map_entries: 16 +vm.stats.misc.zero_page_count: 41 +vm.stats.misc.cnt_prezero: 0 +vm.stats.vm.v_kthreadpages: 0 +vm.stats.vm.v_rforkpages: 0 +vm.stats.vm.v_vforkpages: 1876954 +vm.stats.vm.v_forkpages: 1944497 +vm.stats.vm.v_kthreads: 19 +vm.stats.vm.v_rforks: 0 +vm.stats.vm.v_vforks: 12423 +vm.stats.vm.v_forks: 11008 +vm.stats.vm.v_interrupt_free_min: 2 +vm.stats.vm.v_pageout_free_min: 34 +vm.stats.vm.v_cache_max: 7138 +vm.stats.vm.v_cache_min: 3569 +vm.stats.vm.v_cache_count: 51 +vm.stats.vm.v_inactive_count: 26053 +vm.stats.vm.v_inactive_target: 5353 +vm.stats.vm.v_active_count: 2246 +vm.stats.vm.v_wire_count: 12234 +vm.stats.vm.v_free_count: 84750 +vm.stats.vm.v_free_min: 839 +vm.stats.vm.v_free_target: 3569 +vm.stats.vm.v_free_reserved: 213 +vm.stats.vm.v_page_count: 125474 +vm.stats.vm.v_page_size: 4096 +vm.stats.vm.v_tfree: 3462493 +vm.stats.vm.v_pfree: 2877358 +vm.stats.vm.v_dfree: 0 +vm.stats.vm.v_tcached: 287 +vm.stats.vm.v_pdpages: 0 +vm.stats.vm.v_pdwakeups: 0 +vm.stats.vm.v_reactivated: 202 +vm.stats.vm.v_intrans: 14 +vm.stats.vm.v_vnodepgsout: 0 +vm.stats.vm.v_vnodepgsin: 4213 +vm.stats.vm.v_vnodeout: 0 +vm.stats.vm.v_vnodein: 529 +vm.stats.vm.v_swappgsout: 0 +vm.stats.vm.v_swappgsin: 0 +vm.stats.vm.v_swapout: 0 +vm.stats.vm.v_swapin: 0 +vm.stats.vm.v_ozfod: 56676 +vm.stats.vm.v_zfod: 2854427 +vm.stats.vm.v_cow_optim: 20 +vm.stats.vm.v_cow_faults: 369778 +vm.stats.vm.v_vm_faults: 3922393 +vm.stats.sys.v_soft: 346689 +vm.stats.sys.v_intr: 834879 +vm.stats.sys.v_syscall: 4059734 +vm.stats.sys.v_trap: 4099703 +vm.stats.sys.v_swtch: 1137932 +vm.stats.object.bypasses: 3019 +vm.stats.object.collapses: 32796 +vm.v_free_severe: 526 +vm.max_proc_mmap: 23793 +vm.old_msync: 0 +vm.msync_flush_flags: 0 +vm.boot_pages: 48 +vm.max_wired: 40918 +vm.pageout_lock_miss: 0 +vm.disable_swapspace_pageouts: 0 +vm.defer_swapspace_pageouts: 0 +vm.swap_idle_enabled: 0 +vm.pageout_stats_interval: 5 +vm.pageout_full_stats_interval: 20 +vm.pageout_stats_max: 3569 +vm.max_launder: 32 +vm.phys_segs: +SEGMENT 0: + +start: 0x1000 +end: 0x9f000 +free list: 0xc0e19068 + +SEGMENT 1: + +start: 0x100000 +end: 0x400000 +free list: 0xc0e19068 + +SEGMENT 2: + +start: 0x1026000 +end: 0x1f6aa000 +free list: 0xc0e18f60 + +vm.phys_free: +FREE LIST 0: + + ORDER (SIZE) | NUMBER + | POOL 0 | POOL 1 +-- -- -- -- -- -- + 10 ( 4096K) | 26 | 0 + 9 ( 2048K) | 10 | 0 + 8 ( 1024K) | 29 | 0 + 7 ( 512K) | 51 | 0 + 6 ( 256K) | 136 | 0 + 5 ( 128K) | 234 | 0 + 4 ( 64K) | 353 | 0 + 3 ( 32K) | 484 | 0 + 2 ( 16K) | 624 | 1 + 1 ( 8K) | 424 | 6 + 0 ( 4K) | 0 | 23 + +FREE LIST 1: + + ORDER (SIZE) | NUMBER + | POOL 0 | POOL 1 +-- -- -- -- -- -- + 10 ( 4096K) | 0 | 0 + 9 ( 2048K) | 1 | 0 + 8 ( 1024K) | 1 | 0 + 7 ( 512K) | 0 | 0 + 6 ( 256K) | 1 | 0 + 5 ( 128K) | 1 | 0 + 4 ( 64K) | 1 | 0 + 3 ( 32K) | 2 | 0 + 2 ( 16K) | 2 | 0 + 1 ( 8K) | 2 | 0 + 0 ( 4K) | 1 | 0 + +vm.reserv.reclaimed: 0 +vm.reserv.partpopq: +LEVEL SIZE NUMBER + + -1: 36404K, 11 + +vm.reserv.freed: 2352 +vm.reserv.broken: 1 +vm.idlezero_enable: 0 +vm.kvm_free: 700444672 +vm.kvm_size: 1073737728 +vm.pmap.pmap_collect_active: 0 +vm.pmap.pmap_collect_inactive: 0 +vm.pmap.pv_entry_spare: 2891 +vm.pmap.pv_entry_allocs: 16563725 +vm.pmap.pv_entry_frees: 16556872 +vm.pmap.pc_chunk_tryfail: 0 +vm.pmap.pc_chunk_frees: 68228 +vm.pmap.pc_chunk_allocs: 68257 +vm.pmap.pc_chunk_count: 29 +vm.pmap.pv_entry_count: 6853 +vm.pmap.pde.promotions: 0 +vm.pmap.pde.p_failures: 0 +vm.pmap.pde.mappings: 0 +vm.pmap.pde.demotions: 0 +vm.pmap.shpgperproc: 200 +vm.pmap.pv_entry_max: 926352 +vm.pmap.pg_ps_enabled: 0 +vm.pmap.pat_works: 1 +vfs.nfs.downdelayinitial: 12 +vfs.nfs.downdelayinterval: 30 +vfs.nfs.skip_wcc_data_onerr: 1 +vfs.nfs.nfs3_jukebox_delay: 10 +vfs.nfs.reconnects: 0 +vfs.nfs.bufpackets: 4 +vfs.nfs.defect: 0 +vfs.nfs.iodmax: 20 +vfs.nfs.iodmin: 0 +vfs.nfs.iodmaxidle: 120 +vfs.nfs.diskless_rootpath: +vfs.nfs.diskless_valid: 0 +vfs.nfs.nfs_ip_paranoia: 1 +vfs.nfs.nfs_directio_allow_mmap: 1 +vfs.nfs.nfs_directio_enable: 0 +vfs.nfs.clean_pages_on_close: 1 +vfs.nfs.nfsv3_commit_on_close: 0 +vfs.nfs.prime_access_cache: 0 +vfs.nfs.access_cache_timeout: 60 +vfs.devfs.rule_depth: 1 +vfs.devfs.generation: 94 +vfs.ufs.dirhash_reclaimage: 5 +vfs.ufs.dirhash_lowmemcount: 0 +vfs.ufs.dirhash_docheck: 0 +vfs.ufs.dirhash_mem: 71171 +vfs.ufs.dirhash_maxmem: 2097152 +vfs.ufs.dirhash_minsize: 2560 +vfs.pfs.trace: 0 +vfs.pfs.vncache.misses: 1 +vfs.pfs.vncache.hits: 17 +vfs.pfs.vncache.maxentries: 1 +vfs.pfs.vncache.entries: 1 +vfs.flushwithdeps: 477 +vfs.notbufdflashes: 0 +vfs.flushbufqtarget: 100 +vfs.getnewbufrestarts: 0 +vfs.getnewbufcalls: 62271 +vfs.hifreebuffers: 438 +vfs.lofreebuffers: 219 +vfs.numfreebuffers: 3831 +vfs.dirtybufthresh: 886 +vfs.hidirtybuffers: 985 +vfs.lodirtybuffers: 492 +vfs.numdirtybuffers: 29 +vfs.recursiveflushes: 14182 +vfs.altbufferflushes: 0 +vfs.bdwriteskip: 0 +vfs.dirtybufferflushes: 0 +vfs.hirunningspace: 1048576 +vfs.lorunningspace: 524288 +vfs.bufdefragcnt: 0 +vfs.buffreekvacnt: 0 +vfs.bufreusecnt: 3816 +vfs.hibufspace: 62586880 +vfs.lobufspace: 62521344 +vfs.maxmallocbufspace: 3129344 +vfs.bufmallocspace: 4096 +vfs.maxbufspace: 63242240 +vfs.bufspace: 62521344 +vfs.runningbufspace: 0 +vfs.vmiodirenable: 1 +vfs.cache.numfullpathfound: 4052 +vfs.cache.numfullpathfail4: 0 +vfs.cache.numfullpathfail2: 0 +vfs.cache.numfullpathfail1: 0 +vfs.cache.numfullpathcalls: 4052 +vfs.cache.nchstats: 2581152 375742 23840 0 79541 0 3128 8487 +vfs.cache.numupgrades: 0 +vfs.cache.numneghits: 375742 +vfs.cache.numnegzaps: 12554 +vfs.cache.numposhits: 2581152 +vfs.cache.numposzaps: 11286 +vfs.cache.nummisszap: 5047 +vfs.cache.nummiss: 74494 +vfs.cache.numchecks: 3186976 +vfs.cache.dotdothits: 2233669 +vfs.cache.dothits: 403010 +vfs.cache.numcalls: 5696954 +vfs.cache.numcache: 5445 +vfs.cache.numneg: 336 +vfs.ncsizefactor: 2 +vfs.ncnegfactor: 16 +vfs.read_max: 8 +vfs.write_behind: 1 +vfs.lookup_shared: 1 +vfs.usermount: 0 +vfs.worklist_len: 8 +vfs.timestamp_precision: 0 +vfs.reassignbufcalls: 89090 +vfs.vlru_allow_cache_src: 0 +vfs.freevnodes: 361 +vfs.wantfreevnodes: 8843 +vfs.numvnodes: 5753 +vfs.nfs_common.realign_count: 0 +vfs.nfs_common.realign_test: 0 +vfs.nfsrv.nfs_privport: 0 +vfs.nfsrv.fha.bin_shift: 18 +vfs.nfsrv.fha.max_nfsds_per_fh: 8 +vfs.nfsrv.fha.max_reqs_per_nfsd: 4 +vfs.nfsrv.fha.fhe_stats: No file handle entries. +vfs.nfsrv.commit_miss: 0 +vfs.nfsrv.commit_blks: 0 +vfs.nfsrv.async: 0 +vfs.nfsrv.gatherdelay_v3: 0 +vfs.nfsrv.gatherdelay: 10000 +vfs.nfsrv.minthreads: 1 +vfs.nfsrv.maxthreads: 1 +vfs.nfsrv.threads: 0 +vfs.nfsrv.request_space_used: 0 +vfs.nfsrv.request_space_used_highest: 0 +vfs.nfsrv.request_space_high: 8683520 +vfs.nfsrv.request_space_low: 5789013 +vfs.nfsrv.request_space_throttled: 0 +vfs.nfsrv.request_space_throttle_count: 0 +vfs.ffs.doreallocblks: 1 +vfs.ffs.doasyncfree: 1 +vfs.ffs.compute_summary_at_mount: 0 +net.local.stream.recvspace: 8192 +net.local.stream.sendspace: 8192 +net.local.dgram.recvspace: 4096 +net.local.dgram.maxdgram: 2048 +net.local.taskcount: 0 +net.local.recycled: 0 +net.local.deferred: 0 +net.local.inflight: 0 +net.inet.ip.portrange.randomtime: 45 +net.inet.ip.portrange.randomcps: 10 +net.inet.ip.portrange.randomized: 1 +net.inet.ip.portrange.reservedlow: 0 +net.inet.ip.portrange.reservedhigh: 1023 +net.inet.ip.portrange.hilast: 65535 +net.inet.ip.portrange.hifirst: 49152 +net.inet.ip.portrange.last: 65535 +net.inet.ip.portrange.first: 10000 +net.inet.ip.portrange.lowlast: 600 +net.inet.ip.portrange.lowfirst: 1023 +net.inet.ip.forwarding: 1 +net.inet.ip.redirect: 1 +net.inet.ip.ttl: 64 +net.inet.ip.rtexpire: 3600 +net.inet.ip.rtminexpire: 10 +net.inet.ip.rtmaxcache: 128 +net.inet.ip.sourceroute: 0 +net.inet.ip.intr_queue_maxlen: 256 +net.inet.ip.intr_queue_drops: 0 +net.inet.ip.accept_sourceroute: 0 +net.inet.ip.keepfaith: 0 +net.inet.ip.gifttl: 30 +net.inet.ip.same_prefix_carp_only: 0 +net.inet.ip.subnets_are_local: 0 +net.inet.ip.random_id_total: 0 +net.inet.ip.random_id_collisions: 0 +net.inet.ip.random_id_period: 8192 +net.inet.ip.mcast.loop: 1 +net.inet.ip.mcast.maxsocksrc: 128 +net.inet.ip.mcast.maxgrpsrc: 512 +net.inet.ip.fastforwarding: 0 +net.inet.ip.maxfragpackets: 530 +net.inet.ip.output_flowtable_size: 32768 +net.inet.ip.maxfragsperpacket: 16 +net.inet.ip.fragpackets: 0 +net.inet.ip.check_interface: 0 +net.inet.ip.random_id: 0 +net.inet.ip.sendsourcequench: 0 +net.inet.ip.process_options: 1 +net.inet.icmp.maskrepl: 0 +net.inet.icmp.icmplim: 200 +net.inet.icmp.bmcastecho: 0 +net.inet.icmp.quotelen: 8 +net.inet.icmp.reply_from_interface: 0 +net.inet.icmp.reply_src: +net.inet.icmp.icmplim_output: 1 +net.inet.icmp.log_redirect: 0 +net.inet.icmp.drop_redirect: 0 +net.inet.icmp.maskfake: 0 +net.inet.igmp.gsrdelay: 10 +net.inet.igmp.default_version: 3 +net.inet.igmp.legacysupp: 0 +net.inet.igmp.v2enable: 1 +net.inet.igmp.v1enable: 1 +net.inet.igmp.sendlocal: 1 +net.inet.igmp.sendra: 1 +net.inet.igmp.recvifkludge: 1 +net.inet.tcp.rfc1323: 1 +net.inet.tcp.mssdflt: 512 +net.inet.tcp.keepidle: 7200000 +net.inet.tcp.keepintvl: 75000 +net.inet.tcp.sendspace: 32768 +net.inet.tcp.recvspace: 65536 +net.inet.tcp.keepinit: 75000 +net.inet.tcp.delacktime: 100 +net.inet.tcp.v6mssdflt: 1024 +net.inet.tcp.hostcache.purge: 0 +net.inet.tcp.hostcache.prune: 300 +net.inet.tcp.hostcache.expire: 3600 +net.inet.tcp.hostcache.count: 2 +net.inet.tcp.hostcache.bucketlimit: 30 +net.inet.tcp.hostcache.hashsize: 512 +net.inet.tcp.hostcache.cachelimit: 15360 +net.inet.tcp.read_locking: 1 +net.inet.tcp.recvbuf_max: 262144 +net.inet.tcp.recvbuf_inc: 16384 +net.inet.tcp.recvbuf_auto: 1 +net.inet.tcp.insecure_rst: 0 +net.inet.tcp.ecn.maxretries: 1 +net.inet.tcp.ecn.enable: 0 +net.inet.tcp.abc_l_var: 2 +net.inet.tcp.rfc3465: 1 +net.inet.tcp.rfc3390: 1 +net.inet.tcp.rfc3042: 1 +net.inet.tcp.drop_synfin: 0 +net.inet.tcp.delayed_ack: 1 +net.inet.tcp.blackhole: 0 +net.inet.tcp.log_in_vain: 0 +net.inet.tcp.sendbuf_max: 262144 +net.inet.tcp.sendbuf_inc: 8192 +net.inet.tcp.sendbuf_auto: 1 +net.inet.tcp.tso: 1 +net.inet.tcp.newreno: 1 +net.inet.tcp.local_slowstart_flightsize: 4 +net.inet.tcp.slowstart_flightsize: 1 +net.inet.tcp.path_mtu_discovery: 1 +net.inet.tcp.reass.overflows: 0 +net.inet.tcp.reass.cursegments: 0 +net.inet.tcp.reass.maxsegments: 1183 +net.inet.tcp.sack.globalholes: 0 +net.inet.tcp.sack.globalmaxholes: 65536 +net.inet.tcp.sack.maxholes: 128 +net.inet.tcp.sack.enable: 1 +net.inet.tcp.inflight.stab: 20 +net.inet.tcp.inflight.max: 1073725440 +net.inet.tcp.inflight.min: 6144 +net.inet.tcp.inflight.rttthresh: 10 +net.inet.tcp.inflight.debug: 0 +net.inet.tcp.inflight.enable: 0 +net.inet.tcp.isn_reseed_interval: 0 +net.inet.tcp.icmp_may_rst: 1 +net.inet.tcp.pcbcount: 1 +net.inet.tcp.do_tcpdrain: 1 +net.inet.tcp.tcbhashsize: 512 +net.inet.tcp.log_debug: 0 +net.inet.tcp.minmss: 216 +net.inet.tcp.syncache.rst_on_sock_fail: 1 +net.inet.tcp.syncache.rexmtlimit: 3 +net.inet.tcp.syncache.hashsize: 512 +net.inet.tcp.syncache.count: 0 +net.inet.tcp.syncache.cachelimit: 15360 +net.inet.tcp.syncache.bucketlimit: 30 +net.inet.tcp.syncookies_only: 0 +net.inet.tcp.syncookies: 1 +net.inet.tcp.timer_race: 0 +net.inet.tcp.finwait2_timeout: 60000 +net.inet.tcp.fast_finwait2_recycle: 0 +net.inet.tcp.always_keepalive: 1 +net.inet.tcp.rexmit_slop: 200 +net.inet.tcp.rexmit_min: 30 +net.inet.tcp.msl: 30000 +net.inet.tcp.nolocaltimewait: 0 +net.inet.tcp.maxtcptw: 3392 +net.inet.udp.checksum: 1 +net.inet.udp.maxdgram: 9216 +net.inet.udp.recvspace: 42080 +net.inet.udp.blackhole: 0 +net.inet.udp.log_in_vain: 0 +net.inet.sctp.initial_cwnd: 3 +net.inet.sctp.buffer_splitting: 0 +net.inet.sctp.vtag_time_wait: 60 +net.inet.sctp.nat_friendly_init: 0 +net.inet.sctp.enable_sack_immediately: 0 +net.inet.sctp.udp_tunneling_port: 0 +net.inet.sctp.udp_tunneling_for_client_enable: 0 +net.inet.sctp.mobility_fasthandoff: 0 +net.inet.sctp.mobility_base: 0 +net.inet.sctp.default_frag_interleave: 1 +net.inet.sctp.default_cc_module: 0 +net.inet.sctp.log_level: 0 +net.inet.sctp.max_retran_chunk: 30 +net.inet.sctp.min_residual: 1452 +net.inet.sctp.strict_data_order: 0 +net.inet.sctp.abort_at_limit: 0 +net.inet.sctp.hb_max_burst: 4 +net.inet.sctp.do_sctp_drain: 1 +net.inet.sctp.max_chained_mbufs: 5 +net.inet.sctp.abc_l_var: 1 +net.inet.sctp.nat_friendly: 1 +net.inet.sctp.auth_disable: 0 +net.inet.sctp.asconf_auth_nochk: 0 +net.inet.sctp.early_fast_retran_msec: 250 +net.inet.sctp.early_fast_retran: 0 +net.inet.sctp.cwnd_maxburst: 1 +net.inet.sctp.cmt_pf: 0 +net.inet.sctp.cmt_use_dac: 0 +net.inet.sctp.nr_sack_on_off: 0 +net.inet.sctp.cmt_on_off: 0 +net.inet.sctp.outgoing_streams: 10 +net.inet.sctp.add_more_on_output: 1452 +net.inet.sctp.path_rtx_max: 5 +net.inet.sctp.assoc_rtx_max: 10 +net.inet.sctp.init_rtx_max: 8 +net.inet.sctp.valid_cookie_life: 60000 +net.inet.sctp.init_rto_max: 60000 +net.inet.sctp.rto_initial: 3000 +net.inet.sctp.rto_min: 1000 +net.inet.sctp.rto_max: 60000 +net.inet.sctp.secret_lifetime: 3600 +net.inet.sctp.shutdown_guard_time: 180 +net.inet.sctp.pmtu_raise_time: 600 +net.inet.sctp.heartbeat_interval: 30000 +net.inet.sctp.asoc_resource: 10 +net.inet.sctp.sys_resource: 1000 +net.inet.sctp.sack_freq: 2 +net.inet.sctp.delayed_sack_time: 200 +net.inet.sctp.chunkscale: 10 +net.inet.sctp.min_split_point: 2904 +net.inet.sctp.pcbhashsize: 256 +net.inet.sctp.tcbhashsize: 1024 +net.inet.sctp.maxchunks: 2120 +net.inet.sctp.maxburst: 4 +net.inet.sctp.peer_chkoh: 256 +net.inet.sctp.strict_init: 1 +net.inet.sctp.loopback_nocsum: 1 +net.inet.sctp.strict_sacks: 1 +net.inet.sctp.ecn_nonce: 0 +net.inet.sctp.ecn_enable: 1 +net.inet.sctp.auto_asconf: 1 +net.inet.sctp.recvspace: 233016 +net.inet.sctp.sendspace: 233016 +net.inet.raw.recvspace: 9216 +net.inet.raw.maxdgram: 9216 +net.inet.accf.unloadable: 0 +net.inet.flowtable.stats: +table name: ipv4 + collisions: 0 + allocated: 0 + misses: 4 + max_depth: 0 + free_checks: 12 + frees: 4 + hits: 8463 + lookups: 8467 + +net.inet.flowtable.nmbflows: 16960 +net.inet.flowtable.tcp_expire: 86400 +net.inet.flowtable.fin_wait_expire: 600 +net.inet.flowtable.udp_expire: 300 +net.inet.flowtable.syn_expire: 300 +net.inet.flowtable.enable: 1 +net.inet.flowtable.debug: 0 +net.link.generic.system.ifcount: 2 +net.link.ether.inet.log_arp_permanent_modify: 1 +net.link.ether.inet.log_arp_movements: 1 +net.link.ether.inet.log_arp_wrong_iface: 1 +net.link.ether.inet.proxyall: 0 +net.link.ether.inet.useloopback: 1 +net.link.ether.inet.maxtries: 5 +net.link.ether.inet.max_age: 1200 +net.link.ether.ipfw: 0 +net.link.vlan.soft_pad: 0 +net.link.gif.parallel_tunnels: 0 +net.link.gif.max_nesting: 1 +net.link.log_link_state_change: 1 +net.link.ifqmaxlen: 50 +net.link.tun.devfs_cloning: 1 +net.inet6.ip6.forwarding: 0 +net.inet6.ip6.redirect: 1 +net.inet6.ip6.hlim: 64 +net.inet6.ip6.maxfragpackets: 4240 +net.inet6.ip6.accept_rtadv: 0 +net.inet6.ip6.keepfaith: 0 +net.inet6.ip6.log_interval: 5 +net.inet6.ip6.hdrnestlimit: 15 +net.inet6.ip6.dad_count: 1 +net.inet6.ip6.auto_flowlabel: 1 +net.inet6.ip6.defmcasthlim: 1 +net.inet6.ip6.gifhlim: 30 +net.inet6.ip6.kame_version: FreeBSD +net.inet6.ip6.use_deprecated: 1 +net.inet6.ip6.rr_prune: 5 +net.inet6.ip6.v6only: 1 +net.inet6.ip6.rtexpire: 3600 +net.inet6.ip6.rtminexpire: 10 +net.inet6.ip6.rtmaxcache: 128 +net.inet6.ip6.use_tempaddr: 0 +net.inet6.ip6.temppltime: 86400 +net.inet6.ip6.tempvltime: 604800 +net.inet6.ip6.auto_linklocal: 0 +net.inet6.ip6.prefer_tempaddr: 0 +net.inet6.ip6.use_defaultzone: 0 +net.inet6.ip6.maxfrags: 4240 +net.inet6.ip6.mcast_pmtu: 0 +net.inet6.ip6.mcast.loop: 1 +net.inet6.ip6.mcast.maxsocksrc: 128 +net.inet6.ip6.mcast.maxgrpsrc: 512 +net.inet6.icmp6.rediraccept: 1 +net.inet6.icmp6.redirtimeout: 600 +net.inet6.icmp6.nd6_prune: 1 +net.inet6.icmp6.nd6_delay: 5 +net.inet6.icmp6.nd6_umaxtries: 3 +net.inet6.icmp6.nd6_mmaxtries: 3 +net.inet6.icmp6.nd6_useloopback: 1 +net.inet6.icmp6.nodeinfo: 3 +net.inet6.icmp6.errppslimit: 100 +net.inet6.icmp6.nd6_maxnudhint: 0 +net.inet6.icmp6.nd6_debug: 0 +net.inet6.icmp6.nd6_maxqueuelen: 1 +net.inet6.icmp6.nd6_onlink_ns_rfc4861: 0 +net.inet6.mld.use_allow: 1 +net.inet6.mld.v1enable: 1 +net.inet6.mld.gsrdelay: 10 +net.bpf.zerocopy_enable: 0 +net.bpf.maxinsns: 512 +net.bpf.maxbufsize: 524288 +net.bpf.bufsize: 4096 +net.ifdescr_maxlen: 1024 +net.isr.numthreads: 1 +net.isr.defaultqlimit: 256 +net.isr.maxqlimit: 10240 +net.isr.bindthreads: 0 +net.isr.maxthreads: 1 +net.isr.direct: 1 +net.isr.direct_force: 1 +net.raw.recvspace: 8192 +net.raw.sendspace: 8192 +net.my_fibnum: 0 +net.add_addr_allfibs: 1 +net.fibs: 1 +net.route.netisr_maxqlen: 256 +net.wlan.cac_timeout: 60 +net.wlan.nol_timeout: 1800 +net.wlan.debug: 0 +net.wlan.addba_maxtries: 3 +net.wlan.addba_backoff: 10000 +net.wlan.addba_timeout: 250 +net.wlan.recv_bar: 1 +net.wlan.ampdu_age: 500 +net.wlan.hwmp.inact: 5000 +net.wlan.hwmp.rannint: 1000 +net.wlan.hwmp.rootint: 2000 +net.wlan.hwmp.roottimeout: 5000 +net.wlan.hwmp.pathlifetime: 5000 +net.wlan.hwmp.replyforward: 1 +net.wlan.hwmp.targetonly: 0 +net.wlan.mesh.maxretries: 2 +net.wlan.mesh.confirmtimeout: 40 +net.wlan.mesh.holdingtimeout: 40 +net.wlan.mesh.retrytimeout: 40 +debug.acpi.suspend_bounce: 0 +debug.acpi.reset_clock: 1 +debug.acpi.do_powerstate: 1 +debug.acpi.interpreter_slack: 1 +debug.acpi.enable_debug_objects: 0 +debug.acpi.acpi_ca_version: 20101013 +debug.acpi.ec.timeout: 750 +debug.acpi.ec.polled: 0 +debug.acpi.ec.burst: 0 +debug.acpi.batt.batt_sleep_ms: 0 +debug.acpi.resume_beep: 0 +debug.firewire_debug: 0 +debug.fwmem_debug: 0 +debug.if_fwe_debug: 0 +debug.if_fwip_debug: 0 +debug.mddebug: 0 +debug.elf32_legacy_coredump: 0 +debug.bootverbose: 0 +debug.boothowto: -2147483648 +debug.cpufreq.verbose: 0 +debug.cpufreq.lowest: 0 +debug.fail_point.buf_pressure: off +debug.sizeof.cdev_priv: 236 +debug.sizeof.cdev: 184 +debug.sizeof.g_bioq: 32 +debug.sizeof.g_consumer: 60 +debug.sizeof.g_provider: 88 +debug.sizeof.g_geom: 68 +debug.sizeof.g_class: 68 +debug.sizeof.kinfo_proc: 768 +debug.sizeof.buf: 336 +debug.sizeof.bio: 140 +debug.sizeof.proc: 680 +debug.sizeof.vnode: 268 +debug.sizeof.devstat: 240 +debug.sizeof.namecache: 36 +debug.osd: 0 +debug.trace_on_panic: 1 +debug.debugger_on_panic: 1 +debug.to_avg_mpcalls: 1511 +debug.to_avg_lockcalls: 27 +debug.to_avg_gcalls: 255 +debug.to_avg_depth: 2033 +debug.umtx.umtx_pi_allocated: 0 +debug.kdb.stop_cpus: 1 +debug.kdb.trap_code: 0 +debug.kdb.trap: 0 +debug.kdb.panic: 0 +debug.kdb.enter: 0 +debug.kdb.current: +debug.kdb.available: +debug.rman_debug: 0 +debug.ttydebug: 0 +debug.disablefullpath: 0 +debug.disablecwd: 0 +debug.vfscache: 1 +debug.numcachehv: 522 +debug.numcache: 5445 +debug.numneg: 336 +debug.ncnegfactor: 16 +debug.nchash: 65535 +debug.vnlru_nowhere: 0 +debug.rush_requests: 0 +debug.if_tun_debug: 0 +debug.nlm_debug: 0 +debug.collectsnapstats: 0 +debug.snapdebug: 0 +debug.dopersistence: 0 +debug.dir_entry: 2084 +debug.direct_blk_ptrs: 152 +debug.inode_bitmap: 175 +debug.indir_blk_ptrs: 4 +debug.sync_limit_hit: 0 +debug.ino_limit_hit: 0 +debug.blk_limit_hit: 0 +debug.ino_limit_push: 0 +debug.blk_limit_push: 0 +debug.worklist_push: 0 +debug.maxindirdeps: 50 +debug.tickdelay: 2 +debug.max_softdeps: 141488 +debug.dobkgrdwrite: 1 +debug.bigcgs: 0 +debug.dircheck: 0 +debug.psm.pkterrthresh: 2 +debug.psm.usecs: 500000 +debug.psm.secs: 0 +debug.psm.errusecs: 0 +debug.psm.errsecs: 2 +debug.psm.hz: 20 +debug.psm.loglevel: 0 +debug.fdc.settle: 0 +debug.fdc.spec2: 16 +debug.fdc.spec1: 175 +debug.fdc.retries: 10 +debug.fdc.debugflags: 0 +debug.fdc.fifo: 8 +debug.PMAP1unchanged: 5863239 +debug.PMAP1changed: 34860 +debug.PMAP1changedcpu: 0 +debug.x86bios.int: 0 +debug.x86bios.call: 0 +debug.hwpstate_verbose: 0 +debug.minidump: 1 +hw.machine: i386 +hw.model: AMD Athlon(tm) 64 X2 Dual Core Processor 4000+ +hw.ncpu: 1 +hw.byteorder: 1234 +hw.physmem: 523665408 +hw.usermem: 473538560 +hw.pagesize: 4096 +hw.floatingpoint: 1 +hw.machine_arch: i386 +hw.realmem: 536805376 +hw.amr.force_sg32: 0 +hw.an.an_cache_iponly: 1 +hw.an.an_cache_mcastonly: 0 +hw.an.an_cache_mode: dbm +hw.an.an_dump: off +hw.ata.setmax: 0 +hw.ata.wc: 1 +hw.ata.atapi_dma: 1 +hw.ata.ata_dma_check_80pin: 1 +hw.ata.ata_dma: 1 +hw.ath.bstuck: 4 +hw.ath.txbuf: 200 +hw.ath.rxbuf: 40 +hw.ath.resetcal: 1200 +hw.ath.shortcal: 100 +hw.ath.longcal: 30 +hw.ath.hal.swba_backoff: 0 +hw.ath.hal.sw_brt: 10 +hw.ath.hal.dma_brt: 2 +hw.bce.msi_enable: 1 +hw.bce.tso_enable: 1 +hw.bge.allow_asf: 0 +hw.cardbus.cis_debug: 0 +hw.cardbus.debug: 0 +hw.cs.recv_delay: 570 +hw.cs.ignore_checksum_failure: 0 +hw.firewire.hold_count: 0 +hw.firewire.try_bmr: 1 +hw.firewire.fwmem.speed: 2 +hw.firewire.fwmem.eui64_lo: 0 +hw.firewire.fwmem.eui64_hi: 0 +hw.firewire.phydma_enable: 1 +hw.firewire.nocyclemaster: 0 +hw.firewire.fwe.rx_queue_len: 128 +hw.firewire.fwe.tx_speed: 2 +hw.firewire.fwe.stream_ch: 1 +hw.firewire.fwip.rx_queue_len: 128 +hw.mfi.max_cmds: 128 +hw.mfi.event_class: 0 +hw.mfi.event_locale: 65535 +hw.pccard.cis_debug: 0 +hw.pccard.debug: 0 +hw.cbb.debug: 0 +hw.cbb.start_32_io: 4096 +hw.cbb.start_16_io: 256 +hw.cbb.start_memory: 2281701376 +hw.pcic.pd6722_vsense: 1 +hw.pcic.intr_mask: 57016 +hw.pci.usb_early_takeover: 1 +hw.pci.honor_msi_blacklist: 1 +hw.pci.enable_msix: 1 +hw.pci.enable_msi: 1 +hw.pci.do_power_resume: 1 +hw.pci.do_power_nodriver: 0 +hw.pci.enable_io_modes: 1 +hw.pci.default_vgapci_unit: -1 +hw.pci.host_mem_start: 2147483648 +hw.pci.mcfg: 1 +hw.pci.irq_override_mask: 57080 +hw.syscons.kbd_debug: 1 +hw.syscons.kbd_reboot: 1 +hw.syscons.bell: 1 +hw.syscons.saver.keybonly: 1 +hw.syscons.sc_no_suspend_vtswitch: 0 +hw.usb.ehci.lostintrbug: 0 +hw.usb.ehci.iaadbug: 0 +hw.usb.ehci.no_hs: 0 +hw.usb.ehci.debug: 0 +hw.usb.ohci.debug: 0 +hw.usb.uhci.loop: 0 +hw.usb.uhci.debug: 0 +hw.usb.no_boot_wait: 0 +hw.usb.ctrl.debug: 0 +hw.usb.umass.debug: 0 +hw.usb.urio.debug: 0 +hw.usb.debug: 0 +hw.usb.dev.debug: 0 +hw.usb.usb_lang_mask: 255 +hw.usb.usb_lang_id: 9 +hw.usb.template: 0 +hw.usb.ugen.debug: 0 +hw.usb.power_timeout: 30 +hw.usb.uhub.debug: 0 +hw.usb.proc.debug: 0 +hw.usb.pr_recovery_delay: 250 +hw.usb.pr_poll_delay: 50 +hw.usb.aue.debug: 0 +hw.usb.axe.debug: 0 +hw.usb.cdce.interval: 0 +hw.usb.cdce.debug: 0 +hw.usb.cue.debug: 0 +hw.usb.kue.debug: 0 +hw.usb.rue.debug: 0 +hw.usb.udav.debug: 0 +hw.usb.rum.debug: 0 +hw.usb.uath.regdomain: 0 +hw.usb.uath.countrycode: 0 +hw.usb.ural.debug: 0 +hw.usb.zyd.debug: 0 +hw.usb.u3g.debug: 0 +hw.usb.ubsa.debug: 0 +hw.usb.uftdi.debug: 0 +hw.usb.ulpt.debug: 0 +hw.usb.uplcom.debug: 0 +hw.usb.uslcom.debug: 0 +hw.usb.uvisor.debug: 0 +hw.usb.uvscom.debug: 0 +hw.usb.ucom.cons_baud: 9600 +hw.usb.ucom.cons_unit: -1 +hw.usb.ucom.debug: 0 +hw.usb.uhid.debug: 0 +hw.usb.ukbd.no_leds: 0 +hw.usb.ukbd.debug: 0 +hw.usb.ums.debug: 0 +hw.wi.debug: 0 +hw.wi.txerate: 0 +hw.xe.debug: 0 +hw.intr_storm_threshold: 1000 +hw.pagesizes: 4096 0 +hw.availpages: 127848 +hw.bus.devctl_queue: 1000 +hw.bus.devctl_disable: 0 +hw.psm.tap_timeout: 125000 +hw.psm.tap_threshold: 25 +hw.kbd.keymap_restrict_change: 0 +hw.busdma.total_bpages: 64 +hw.busdma.zone0.total_bpages: 64 +hw.busdma.zone0.free_bpages: 64 +hw.busdma.zone0.reserved_bpages: 0 +hw.busdma.zone0.active_bpages: 0 +hw.busdma.zone0.total_bounced: 0 +hw.busdma.zone0.total_deferred: 0 +hw.busdma.zone0.lowaddr: 0xffffffff +hw.busdma.zone0.alignment: 4096 +hw.clockrate: 2109 +hw.via_feature_xcrypt: 0 +hw.via_feature_rng: 0 +hw.instruction_sse: 1 +hw.apic.enable_extint: 0 +hw.mca.erratum383: 0 +hw.mca.amd10h_L1TP: 1 +hw.mca.enabled: 1 +hw.mca.count: 0 +hw.mca.interval: 3600 +hw.mca.force_scan: 0 +hw.acpi.supported_sleep_state: S5 +hw.acpi.power_button_state: S5 +hw.acpi.sleep_button_state: NONE +hw.acpi.lid_switch_state: NONE +hw.acpi.standby_state: NONE +hw.acpi.suspend_state: NONE +hw.acpi.sleep_delay: 1 +hw.acpi.s4bios: 0 +hw.acpi.verbose: 0 +hw.acpi.disable_on_reboot: 0 +hw.acpi.handle_reboot: 1 +hw.acpi.reset_video: 0 +hw.acpi.acline: 1 +machdep.acpi_timer_freq: 3579545 +machdep.enable_panic_key: 0 +machdep.rtc_save_period: 1800 +machdep.adjkerntz: 0 +machdep.wall_cmos_clock: 0 +machdep.disable_rtc_set: 0 +machdep.acpi_root: 917504 +machdep.disable_mtrrs: 0 +machdep.guessed_bootdev: 2686451712 +machdep.idle: amdc1e +machdep.idle_available: spin, amdc1e, hlt, acpi, +machdep.hlt_cpus: 0 +machdep.prot_fault_translation: 0 +machdep.panic_on_nmi: 1 +machdep.kdb_on_nmi: 1 +machdep.tsc_freq: 2109782620 +machdep.i8254_freq: 1193182 +user.cs_path: /usr/bin:/bin:/usr/sbin:/sbin: +user.bc_base_max: 99 +user.bc_dim_max: 2048 +user.bc_scale_max: 99 +user.bc_string_max: 1000 +user.coll_weights_max: 0 +user.expr_nest_max: 32 +user.line_max: 2048 +user.re_dup_max: 255 +user.posix2_version: 199212 +user.posix2_c_bind: 0 +user.posix2_c_dev: 0 +user.posix2_char_term: 0 +user.posix2_fort_dev: 0 +user.posix2_fort_run: 0 +user.posix2_localedef: 0 +user.posix2_sw_dev: 0 +user.posix2_upe: 0 +user.stream_max: 20 +user.tzname_max: 255 +p1003_1b.asynchronous_io: 0 +p1003_1b.mapped_files: 1 +p1003_1b.memlock: 0 +p1003_1b.memlock_range: 0 +p1003_1b.memory_protection: 0 +p1003_1b.message_passing: 0 +p1003_1b.prioritized_io: 0 +p1003_1b.priority_scheduling: 1 +p1003_1b.realtime_signals: 200112 +p1003_1b.semaphores: 0 +p1003_1b.fsync: 0 +p1003_1b.shared_memory_objects: 1 +p1003_1b.synchronized_io: 0 +p1003_1b.timers: 200112 +p1003_1b.aio_listio_max: -1 +p1003_1b.aio_max: -1 +p1003_1b.aio_prio_delta_max: -1 +p1003_1b.delaytimer_max: 2147483647 +p1003_1b.mq_open_max: 0 +p1003_1b.pagesize: 4096 +p1003_1b.rtsig_max: 62 +p1003_1b.sem_nsems_max: 30 +p1003_1b.sem_value_max: 2147483647 +p1003_1b.sigqueue_max: 128 +p1003_1b.timer_max: 32 +p1003_1b.nsems: 0 +security.jail.param.cpuset.id: 0 +security.jail.param.host.hostid: 0 +security.jail.param.host.hostuuid: 64 +security.jail.param.host.domainname: 256 +security.jail.param.host.hostname: 256 +security.jail.param.children.max: 0 +security.jail.param.children.cur: 0 +security.jail.param.enforce_statfs: 0 +security.jail.param.securelevel: 0 +security.jail.param.path: 1024 +security.jail.param.name: 256 +security.jail.param.parent: 0 +security.jail.param.jid: 0 +security.jail.enforce_statfs: 2 +security.jail.mount_allowed: 0 +security.jail.chflags_allowed: 0 +security.jail.allow_raw_sockets: 0 +security.jail.sysvipc_allowed: 0 +security.jail.socket_unixiproute_only: 1 +security.jail.set_hostname_allowed: 1 +security.jail.jail_max_af_ips: 255 +security.jail.jailed: 0 +security.bsd.map_at_zero: 0 +security.bsd.suser_enabled: 1 +security.bsd.unprivileged_proc_debug: 1 +security.bsd.conservative_signals: 1 +security.bsd.see_other_gids: 1 +security.bsd.see_other_uids: 1 +security.bsd.unprivileged_read_msgbuf: 1 +security.bsd.hardlink_check_gid: 0 +security.bsd.hardlink_check_uid: 0 +security.bsd.unprivileged_get_quota: 0 +security.bsd.stack_guard_page: 0 +security.mac.labeled: 0 +security.mac.max_slots: 4 +security.mac.version: 4 +security.mac.mmap_revocation_via_cow: 0 +security.mac.mmap_revocation: 1 +dev.nexus.0.%driver: nexus +dev.nexus.0.%parent: root0 +dev.npx.0.%desc: math processor +dev.npx.0.%driver: npx +dev.npx.0.%parent: nexus0 +dev.ram.0.%desc: System RAM +dev.ram.0.%driver: ram +dev.ram.0.%parent: nexus0 +dev.acpi.0.%desc: VBOX VBOXXSDT +dev.acpi.0.%driver: acpi +dev.acpi.0.%parent: nexus0 +dev.acpi_timer.0.%desc: 32-bit timer at 3.579545MHz +dev.acpi_timer.0.%driver: acpi_timer +dev.acpi_timer.0.%location: unknown +dev.acpi_timer.0.%pnpinfo: unknown +dev.acpi_timer.0.%parent: acpi0 +dev.pci_link.0.%desc: ACPI PCI Link LNKA +dev.pci_link.0.%driver: pci_link +dev.pci_link.0.%location: handle=\_SB_.LNKA +dev.pci_link.0.%pnpinfo: _HID=PNP0C0F _UID=1 +dev.pci_link.0.%parent: acpi0 +dev.pci_link.1.%desc: ACPI PCI Link LNKB +dev.pci_link.1.%driver: pci_link +dev.pci_link.1.%location: handle=\_SB_.LNKB +dev.pci_link.1.%pnpinfo: _HID=PNP0C0F _UID=2 +dev.pci_link.1.%parent: acpi0 +dev.pci_link.2.%desc: ACPI PCI Link LNKC +dev.pci_link.2.%driver: pci_link +dev.pci_link.2.%location: handle=\_SB_.LNKC +dev.pci_link.2.%pnpinfo: _HID=PNP0C0F _UID=3 +dev.pci_link.2.%parent: acpi0 +dev.pci_link.3.%desc: ACPI PCI Link LNKD +dev.pci_link.3.%driver: pci_link +dev.pci_link.3.%location: handle=\_SB_.LNKD +dev.pci_link.3.%pnpinfo: _HID=PNP0C0F _UID=4 +dev.pci_link.3.%parent: acpi0 +dev.pcib.0.%desc: ACPI Host-PCI bridge +dev.pcib.0.%driver: pcib +dev.pcib.0.%location: handle=\_SB_.PCI0 +dev.pcib.0.%pnpinfo: _HID=PNP0A03 _UID=0 +dev.pcib.0.%parent: acpi0 +dev.pci.0.%desc: ACPI PCI bus +dev.pci.0.%driver: pci +dev.pci.0.%parent: pcib0 +dev.hostb.0.%desc: Host to PCI bridge +dev.hostb.0.%driver: hostb +dev.hostb.0.%location: slot=0 function=0 handle=\_SB_.PCI0.HDEF +dev.hostb.0.%pnpinfo: vendor=0x8086 device=0x1237 subvendor=0x0000 subdevice=0x0000 class=0x060000 +dev.hostb.0.%parent: pci0 +dev.isab.0.%desc: PCI-ISA bridge +dev.isab.0.%driver: isab +dev.isab.0.%location: slot=1 function=0 handle=\_SB_.PCI0.SBRG +dev.isab.0.%pnpinfo: vendor=0x8086 device=0x7000 subvendor=0x0000 subdevice=0x0000 class=0x060100 +dev.isab.0.%parent: pci0 +dev.isa.0.%desc: ISA bus +dev.isa.0.%driver: isa +dev.isa.0.%parent: isab0 +dev.atapci.0.%desc: Intel PIIX4 UDMA33 controller +dev.atapci.0.%driver: atapci +dev.atapci.0.%location: slot=1 function=1 +dev.atapci.0.%pnpinfo: vendor=0x8086 device=0x7111 subvendor=0x0000 subdevice=0x0000 class=0x01018a +dev.atapci.0.%parent: pci0 +dev.ata.0.%desc: ATA channel 0 +dev.ata.0.%driver: ata +dev.ata.0.%location: channel=0 +dev.ata.0.%parent: atapci0 +dev.ata.1.%desc: ATA channel 1 +dev.ata.1.%driver: ata +dev.ata.1.%location: channel=1 +dev.ata.1.%parent: atapci0 +dev.vgapci.0.%desc: VGA-compatible display +dev.vgapci.0.%driver: vgapci +dev.vgapci.0.%location: slot=2 function=0 +dev.vgapci.0.%pnpinfo: vendor=0x80ee device=0xbeef subvendor=0x0000 subdevice=0x0000 class=0x030000 +dev.vgapci.0.%parent: pci0 +dev.em.0.%desc: Intel(R) PRO/1000 Legacy Network Connection 1.0.3 +dev.em.0.%driver: em +dev.em.0.%location: slot=3 function=0 +dev.em.0.%pnpinfo: vendor=0x8086 device=0x100e subvendor=0x8086 subdevice=0x001e class=0x020000 +dev.em.0.%parent: pci0 +dev.em.0.nvm: -1 +dev.em.0.rx_int_delay: 0 +dev.em.0.tx_int_delay: 66 +dev.em.0.rx_abs_int_delay: 66 +dev.em.0.tx_abs_int_delay: 66 +dev.em.0.rx_processing_limit: 100 +dev.em.0.flow_control: 3 +dev.em.0.mbuf_alloc_fail: 0 +dev.em.0.cluster_alloc_fail: 0 +dev.em.0.dropped: 0 +dev.em.0.tx_dma_fail: 0 +dev.em.0.tx_desc_fail1: 0 +dev.em.0.tx_desc_fail2: 0 +dev.em.0.rx_overruns: 0 +dev.em.0.watchdog_timeouts: 0 +dev.em.0.device_control: 1073742409 +dev.em.0.rx_control: 32770 +dev.em.0.fc_high_water: 4294965248 +dev.em.0.fc_low_water: 4294963748 +dev.em.0.fifo_workaround: 0 +dev.em.0.fifo_reset: 0 +dev.em.0.txd_head: 28 +dev.em.0.txd_tail: 28 +dev.em.0.rxd_head: 12 +dev.em.0.rxd_tail: 11 +dev.em.0.mac_stats.excess_coll: 0 +dev.em.0.mac_stats.single_coll: 0 +dev.em.0.mac_stats.multiple_coll: 0 +dev.em.0.mac_stats.late_coll: 0 +dev.em.0.mac_stats.collision_count: 0 +dev.em.0.mac_stats.symbol_errors: 0 +dev.em.0.mac_stats.sequence_errors: 0 +dev.em.0.mac_stats.defer_count: 0 +dev.em.0.mac_stats.missed_packets: 0 +dev.em.0.mac_stats.recv_no_buff: 0 +dev.em.0.mac_stats.recv_undersize: 0 +dev.em.0.mac_stats.recv_fragmented: 0 +dev.em.0.mac_stats.recv_oversize: 0 +dev.em.0.mac_stats.recv_jabber: 0 +dev.em.0.mac_stats.recv_errs: 0 +dev.em.0.mac_stats.crc_errs: 0 +dev.em.0.mac_stats.alignment_errs: 0 +dev.em.0.mac_stats.coll_ext_errs: 0 +dev.em.0.mac_stats.xon_recvd: 0 +dev.em.0.mac_stats.xon_txd: 0 +dev.em.0.mac_stats.xoff_recvd: 0 +dev.em.0.mac_stats.xoff_txd: 0 +dev.em.0.mac_stats.total_pkts_recvd: 16908 +dev.em.0.mac_stats.good_pkts_recvd: 16908 +dev.em.0.mac_stats.bcast_pkts_recvd: 0 +dev.em.0.mac_stats.mcast_pkts_recvd: 0 +dev.em.0.mac_stats.rx_frames_64: 38 +dev.em.0.mac_stats.rx_frames_65_127: 8442 +dev.em.0.mac_stats.rx_frames_128_255: 12 +dev.em.0.mac_stats.rx_frames_256_511: 0 +dev.em.0.mac_stats.rx_frames_512_1023: 1 +dev.em.0.mac_stats.rx_frames_1024_1522: 8415 +dev.em.0.mac_stats.good_octets_recvd: 13032940 +dev.em.0.mac_stats.good_octets_txd: 458218 +dev.em.0.mac_stats.total_pkts_txd: 8470 +dev.em.0.mac_stats.good_pkts_txd: 8470 +dev.em.0.mac_stats.bcast_pkts_txd: 3 +dev.em.0.mac_stats.mcast_pkts_txd: 0 +dev.em.0.mac_stats.tx_frames_64: 0 +dev.em.0.mac_stats.tx_frames_65_127: 8469 +dev.em.0.mac_stats.tx_frames_128_255: 0 +dev.em.0.mac_stats.tx_frames_256_511: 1 +dev.em.0.mac_stats.tx_frames_512_1023: 0 +dev.em.0.mac_stats.tx_frames_1024_1522: 0 +dev.em.0.mac_stats.tso_txd: 0 +dev.em.0.mac_stats.tso_ctx_fail: 0 +dev.ohci.0.%desc: OHCI (generic) USB controller +dev.ohci.0.%driver: ohci +dev.ohci.0.%location: slot=6 function=0 +dev.ohci.0.%pnpinfo: vendor=0x106b device=0x003f subvendor=0x0000 subdevice=0x0000 class=0x0c0310 +dev.ohci.0.%parent: pci0 +dev.usbus.0.%desc: OHCI (generic) USB controller +dev.usbus.0.%driver: usbus +dev.usbus.0.%parent: ohci0 +dev.acpi_acad.0.%desc: AC Adapter +dev.acpi_acad.0.%driver: acpi_acad +dev.acpi_acad.0.%location: handle=\_SB_.PCI0.AC__ +dev.acpi_acad.0.%pnpinfo: _HID=ACPI0003 _UID=0 +dev.acpi_acad.0.%parent: acpi0 +dev.atkbdc.0.%desc: Keyboard controller (i8042) +dev.atkbdc.0.%driver: atkbdc +dev.atkbdc.0.%location: handle=\_SB_.PCI0.SBRG.PS2K +dev.atkbdc.0.%pnpinfo: _HID=PNP0303 _UID=0 +dev.atkbdc.0.%parent: acpi0 +dev.atkbd.0.%desc: AT Keyboard +dev.atkbd.0.%driver: atkbd +dev.atkbd.0.%parent: atkbdc0 +dev.atdma.0.%desc: AT DMA controller +dev.atdma.0.%driver: atdma +dev.atdma.0.%location: handle=\_SB_.PCI0.SBRG.DMAC +dev.atdma.0.%pnpinfo: _HID=PNP0200 _UID=0 +dev.atdma.0.%parent: acpi0 +dev.psmcpnp.0.%desc: PS/2 mouse port +dev.psmcpnp.0.%driver: psmcpnp +dev.psmcpnp.0.%location: handle=\_SB_.PCI0.SBRG.PS2M +dev.psmcpnp.0.%pnpinfo: _HID=PNP0F03 _UID=0 +dev.psmcpnp.0.%parent: acpi0 +dev.psm.0.%desc: PS/2 Mouse +dev.psm.0.%driver: psm +dev.psm.0.%parent: atkbdc0 +dev.attimer.0.%desc: AT timer +dev.attimer.0.%driver: attimer +dev.attimer.0.%location: handle=\_SB_.PCI0.SBRG.TIMR +dev.attimer.0.%pnpinfo: _HID=PNP0100 _UID=0 +dev.attimer.0.%parent: acpi0 +dev.atpic.0.%desc: AT interrupt controller +dev.atpic.0.%driver: atpic +dev.atpic.0.%location: handle=\_SB_.PCI0.SBRG.PIC_ +dev.atpic.0.%pnpinfo: _HID=PNP0000 _UID=0 +dev.atpic.0.%parent: acpi0 +dev.pmtimer.0.%driver: pmtimer +dev.pmtimer.0.%parent: isa0 +dev.orm.0.%desc: ISA Option ROMs +dev.orm.0.%driver: orm +dev.orm.0.%pnpinfo: pnpid=ORM0000 +dev.orm.0.%parent: isa0 +dev.sc.0.%desc: System console +dev.sc.0.%driver: sc +dev.sc.0.%parent: isa0 +dev.vga.0.%desc: Generic ISA VGA +dev.vga.0.%driver: vga +dev.vga.0.%parent: isa0 +dev.atrtc.0.%desc: AT Real Time Clock +dev.atrtc.0.%driver: atrtc +dev.atrtc.0.%parent: isa0 +dev.ad.0.%desc: VBOX HARDDISK/1.0 +dev.ad.0.%driver: ad +dev.ad.0.%parent: ata0 +dev.subdisk.0.%driver: subdisk +dev.subdisk.0.%parent: ad0 +dev.uhub.0.%desc: Apple OHCI root HUB, class 9/0, rev 1.00/1.00, addr 1 +dev.uhub.0.%driver: uhub +dev.uhub.0.%parent: usbus0 +dev.acd.0.%desc: VBOX CD-ROM/1.0 +dev.acd.0.%driver: acd +dev.acd.0.%parent: ata1 +dev.umass.0.%desc: vendor 0x18a5 product 0x0304, class 0/0, rev 1.10/1.00, addr 2 +dev.umass.0.%driver: umass +dev.umass.0.%location: bus=1 hubaddr=1 port=0 devaddr=2 interface=0 +dev.umass.0.%pnpinfo: vendor=0x18a5 product=0x0304 devclass=0x00 devsubclass=0x00 sernum="11110455005634" release=0x0100 intclass=0x08 intsubclass=0x06 +dev.umass.0.%parent: uhub0 +hptmv.status: RocketRAID 18xx SATA Controller driver Version v1.16 + diff --git a/t/pt-summary/samples/BSD/freebsd_001/vmstat b/t/pt-summary/samples/BSD/freebsd_001/vmstat new file mode 100644 index 00000000..cae15dd7 --- /dev/null +++ b/t/pt-summary/samples/BSD/freebsd_001/vmstat @@ -0,0 +1,7 @@ + procs memory page disks faults cpu + r b w avm fre flt re pi po fr sr ad0 da0 in sy cs us sy id + 1 0 0 63720 339504 1158 0 0 0 1022 0 0 0 246 1201 336 22 15 63 + 0 0 0 58164 339792 7924 0 0 0 6663 0 4 3 242 5829 744 15 71 14 + 0 0 0 58164 339792 0 0 0 0 0 0 0 0 230 107 231 0 9 91 + 0 0 0 58164 339792 0 0 0 0 0 0 0 0 230 107 229 0 3 97 + 0 0 0 58164 339792 0 0 0 0 0 0 0 0 231 115 229 0 5 95 diff --git a/t/pt-summary/samples/BSD/netbsd_001/mounted_fs b/t/pt-summary/samples/BSD/netbsd_001/mounted_fs new file mode 100644 index 00000000..ff0b989f --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/mounted_fs @@ -0,0 +1,5 @@ +/dev/sd0e 3.8G 17M 3.7G 0% /mnt/usb on /mnt/usb type msdos (local) +/dev/wd0a 1.8G 545M 1.2G 30% / on / type ffs (local) +kernfs 1.0K 1.0K 0B 100% /kern on /kern type kernfs (local) +procfs 4.0K 4.0K 0B 100% /proc on /proc type procfs (local) +ptyfs 1.0K 1.0K 0B 100% /dev/pts on /dev/pts type ptyfs (local) diff --git a/t/pt-summary/samples/BSD/netbsd_001/notable_procs b/t/pt-summary/samples/BSD/netbsd_001/notable_procs new file mode 100644 index 00000000..12d2fbe6 --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/notable_procs @@ -0,0 +1,2 @@ + PID OOM COMMAND + ? ? sshd doesn't appear to be running diff --git a/t/pt-summary/samples/BSD/netbsd_001/proc_cpuinfo_copy b/t/pt-summary/samples/BSD/netbsd_001/proc_cpuinfo_copy new file mode 100644 index 00000000..ce637218 --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/proc_cpuinfo_copy @@ -0,0 +1,14 @@ +processor : 0 +vendor_id : AuthenticAMD +cpu family : 15 +model : 11 +model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4000+ +stepping : 1 +cpu MHz : 2178.48 +fdiv_bug : no +fpu : yes +fpu_exception : yes +cpuid level : 1 +wp : yes +flags : fpu vme de pse tsc msr mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 + diff --git a/t/pt-summary/samples/BSD/netbsd_001/proc_cpuinfo_copy.unq b/t/pt-summary/samples/BSD/netbsd_001/proc_cpuinfo_copy.unq new file mode 100644 index 00000000..e69de29b diff --git a/t/pt-summary/samples/BSD/netbsd_001/processes b/t/pt-summary/samples/BSD/netbsd_001/processes new file mode 100644 index 00000000..1c160999 --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/processes @@ -0,0 +1,10 @@ + PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND + 0 root 124 0 0K 20M syncer 0:01 0.00% 0.00% [system] + 3922 root 43 0 2976K 984K CPU 0:00 0.00% 0.00% top + 277 root 85 0 5592K 2232K wait 0:00 0.00% 0.00% login + 279 root 85 0 5592K 2164K wait 0:00 0.00% 0.00% login + 3501 root 85 0 2836K 1396K pause 0:00 0.00% 0.00% ksh + 284 root 85 0 2960K 1192K wait 0:00 0.00% 0.00% sh + 1957 root 85 0 2960K 1164K ttyraw 0:00 0.00% 0.00% sh + 116 root 85 0 2940K 1016K kqueue 0:00 0.00% 0.00% syslogd + 272 root 85 0 2920K 940K ttyraw 0:00 0.00% 0.00% getty diff --git a/t/pt-summary/samples/BSD/netbsd_001/raid-controller b/t/pt-summary/samples/BSD/netbsd_001/raid-controller new file mode 100644 index 00000000..e69de29b diff --git a/t/pt-summary/samples/BSD/netbsd_001/summary b/t/pt-summary/samples/BSD/netbsd_001/summary new file mode 100644 index 00000000..f9bab3cf --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/summary @@ -0,0 +1,10 @@ +platform NetBSD +hostname +uptime 43 mins, 2 users, load averages: 0.00, 0.00, 0.00 +kernel 501000200 +release 5.1.2 +CPU_ARCH 32-bit +OS_ARCH 32-bit +virt No virtualization detected +rss 11063296 +raid_controller No RAID controller detected diff --git a/t/pt-summary/samples/BSD/netbsd_001/swapctl b/t/pt-summary/samples/BSD/netbsd_001/swapctl new file mode 100644 index 00000000..eaa9f4cf --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/swapctl @@ -0,0 +1 @@ +total: 132024 blocks allocated = 0 blocks used, 132024 blocks available diff --git a/t/pt-summary/samples/BSD/netbsd_001/sysctl b/t/pt-summary/samples/BSD/netbsd_001/sysctl new file mode 100644 index 00000000..5e23726b --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/sysctl @@ -0,0 +1,511 @@ +kern.ostype = NetBSD +kern.osrelease = 5.1.2 +kern.osrevision = 501000200 +kern.version = NetBSD 5.1.2 (GENERIC) #0: Thu Feb 2 17:22:10 UTC 2012 + builds@b6.netbsd.org:/home/builds/ab/netbsd-5-1-2-RELEASE/i386/201202021012Z-obj/home/builds/ab/netbsd-5-1-2-RELEASE/src/sys/arch/i386/compile/GENERIC + +kern.maxvnodes = 6530 +kern.maxproc = 1044 +kern.maxfiles = 3404 +kern.argmax = 262144 +kern.securelevel = -1 +kern.hostname = +kern.hostid = 0 +kern.clockrate: tick = 10000, tickadj = 40, hz = 100, profhz = 100, stathz = 100 +kern.posix1version = 199009 +kern.ngroups = 16 +kern.job_control = 1 +kern.saved_ids = 0 +kern.boottime = Fri Mar 23 01:24:16 2012 +kern.domainname = +kern.maxpartitions = 16 +kern.rawpartition = 3 +kern.rtc_offset = 0 +kern.root_device = wd0 +kern.msgbufsize = 32752 +kern.fsync = 1 +kern.synchronized_io = 1 +kern.iov_max = 1024 +kern.mbuf.msize = 256 +kern.mbuf.mclbytes = 2048 +kern.mbuf.nmbclusters = 1024 +kern.mbuf.mblowat = 16 +kern.mbuf.mcllowat = 8 +kern.mapped_files = 1 +kern.memlock = 1 +kern.memlock_range = 1 +kern.memory_protection = 1 +kern.login_name_max = 17 +kern.defcorename = %n.core +kern.logsigexit = 0 +kern.fscale = 2048 +kern.ccpu = 1948 +kern.cp_time: user = 468, nice = 0, sys = 3363, intr = 514, idle = 252688 +kern.consdev = ttyE0 +kern.maxptys = 992 +kern.pipe.maxkvasz = 8388608 +kern.pipe.maxloankvasz = 16777216 +kern.pipe.maxbigpipes = 32 +kern.pipe.nbigpipes = 0 +kern.pipe.kvasize = 81920 +kern.maxphys = 65536 +kern.sbmax = 262144 +kern.tkstat.nin = 6083 +kern.tkstat.nout = 264964 +kern.tkstat.cancc = 35 +kern.tkstat.rawcc = 6048 +kern.monotonic_clock = 200112 +kern.urandom = -1532632937 +kern.labelsector = 1 +kern.labeloffset = 0 +kern.forkfsleep = 0 +kern.posix_threads = 200112 +kern.posix_semaphores = 200112 +kern.posix_barriers = 200112 +kern.posix_timers = 200112 +kern.posix_spin_locks = 200112 +kern.posix_reader_writer_locks = 200112 +kern.dump_on_panic = 1 +kern.somaxkva = 16777216 +kern.root_partition = 0 +kern.drivers = [160 -1 crypto], [161 -1 pf], [163 163 fss], [164 -1 pps], [165 -1 ptm], [166 -1 atabus], [167 -1 drvctl], [168 168 dk], [169 -1 tap], [170 -1 veriexec], [171 -1 fw], [172 -1 ucycom], [173 -1 gpio], [174 -1 utoppy], [175 -1 bthub], [176 -1 amr], [177 -1 lockstat], [178 -1 putter], [179 -1 srt], [180 -1 drm], [181 -1 bio], [187 -1 twa], [188 -1 cpuctl], [189 -1 pad], [190 -1 zfs], [191 -1 tprof], [192 -1 isv], [193 -1 video], [195 -1 hdaudio], [0 -1 cons], [1 -1 ctty], [2 -1 mem], [3 0 wd], [4 1 swap], [5 -1 pts], [6 -1 ptc], [7 -1 log], [8 -1 com], [9 2 fd], [10 3 wt], [12 -1 pc], [13 4 sd], [14 5 st], [15 6 cd], [16 -1 lpt], [17 -1 ch], [18 16 ccd], [19 -1 ss], [20 -1 uk], [21 -1 apm], [22 -1 filedesc], [23 -1 bpf], [24 17 md], [26 -1 joy], [27 -1 spkr], [28 -1 lkm], [38 -1 cy], [39 7 mcd], [40 -1 tun], [41 14 vnd], [42 -1 audio], [43 -1 svr4_net], [44 -1 ipl], [45 -1 satlink], [46 -1 rnd], [47 -1 wsdisplay], [48 -1 wskbd], [49 -1 wsmouse], [50 -1 isdn], [51 -1 isdnctl], [52 -1 isdnbchan], [53 -1 isdntrc], [54 -1 isdntel], [55 -1 usb], [56 -1 uhid], [57 -1 ulpt], [58 -1 midi], [59 -1 sequencer], [60 -1 vcoda], [61 -1 scsibus], [62 18 raid], [63 -1 esh], [64 -1 ugen], [65 -1 wsmux], [66 -1 ucom], [67 -1 sysmon], [68 -1 vmegeneric], [69 19 ld], [70 -1 urio], [71 -1 bktr], [73 -1 cz], [74 -1 ses], [75 -1 uscanner], [76 -1 iop], [77 -1 altq], [78 -1 mlx], [79 20 ed], [80 -1 mly], [81 -1 wsfont], [82 -1 agp], [83 -1 pci], [84 -1 dpti], [85 -1 irframe], [86 -1 cir], [87 -1 radio], [88 -1 cmos], [89 -1 clockctl], [91 -1 kttcp], [92 -1 dmoverio], [93 21 cgd], [96 -1 dpt], [97 -1 twe], [98 -1 nsmb], [99 -1 vmmon], [100 -1 vmnet], [101 -1 ksyms], [102 -1 icp], [103 -1 gpib], [104 -1 ppi], [105 22 rd], [106 23 ct], [107 24 mt], [141 -1 xenevt], [142 142 xbd], [143 -1 xencons] +kern.cp_id: 0 = 0 +kern.hardclock_ticks = 257034 +kern.arandom = -529641035 +kern.ipc.sysvmsg = 1 +kern.ipc.sysvsem = 1 +kern.ipc.sysvshm = 1 +kern.ipc.shmmax = 8388608 +kern.ipc.shmmni = 128 +kern.ipc.shmseg = 128 +kern.ipc.shmmaxpgs = 2048 +kern.ipc.shm_use_phys = 0 +kern.ipc.msgmni = 40 +kern.ipc.msgseg = 2048 +kern.ipc.semmni = 10 +kern.ipc.semmns = 60 +kern.ipc.semmnu = 30 +kern.usercrypto = 1 +kern.userasymcrypto = 1 +kern.cryptodevallowsoft = 1 +kern.veriexec.verbose = 0 +kern.veriexec.strict = 0 +kern.veriexec.algorithms = RMD160 SHA256 SHA384 SHA512 SHA1 MD5 +kern.coredump.setid.dump = 0 +kern.coredump.setid.path = /var/crash/%n.core +kern.coredump.setid.owner = 0 +kern.coredump.setid.group = 0 +kern.coredump.setid.mode = 0600 (rw------- ) +kern.no_sa_support = 1 +kern.sched.cacheht_time = 0 +kern.sched.balance_period = 30 +kern.sched.min_catch = 1 +kern.sched.timesoftints = 0 +kern.sched.kpreempt_pri = 128 +kern.sched.upreempt_pri = 64 +kern.sched.name = 4.4BSD +kern.sched.rtts = 100 +kern.sched.pri_min = 0 +kern.sched.pri_max = 63 +kern.timecounter.choice = TSC(q=-100, f=2178480550 Hz) clockinterrupt(q=0, f=100 Hz) ACPI-Safe(q=900, f=3579545 Hz) i8254(q=100, f=1193182 Hz) dummy(q=-1000000, f=1000000 Hz) +kern.timecounter.hardware = ACPI-Safe +kern.timecounter.timestepwarnings = 0 +kern.bufq.strategies = disksort fcfs priocscan +kern.posix_aio = 200112 +kern.aio_listio_max = 512 +kern.aio_max = 8192 +kern.posix_msg = 200112 +kern.mqueue.mq_open_max = 512 +kern.mqueue.mq_prio_max = 32 +kern.mqueue.mq_max_msgsize = 16384 +kern.mqueue.mq_def_maxmsg = 32 +kern.mqueue.mq_max_maxmsg = 512 +kern.pset.psets_max = 32 +kern.pset.list = 0:1 +kern.posix_sched = 200112 +kern.posix.semmax = 128 +kern.osreldate = 501000200 +vm.loadavg: 0.00 0.00 0.00 +vm.nkmempages = 32655 +vm.maxslp = 20 +vm.uspace = 8192 +vm.idlezero = 1 +vm.anonmin = 10 +vm.filemin = 10 +vm.execmin = 5 +vm.anonmax = 80 +vm.filemax = 50 +vm.execmax = 30 +vm.inactivepct = 33 +vm.bufcache = 15 +vm.bufmem = 6348800 +vm.bufmem_lowater = 2507776 +vm.bufmem_hiwater = 20062208 +vm.swapout = 1 +vfs.generic.maxtypenum = 10 +vfs.generic.usermount = 0 +vfs.generic.magiclinks = 0 +vfs.generic.fstypes = mfs lfs ffs ext2fs nfs umap procfs portal overlay null kernfs fdesc union tmpfs smbfs puffs ptyfs ntfs msdos cd9660 coda +vfs.generic.dirhash.memused = 0 +vfs.generic.dirhash.maxmem = 1048576 +vfs.ffs.log_changeopt = 0 +vfs.nfs.iothreads = -1 +vfs.lfs.flushindir = 1 +vfs.lfs.clean_vnhead = 0 +vfs.lfs.dostats = 1 +vfs.lfs.pagetrip = 0 +vfs.lfs.stats.segsused = 0 +vfs.lfs.stats.psegwrites = 0 +vfs.lfs.stats.psyncwrites = 0 +vfs.lfs.stats.pcleanwrites = 0 +vfs.lfs.stats.blocktot = 0 +vfs.lfs.stats.cleanblocks = 0 +vfs.lfs.stats.ncheckpoints = 0 +vfs.lfs.stats.nwrites = 0 +vfs.lfs.stats.nsync_writes = 0 +vfs.lfs.stats.wait_exceeded = 0 +vfs.lfs.stats.write_exceeded = 0 +vfs.lfs.stats.flush_invoked = 0 +vfs.lfs.stats.vflush_invoked = 0 +vfs.lfs.stats.clean_inlocked = 0 +vfs.lfs.stats.clean_vnlocked = 0 +vfs.lfs.stats.segs_reclaimed = 0 +vfs.lfs.ignore_lazy_sync = 1 +vfs.cd9660.utf8_joliet = 1 +vfs.sync.delay = 30 +vfs.sync.filedelay = 30 +vfs.sync.dirdelay = 15 +vfs.sync.metadelay = 10 +vfs.samba.version = 101013 +net.inet.ip.forwarding = 0 +net.inet.ip.redirect = 1 +net.inet.ip.ttl = 64 +net.inet.ip.forwsrcrt = 1 +net.inet.ip.directed-broadcast = 0 +net.inet.ip.allowsrcrt = 1 +net.inet.ip.subnetsarelocal = 1 +net.inet.ip.mtudisc = 1 +net.inet.ip.anonportmin = 49152 +net.inet.ip.anonportmax = 65535 +net.inet.ip.mtudisctimeout = 600 +net.inet.ip.hostzerobroadcast = 1 +net.inet.ip.gifttl = 30 +net.inet.ip.lowportmin = 600 +net.inet.ip.lowportmax = 1023 +net.inet.ip.maxfragpackets = 200 +net.inet.ip.grettl = 30 +net.inet.ip.checkinterface = 0 +net.inet.ip.ifq.len = 0 +net.inet.ip.ifq.maxlen = 256 +net.inet.ip.ifq.drops = 0 +net.inet.ip.random_id = 0 +net.inet.ip.do_loopback_cksum = 0 +net.inet.icmp.maskrepl = 0 +net.inet.icmp.returndatabytes = 8 +net.inet.icmp.errppslimit = 100 +net.inet.icmp.rediraccept = 1 +net.inet.icmp.redirtimeout = 600 +net.inet.tcp.rfc1323 = 1 +net.inet.tcp.sendspace = 32768 +net.inet.tcp.recvspace = 32768 +net.inet.tcp.mssdflt = 536 +net.inet.tcp.syn_cache_limit = 10255 +net.inet.tcp.syn_bucket_limit = 105 +net.inet.tcp.init_win = 0 +net.inet.tcp.mss_ifmtu = 0 +net.inet.tcp.sack.enable = 1 +net.inet.tcp.sack.maxholes = 32 +net.inet.tcp.sack.globalmaxholes = 1024 +net.inet.tcp.sack.globalholes = 0 +net.inet.tcp.win_scale = 1 +net.inet.tcp.timestamps = 1 +net.inet.tcp.compat_42 = 0 +net.inet.tcp.cwm = 0 +net.inet.tcp.cwm_burstsize = 4 +net.inet.tcp.ack_on_push = 0 +net.inet.tcp.keepidle = 14400 +net.inet.tcp.keepintvl = 150 +net.inet.tcp.keepcnt = 8 +net.inet.tcp.slowhz = 2 +net.inet.tcp.log_refused = 0 +net.inet.tcp.rstppslimit = 100 +net.inet.tcp.delack_ticks = 20 +net.inet.tcp.init_win_local = 4 +net.inet.tcp.do_loopback_cksum = 0 +net.inet.tcp.msl = 30 +net.inet.tcp.minmss = 216 +net.inet.tcp.congctl.available = reno newreno +net.inet.tcp.congctl.selected = newreno +net.inet.tcp.keepinit = 150 +net.inet.tcp.recvbuf_auto = 0 +net.inet.tcp.recvbuf_inc = 16384 +net.inet.tcp.recvbuf_max = 262144 +net.inet.tcp.sendbuf_auto = 0 +net.inet.tcp.sendbuf_inc = 8192 +net.inet.tcp.sendbuf_max = 262144 +net.inet.tcp.ecn.enable = 0 +net.inet.tcp.ecn.maxretries = 1 +net.inet.tcp.iss_hash = 0 +net.inet.tcp.abc.enable = 1 +net.inet.tcp.abc.aggressive = 1 +net.inet.udp.checksum = 1 +net.inet.udp.sendspace = 9216 +net.inet.udp.recvspace = 41600 +net.inet.udp.do_loopback_cksum = 0 +net.inet.arp.prune = 300 +net.inet.arp.keep = 1200 +net.inet.arp.down = 20 +net.inet.arp.refresh = 300 +net.inet.accf.http.parsehttpversion = 1 +net.link.ieee80211.debug = 0 +net.link.ieee80211.rssadapt.debug = 0 +net.inet6.tcp6.rfc1323 = 1 +net.inet6.tcp6.sendspace = 32768 +net.inet6.tcp6.recvspace = 32768 +net.inet6.tcp6.mssdflt = 536 +net.inet6.tcp6.syn_cache_limit = 10255 +net.inet6.tcp6.syn_bucket_limit = 105 +net.inet6.tcp6.init_win = 0 +net.inet6.tcp6.mss_ifmtu = 0 +net.inet6.tcp6.sack.enable = 1 +net.inet6.tcp6.sack.maxholes = 32 +net.inet6.tcp6.sack.globalmaxholes = 1024 +net.inet6.tcp6.sack.globalholes = 0 +net.inet6.tcp6.win_scale = 1 +net.inet6.tcp6.timestamps = 1 +net.inet6.tcp6.compat_42 = 0 +net.inet6.tcp6.cwm = 0 +net.inet6.tcp6.cwm_burstsize = 4 +net.inet6.tcp6.ack_on_push = 0 +net.inet6.tcp6.keepidle = 14400 +net.inet6.tcp6.keepintvl = 150 +net.inet6.tcp6.keepcnt = 8 +net.inet6.tcp6.slowhz = 2 +net.inet6.tcp6.log_refused = 0 +net.inet6.tcp6.rstppslimit = 100 +net.inet6.tcp6.delack_ticks = 20 +net.inet6.tcp6.init_win_local = 4 +net.inet6.tcp6.do_loopback_cksum = 0 +net.inet6.tcp6.msl = 30 +net.inet6.tcp6.minmss = 216 +net.inet6.tcp6.congctl.available = reno newreno +net.inet6.tcp6.congctl.selected = newreno +net.inet6.tcp6.keepinit = 150 +net.inet6.tcp6.recvbuf_auto = 0 +net.inet6.tcp6.recvbuf_inc = 16384 +net.inet6.tcp6.recvbuf_max = 262144 +net.inet6.tcp6.sendbuf_auto = 0 +net.inet6.tcp6.sendbuf_inc = 8192 +net.inet6.tcp6.sendbuf_max = 262144 +net.inet6.tcp6.ecn.enable = 0 +net.inet6.tcp6.ecn.maxretries = 1 +net.inet6.tcp6.iss_hash = 0 +net.inet6.tcp6.abc.enable = 1 +net.inet6.tcp6.abc.aggressive = 1 +net.inet6.udp6.sendspace = 9216 +net.inet6.udp6.recvspace = 42080 +net.inet6.udp6.do_loopback_cksum = 0 +net.inet6.ip6.forwarding = 0 +net.inet6.ip6.redirect = 1 +net.inet6.ip6.hlim = 64 +net.inet6.ip6.maxfragpackets = 200 +net.inet6.ip6.accept_rtadv = 0 +net.inet6.ip6.keepfaith = 0 +net.inet6.ip6.log_interval = 5 +net.inet6.ip6.hdrnestlimit = 50 +net.inet6.ip6.dad_count = 1 +net.inet6.ip6.auto_flowlabel = 1 +net.inet6.ip6.defmcasthlim = 1 +net.inet6.ip6.gifhlim = 30 +net.inet6.ip6.kame_version = NetBSD-current +net.inet6.ip6.use_deprecated = 1 +net.inet6.ip6.rr_prune = 5 +net.inet6.ip6.v6only = 1 +net.inet6.ip6.anonportmin = 49152 +net.inet6.ip6.anonportmax = 65535 +net.inet6.ip6.lowportmin = 600 +net.inet6.ip6.lowportmax = 1023 +net.inet6.ip6.use_defaultzone = 0 +net.inet6.ip6.maxfrags = 200 +net.inet6.ip6.ifq.len = 0 +net.inet6.ip6.ifq.maxlen = 256 +net.inet6.ip6.ifq.drops = 0 +net.inet6.ip6.use_tempaddr = 0 +net.inet6.ip6.temppltime = 86400 +net.inet6.ip6.tempvltime = 604800 +net.inet6.ip6.mcast_pmtu = 0 +net.inet6.icmp6.rediraccept = 1 +net.inet6.icmp6.redirtimeout = 600 +net.inet6.icmp6.nd6_prune = 1 +net.inet6.icmp6.nd6_delay = 5 +net.inet6.icmp6.nd6_umaxtries = 3 +net.inet6.icmp6.nd6_mmaxtries = 3 +net.inet6.icmp6.nd6_useloopback = 1 +net.inet6.icmp6.nodeinfo = 1 +net.inet6.icmp6.errppslimit = 100 +net.inet6.icmp6.nd6_maxnudhint = 0 +net.inet6.icmp6.mtudisc_hiwat = 1280 +net.inet6.icmp6.mtudisc_lowat = 256 +net.inet6.icmp6.nd6_debug = 0 +net.inet6.icmp6.maxqueuelen = 1 +net.bluetooth.hci.sendspace = 259 +net.bluetooth.hci.recvspace = 4096 +net.bluetooth.hci.acl_expiry = 10 +net.bluetooth.hci.memo_expiry = 600 +net.bluetooth.hci.eventq_max = 20 +net.bluetooth.hci.aclrxq_max = 50 +net.bluetooth.hci.scorxq_max = 50 +net.bluetooth.l2cap.sendspace = 4096 +net.bluetooth.l2cap.recvspace = 4096 +net.bluetooth.l2cap.rtx = 30 +net.bluetooth.l2cap.ertx = 180 +net.bluetooth.rfcomm.sendspace = 4096 +net.bluetooth.rfcomm.recvspace = 4096 +net.bluetooth.rfcomm.mtu_default = 127 +net.bluetooth.rfcomm.ack_timeout = 20 +net.bluetooth.rfcomm.mcc_timeout = 20 +net.bluetooth.sco.sendspace = 4096 +net.bluetooth.sco.recvspace = 4096 +net.bpf.maxbufsize = 1048576 +hw.machine = i386 +hw.model = AMD 686-class +hw.ncpu = 1 +hw.byteorder = 1234 +hw.physmem = 133754880 +hw.usermem = 133369856 +hw.pagesize = 4096 +hw.disknames = wd0 cd0 md0 sd0 +hw.machine_arch = i386 +hw.alignbytes = 3 +hw.cnmagic = \x27\x02 +hw.physmem64 = 133754880 +hw.usermem64 = 133369856 +hw.iostatnames = wd0 cd0 md0 sd0 +hw.ncpuonline = 1 +hw.ath.hal.dma_brt = 2 +hw.ath.hal.sw_brt = 10 +hw.ath.hal.swba_backoff = 0 +hw.ath.dwell = 200 +hw.ath.calibrate = 30 +hw.ath.outdoor = 1 +hw.ath.countrycode = 0 +hw.ath.regdomain = 0 +hw.ath.debug = 0 +hw.ath.rxbuf = 40 +hw.ath.txbuf = 200 +hw.rtw.rfprog_fallback = 0 +hw.rtw.host_rfio = 0 +hw.firmware.path = /libdata/firmware:/usr/libdata/firmware:/usr/pkg/libdata/firmware:/usr/pkg/libdata +hw.bge.rx_lvl = 0 +hw.ipw.accept_eula = 0 +hw.iwi.accept_eula = 0 +hw.fwohci.nocyclemaster = 0 +hw.fwohci.phydma_enable = 1 +hw.ieee1394if.try_bmr = 1 +hw.ieee1394if.hold_count = 3 +hw.ieee1394if.ieee1394_debug = 0 +hw.fwmem.eui64_hi = 0 +hw.fwmem.eui64_lo = 0 +hw.fwmem.speed = 2 +hw.fwmem.fwmem_debug = 0 +hw.fwip.rx_queue_len = 256 +hw.fwip.if_fwip_debug = 0 +hw.sbp.auto_login = 1 +hw.sbp.max_speed = -1 +hw.sbp.exclusive_login = 1 +hw.sbp.login_delay = 1000 +hw.sbp.scan_delay = 500 +hw.sbp.use_doorbell = 0 +hw.sbp.tags = 0 +hw.sbp.sbp_debug = 0 +hw.acpi.root = 917504 +hw.acpi.supported_states = S0 S1 S4 S5 +hw.auich0.ac97rate = 48000 +machdep.biosbasemem = 639 +machdep.biosextmem = 130048 +machdep.booted_kernel = netbsd +machdep.diskinfo: 80:4194304(520/128/63),2 wd0:80 +machdep.fpu_present = 1 +machdep.osfxsr = 1 +machdep.sse = 1 +machdep.sse2 = 1 +machdep.idle-mechanism = halt +machdep.acpi_vbios_reset = 1 +machdep.acpi_beep_on_reset = 0 +machdep.cpu_brand = AMD Athlon(tm) 64 X2 Dual Core Processor 4000+ +machdep.sparse_dump = 1 +machdep.tsc_freq = 2178480550 +machdep.sleep_state = 0 +machdep.acpiapm.standby = 1 +machdep.acpiapm.suspend = 3 +user.cs_path = /usr/bin:/bin:/usr/sbin:/sbin:/usr/pkg/bin:/usr/pkg/sbin:/usr/local/bin:/usr/local/sbin +user.bc_base_max = 2147483647 +user.bc_dim_max = 65535 +user.bc_scale_max = 2147483647 +user.bc_string_max = 2147483647 +user.coll_weights_max = 2 +user.expr_nest_max = 32 +user.line_max = 2048 +user.re_dup_max = 255 +user.posix2_version = 199212 +user.posix2_c_bind = 1 +user.posix2_c_dev = 0 +user.posix2_char_term = 0 +user.posix2_fort_dev = 0 +user.posix2_fort_run = 0 +user.posix2_localedef = 0 +user.posix2_sw_dev = 0 +user.posix2_upe = 0 +user.stream_max = 20 +user.tzname_max = 255 +user.atexit_max = -1 +ddb.radix = 16 +ddb.maxoff = 1048576 +ddb.maxwidth = 80 +ddb.lines = 24 +ddb.tabstops = 8 +ddb.onpanic = 0 +ddb.fromconsole = 1 +ddb.tee_msgbuf = 0 +ddb.commandonenter = +proc.curproc.corename = %n.core +proc.curproc.rlimit.cputime.soft = unlimited +proc.curproc.rlimit.cputime.hard = unlimited +proc.curproc.rlimit.filesize.soft = unlimited +proc.curproc.rlimit.filesize.hard = unlimited +proc.curproc.rlimit.datasize.soft = 268435456 +proc.curproc.rlimit.datasize.hard = 3221225472 +proc.curproc.rlimit.stacksize.soft = 2097152 +proc.curproc.rlimit.stacksize.hard = 67108864 +proc.curproc.rlimit.coredumpsize.soft = unlimited +proc.curproc.rlimit.coredumpsize.hard = unlimited +proc.curproc.rlimit.memoryuse.soft = 118378496 +proc.curproc.rlimit.memoryuse.hard = 118378496 +proc.curproc.rlimit.memorylocked.soft = 39459498 +proc.curproc.rlimit.memorylocked.hard = 118378496 +proc.curproc.rlimit.maxproc.soft = 160 +proc.curproc.rlimit.maxproc.hard = 1044 +proc.curproc.rlimit.descriptors.soft = 128 +proc.curproc.rlimit.descriptors.hard = 3404 +proc.curproc.rlimit.sbsize.soft = unlimited +proc.curproc.rlimit.sbsize.hard = unlimited +proc.curproc.rlimit.vmemoryuse.soft = unlimited +proc.curproc.rlimit.vmemoryuse.hard = unlimited +proc.curproc.stopfork = 0 +proc.curproc.stopexec = 0 +proc.curproc.stopexit = 0 +emul.linux.kern.ostype = Linux +emul.linux.kern.osrelease = 2.4.18 +emul.linux.kern.osversion = #0 Wed Feb 20 20:00:02 CET 2002 +security.curtain = 0 +security.models.bsd44.name = Traditional NetBSD (4.4BSD) +security.models.bsd44.securelevel = -1 +security.models.bsd44.curtain = 0 +security.pax.mprotect.enabled = 1 +security.pax.mprotect.global = 0 +security.pax.aslr.enabled = 1 +security.pax.aslr.global = 0 +security.pax.aslr.mmap_len = 16 +security.pax.aslr.stack_len = 12 +security.pax.aslr.exec_len = 12 +init.root = / diff --git a/t/pt-summary/samples/BSD/netbsd_001/vmstat b/t/pt-summary/samples/BSD/netbsd_001/vmstat new file mode 100644 index 00000000..f689325d --- /dev/null +++ b/t/pt-summary/samples/BSD/netbsd_001/vmstat @@ -0,0 +1,7 @@ + procs memory page disks faults cpu + r b w avm fre flt re pi po fr sr w0 c0 in sy cs us sy id + 2 0 0 78624 21544 103 0 0 0 0 0 6 0 113 154 33 0 2 98 + 2 0 0 78652 21260 12425 0 0 0 0 0 0 0 92 6208 355 12 84 4 + 0 0 0 78564 21364 1208 0 0 0 0 0 0 0 98 806 43 2 9 89 + 0 0 0 78564 21364 0 0 0 0 0 0 0 0 101 11 9 0 0 100 + 0 0 0 78564 21364 0 0 0 0 0 0 0 0 101 11 10 0 0 100 diff --git a/t/pt-summary/samples/BSD/openbsd_001/mounted_fs b/t/pt-summary/samples/BSD/openbsd_001/mounted_fs new file mode 100644 index 00000000..d70e0de8 --- /dev/null +++ b/t/pt-summary/samples/BSD/openbsd_001/mounted_fs @@ -0,0 +1,4 @@ +/dev/sd0i 3.8G 17.6M 3.7G 0% /mnt/usb on /mnt/usb type msdos (local, long) +/dev/wd0a 788M 42.5M 706M 6% / on / type ffs (local) +/dev/wd0d 893M 406M 443M 48% /usr on /usr type ffs (local, nodev) +/dev/wd0e 252M 87.9M 151M 37% /home on /home type ffs (local, nodev, nosuid) diff --git a/t/pt-summary/samples/BSD/openbsd_001/notable_procs b/t/pt-summary/samples/BSD/openbsd_001/notable_procs new file mode 100644 index 00000000..12d2fbe6 --- /dev/null +++ b/t/pt-summary/samples/BSD/openbsd_001/notable_procs @@ -0,0 +1,2 @@ + PID OOM COMMAND + ? ? sshd doesn't appear to be running diff --git a/t/pt-summary/samples/BSD/openbsd_001/processes b/t/pt-summary/samples/BSD/openbsd_001/processes new file mode 100644 index 00000000..59b377e1 --- /dev/null +++ b/t/pt-summary/samples/BSD/openbsd_001/processes @@ -0,0 +1,10 @@ + PID USERNAME PRI NICE SIZE RES STATE WAIT TIME CPU COMMAND +22422 root 18 0 888K 1012K sleep pause 0:00 0.93% sh +20216 _pflogd 4 0 528K 312K sleep bpf 0:01 0.00% pflogd +22982 root 2 0 1372K 1956K sleep select 0:00 0.00% sendmail +26829 root 18 0 544K 532K sleep pause 0:00 0.00% ksh +17299 _syslogd 2 0 524K 752K sleep poll 0:00 0.00% syslogd + 7254 root 2 0 508K 872K idle select 0:00 0.00% cron + 1 root 10 0 544K 324K idle wait 0:00 0.00% init +28237 root 2 0 500K 696K idle netio 0:00 0.00% syslogd +30259 root 3 0 408K 812K idle ttyin 0:00 0.00% getty diff --git a/t/pt-summary/samples/BSD/openbsd_001/raid-controller b/t/pt-summary/samples/BSD/openbsd_001/raid-controller new file mode 100644 index 00000000..e69de29b diff --git a/t/pt-summary/samples/BSD/openbsd_001/summary b/t/pt-summary/samples/BSD/openbsd_001/summary new file mode 100644 index 00000000..0410c922 --- /dev/null +++ b/t/pt-summary/samples/BSD/openbsd_001/summary @@ -0,0 +1,10 @@ +platform OpenBSD +hostname openbsd.my.domain +uptime 1:14, 1 user, load averages: 0.44, 0.20, 0.16 +kernel 201111 +release 5.0 +CPU_ARCH 32-bit +OS_ARCH 32-bit +virt No virtualization detected +rss 5541888 +raid_controller No RAID controller detected diff --git a/t/pt-summary/samples/BSD/openbsd_001/swapctl b/t/pt-summary/samples/BSD/openbsd_001/swapctl new file mode 100644 index 00000000..7bc1aabe --- /dev/null +++ b/t/pt-summary/samples/BSD/openbsd_001/swapctl @@ -0,0 +1 @@ +total: 166180 512-blocks allocated, 0 used, 166180 available diff --git a/t/pt-summary/samples/BSD/openbsd_001/sysctl b/t/pt-summary/samples/BSD/openbsd_001/sysctl new file mode 100644 index 00000000..248a2f4d --- /dev/null +++ b/t/pt-summary/samples/BSD/openbsd_001/sysctl @@ -0,0 +1,423 @@ +kern.ostype=OpenBSD +kern.osrelease=5.0 +kern.osrevision=201111 +kern.version=OpenBSD 5.0 (GENERIC) #43: Wed Aug 17 10:10:52 MDT 2011 + deraadt@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC + +kern.maxvnodes=5926 +kern.maxproc=1310 +kern.maxfiles=7030 +kern.argmax=262144 +kern.securelevel=1 +kern.hostname=openbsd.my.domain +kern.hostid=0 +kern.clockrate=tick = 10000, tickadj = 40, hz = 100, profhz = 1024, stathz = 128 +kern.posix1version=199009 +kern.ngroups=16 +kern.job_control=1 +kern.saved_ids=1 +kern.boottime=Fri Mar 23 04:49:37 2012 +kern.domainname= +kern.maxpartitions=16 +kern.rawpartition=2 +kern.osversion=GENERIC#43 +kern.somaxconn=128 +kern.sominconn=80 +kern.usermount=0 +kern.random=4510 5632 0 541070 11 0 0 0 0 0 0 0 555 45 9707 4 46 24 4 14 43 23 32 40 40 32 33 24 21 29 16 8 24 31 21 15 11 5 1 4 4 1 2 2 1 1 3 0 0 43 0 176 297 39 0 0 0 0 0 1902 2894 599 0 0 +kern.nosuidcoredump=1 +kern.fsync=1 +kern.sysvmsg=1 +kern.sysvsem=1 +kern.sysvshm=1 +kern.arandom=707436917 +kern.msgbufsize=16364 +kern.malloc.buckets=16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288 +kern.malloc.bucket.16=(calls = 63501 total_allocated = 2048 total_free = 1282 elements = 256 high watermark = 1280 could_free = 12) +kern.malloc.bucket.32=(calls = 8664 total_allocated = 640 total_free = 167 elements = 128 high watermark = 640 could_free = 0) +kern.malloc.bucket.64=(calls = 30537 total_allocated = 3584 total_free = 117 elements = 64 high watermark = 320 could_free = 1326) +kern.malloc.bucket.128=(calls = 1505 total_allocated = 288 total_free = 54 elements = 32 high watermark = 160 could_free = 0) +kern.malloc.bucket.256=(calls = 8450 total_allocated = 128 total_free = 27 elements = 16 high watermark = 80 could_free = 0) +kern.malloc.bucket.512=(calls = 3003 total_allocated = 176 total_free = 23 elements = 8 high watermark = 40 could_free = 0) +kern.malloc.bucket.1024=(calls = 693 total_allocated = 236 total_free = 6 elements = 4 high watermark = 20 could_free = 0) +kern.malloc.bucket.2048=(calls = 564 total_allocated = 526 total_free = 3 elements = 2 high watermark = 10 could_free = 0) +kern.malloc.bucket.4096=(calls = 279 total_allocated = 21 total_free = 1 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.bucket.8192=(calls = 15 total_allocated = 6 total_free = 1 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.bucket.16384=(calls = 5 total_allocated = 5 total_free = 0 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.bucket.32768=(calls = 5 total_allocated = 4 total_free = 0 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.bucket.65536=(calls = 3 total_allocated = 0 total_free = 0 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.bucket.131072=(calls = 3 total_allocated = 1 total_free = 0 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.bucket.262144=(calls = 0 total_allocated = 0 total_free = 0 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.bucket.524288=(calls = 0 total_allocated = 0 total_free = 0 elements = 1 high watermark = 5 could_free = 0) +kern.malloc.kmemnames=free,,devbuf,debug,pcb,routetbl,,fragtbl,,ifaddr,soopts,sysctl,,,ioctlops,,,,,iov,mount,,NFS_req,NFS_mount,,vnodes,namecache,UFS_quota,UFS_mount,shm,VM_map,sem,dirhash,ACPI,VM_pmap,,,,file,file_desc,,proc,subproc,VFS_cluster,,,MFS_node,,,Export_Host,NFS_srvsock,,NFS_daemon,ip_moptions,in_multi,ether_multi,mrt,ISOFS_mount,ISOFS_node,MSDOSFS_mount,MSDOSFS_fat,MSDOSFS_node,ttys,exec,miscfs_mount,,,,,,,,,,pfkey_data,tdb,xform_data,,pagedep,inodedep,newblk,,,indirdep,,,,,,,,,VM_swap,,,,,RAIDframe_data,UVM_amap,UVM_aobj,,USB,USB_device,USB_HC,,memdesc,,,crypto_data,,IPsec_creds,packet_tags,,,emuldata,,,,,,,,,ip6_options,NDP,,,temp,NTFS_mount,NTFS_node,NTFS_fnode,NTFS_dir,NTFS_hash,NTFS_attr,NTFS_data,NTFS_decomp,NTFS_vrun,kqueue,bluetooth,bwmeter,UDF_mount,UDF_file_entry,UDF_file_id,Bluetooth_HID,AGP_Memory,DRM +kern.malloc.kmemstat.free=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.devbuf=(inuse = 1158, calls = 2225, memuse = 1315K, limblocks = 0, mapblocks = 0, maxused = 1315K, limit = 39243K, spare = 0, sizes = (16,32,64,128,256,512,1024,2048,4096,8192,32768,65536)) +kern.malloc.kmemstat.debug=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.pcb=(inuse = 25, calls = 66, memuse = 5K, limblocks = 0, mapblocks = 0, maxused = 5K, limit = 39243K, spare = 0, sizes = (16,64,512)) +kern.malloc.kmemstat.routetbl=(inuse = 68, calls = 128, memuse = 5K, limblocks = 0, mapblocks = 0, maxused = 6K, limit = 39243K, spare = 0, sizes = (16,32,64,128,256,512)) +kern.malloc.kmemstat.fragtbl=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.ifaddr=(inuse = 41, calls = 41, memuse = 12K, limblocks = 0, mapblocks = 0, maxused = 12K, limit = 39243K, spare = 0, sizes = (32,128,256,512,4096)) +kern.malloc.kmemstat.soopts=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.sysctl=(inuse = 3, calls = 9, memuse = 2K, limblocks = 0, mapblocks = 0, maxused = 2K, limit = 39243K, spare = 0, sizes = (64,256,1024)) +kern.malloc.kmemstat.ioctlops=(inuse = 0, calls = 1453, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 4K, limit = 39243K, spare = 0, sizes = (256,512,1024,2048,4096)) +kern.malloc.kmemstat.iov=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.mount=(inuse = 12, calls = 14, memuse = 5K, limblocks = 0, mapblocks = 0, maxused = 5K, limit = 39243K, spare = 0, sizes = (128,1024)) +kern.malloc.kmemstat.NFS_req=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NFS_mount=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.vnodes=(inuse = 1285, calls = 1328, memuse = 81K, limblocks = 0, mapblocks = 0, maxused = 83K, limit = 39243K, spare = 0, sizes = (64,128)) +kern.malloc.kmemstat.namecache=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.UFS_quota=(inuse = 1, calls = 1, memuse = 16K, limblocks = 0, mapblocks = 0, maxused = 16K, limit = 39243K, spare = 0, sizes = (16384)) +kern.malloc.kmemstat.UFS_mount=(inuse = 13, calls = 13, memuse = 30K, limblocks = 0, mapblocks = 0, maxused = 30K, limit = 39243K, spare = 0, sizes = (16,512,2048,16384)) +kern.malloc.kmemstat.shm=(inuse = 2, calls = 2, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (256,512)) +kern.malloc.kmemstat.VM_map=(inuse = 2, calls = 2, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (256)) +kern.malloc.kmemstat.sem=(inuse = 2, calls = 2, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (32,64)) +kern.malloc.kmemstat.dirhash=(inuse = 24, calls = 27, memuse = 5K, limblocks = 0, mapblocks = 0, maxused = 5K, limit = 39243K, spare = 0, sizes = (16,32,64,512)) +kern.malloc.kmemstat.ACPI=(inuse = 2184, calls = 25703, memuse = 121K, limblocks = 0, mapblocks = 0, maxused = 204K, limit = 39243K, spare = 0, sizes = (16,32,64,128,512,1024)) +kern.malloc.kmemstat.VM_pmap=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.file=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.file_desc=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.proc=(inuse = 9, calls = 9, memuse = 5K, limblocks = 0, mapblocks = 0, maxused = 5K, limit = 39243K, spare = 0, sizes = (32,512,2048)) +kern.malloc.kmemstat.subproc=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.VFS_cluster=(inuse = 0, calls = 2, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (32)) +kern.malloc.kmemstat.MFS_node=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.Export_Host=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NFS_srvsock=(inuse = 1, calls = 1, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (64)) +kern.malloc.kmemstat.NFS_daemon=(inuse = 1, calls = 1, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (256)) +kern.malloc.kmemstat.ip_moptions=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.in_multi=(inuse = 24, calls = 24, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (16,32,64)) +kern.malloc.kmemstat.ether_multi=(inuse = 4, calls = 4, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (32)) +kern.malloc.kmemstat.mrt=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.ISOFS_mount=(inuse = 1, calls = 1, memuse = 16K, limblocks = 0, mapblocks = 0, maxused = 16K, limit = 39243K, spare = 0, sizes = (16384)) +kern.malloc.kmemstat.ISOFS_node=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.MSDOSFS_mount=(inuse = 2, calls = 4, memuse = 9K, limblocks = 0, mapblocks = 0, maxused = 9K, limit = 39243K, spare = 0, sizes = (512,8192)) +kern.malloc.kmemstat.MSDOSFS_fat=(inuse = 1, calls = 3, memuse = 124K, limblocks = 0, mapblocks = 0, maxused = 124K, limit = 39243K, spare = 0, sizes = (131072)) +kern.malloc.kmemstat.MSDOSFS_node=(inuse = 5, calls = 12, memuse = 2K, limblocks = 0, mapblocks = 0, maxused = 2K, limit = 39243K, spare = 0, sizes = (256)) +kern.malloc.kmemstat.ttys=(inuse = 408, calls = 408, memuse = 255K, limblocks = 0, mapblocks = 0, maxused = 255K, limit = 39243K, spare = 0, sizes = (128,512,1024)) +kern.malloc.kmemstat.exec=(inuse = 0, calls = 1090, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 2K, limit = 39243K, spare = 0, sizes = (16,256,512,1024)) +kern.malloc.kmemstat.miscfs_mount=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.pfkey_data=(inuse = 1, calls = 2, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (64)) +kern.malloc.kmemstat.tdb=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.xform_data=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.pagedep=(inuse = 1, calls = 1, memuse = 4K, limblocks = 0, mapblocks = 0, maxused = 4K, limit = 39243K, spare = 0, sizes = (4096)) +kern.malloc.kmemstat.inodedep=(inuse = 1, calls = 1, memuse = 16K, limblocks = 0, mapblocks = 0, maxused = 16K, limit = 39243K, spare = 0, sizes = (16384)) +kern.malloc.kmemstat.newblk=(inuse = 1, calls = 1, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (256)) +kern.malloc.kmemstat.indirdep=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.VM_swap=(inuse = 7, calls = 7, memuse = 11K, limblocks = 0, mapblocks = 0, maxused = 11K, limit = 39243K, spare = 0, sizes = (32,128,2048,4096)) +kern.malloc.kmemstat.RAIDframe_data=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.UVM_amap=(inuse = 610, calls = 76184, memuse = 40K, limblocks = 0, mapblocks = 0, maxused = 83K, limit = 39243K, spare = 0, sizes = (16,32,64,128,256,512,1024,2048,4096)) +kern.malloc.kmemstat.UVM_aobj=(inuse = 2, calls = 2, memuse = 2K, limblocks = 0, mapblocks = 0, maxused = 2K, limit = 39243K, spare = 0, sizes = (16,1024)) +kern.malloc.kmemstat.USB=(inuse = 31, calls = 50, memuse = 5K, limblocks = 0, mapblocks = 0, maxused = 5K, limit = 39243K, spare = 0, sizes = (16,32,64,128,256)) +kern.malloc.kmemstat.USB_device=(inuse = 3, calls = 3, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (16,64,256)) +kern.malloc.kmemstat.USB_HC=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.memdesc=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.crypto_data=(inuse = 1, calls = 1, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (1024)) +kern.malloc.kmemstat.IPsec_creds=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.packet_tags=(inuse = 0, calls = 1, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (16)) +kern.malloc.kmemstat.emuldata=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.ip6_options=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NDP=(inuse = 6, calls = 6, memuse = 1K, limblocks = 0, mapblocks = 0, maxused = 1K, limit = 39243K, spare = 0, sizes = (64,128)) +kern.malloc.kmemstat.temp=(inuse = 41, calls = 8394, memuse = 6K, limblocks = 0, mapblocks = 0, maxused = 14K, limit = 39243K, spare = 0, sizes = (16,32,64,128,256,512,1024,2048,4096,8192)) +kern.malloc.kmemstat.NTFS_mount=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NTFS_node=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NTFS_fnode=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NTFS_dir=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NTFS_hash=(inuse = 1, calls = 1, memuse = 16K, limblocks = 0, mapblocks = 0, maxused = 16K, limit = 39243K, spare = 0, sizes = (16384)) +kern.malloc.kmemstat.NTFS_attr=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NTFS_data=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NTFS_decomp=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.NTFS_vrun=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.kqueue=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.bluetooth=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.bwmeter=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.UDF_mount=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.UDF_file_entry=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.UDF_file_id=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.Bluetooth_HID=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.AGP_Memory=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.malloc.kmemstat.DRM=(inuse = 0, calls = 0, memuse = 0K, limblocks = 0, mapblocks = 0, maxused = 0K, limit = 39243K, spare = 0, sizes = (none)) +kern.cp_time=329,0,4122,446,562778 +kern.nchstats.good_hits=41002 +kern.nchstats.negative_hits=3634 +kern.nchstats.bad_hits=200 +kern.nchstats.false_hits=4 +kern.nchstats.misses=3565 +kern.nchstats.long_names=0 +kern.nchstats.pass2=38 +kern.nchstats.2passes=156 +kern.nchstats.ncs_revhits=23 +kern.nchstats.ncs_revmiss=0 +kern.nchstats.ncs_dothits=0 +kern.nchstats.nch_dotdothits=0 +kern.forkstat.forks=1500 +kern.forkstat.vforks=0 +kern.forkstat.rforks=0 +kern.forkstat.kthreads=13 +kern.forkstat.fork_pages=66785 +kern.forkstat.vfork_pages=0 +kern.forkstat.rfork_pages=0 +kern.forkstat.kthread_pages=0 +kern.nselcoll=0 +kern.tty.tk_nin=3288 +kern.tty.tk_nout=144347 +kern.tty.tk_rawcc=3233 +kern.tty.tk_cancc=55 +kern.tty.maxptys=992 +kern.tty.nptys=64 +kern.ccpu=1948 +kern.fscale=2048 +kern.nprocs=32 +kern.stackgap_random=262144 +kern.usercrypto=0 +kern.cryptodevallowsoft=0 +kern.splassert=1 +kern.nfiles=62 +kern.ttycount=68 +kern.numvnodes=1845 +kern.userasymcrypto=0 +kern.seminfo.semmni=10 +kern.seminfo.semmns=60 +kern.seminfo.semmnu=30 +kern.seminfo.semmsl=60 +kern.seminfo.semopm=100 +kern.seminfo.semume=10 +kern.seminfo.semusz=100 +kern.seminfo.semvmx=32767 +kern.seminfo.semaem=16384 +kern.shminfo.shmmax=33554432 +kern.shminfo.shmmin=1 +kern.shminfo.shmmni=128 +kern.shminfo.shmseg=128 +kern.shminfo.shmall=8192 +kern.emul.nemuls=1 +kern.emul.linux=0 +kern.maxclusters=6144 +kern.timecounter.tick=1 +kern.timecounter.timestepwarnings=0 +kern.timecounter.hardware=acpitimer0 +kern.timecounter.choice=i8254(0) acpitimer0(1000) dummy(-1000000) +kern.maxlocksperuid=1024 +kern.bufcachepercent=20 +kern.rthreads=0 +kern.consdev=ttyC0 +kern.netlivelocks=1 +kern.pool_debug=0 +vm.loadavg=0.44 0.20 0.16 +vm.psstrings=0xcfbfdff0 +vm.swapencrypt.enable=1 +vm.swapencrypt.keyscreated=0 +vm.swapencrypt.keysdeleted=0 +vm.nkmempages=16351 +vm.anonmin=10 +vm.vtextmin=5 +vm.vnodemin=10 +fs.posix.setuid=1 +net.inet.ip.forwarding=0 +net.inet.ip.redirect=1 +net.inet.ip.ttl=64 +net.inet.ip.sourceroute=0 +net.inet.ip.directed-broadcast=0 +net.inet.ip.portfirst=1024 +net.inet.ip.portlast=49151 +net.inet.ip.porthifirst=49152 +net.inet.ip.porthilast=65535 +net.inet.ip.maxqueue=300 +net.inet.ip.encdebug=0 +net.inet.ip.ipsec-expire-acquire=30 +net.inet.ip.ipsec-invalid-life=60 +net.inet.ip.ipsec-pfs=1 +net.inet.ip.ipsec-soft-allocs=0 +net.inet.ip.ipsec-allocs=0 +net.inet.ip.ipsec-soft-bytes=0 +net.inet.ip.ipsec-bytes=0 +net.inet.ip.ipsec-timeout=86400 +net.inet.ip.ipsec-soft-timeout=80000 +net.inet.ip.ipsec-soft-firstuse=3600 +net.inet.ip.ipsec-firstuse=7200 +net.inet.ip.ipsec-enc-alg=aes +net.inet.ip.ipsec-auth-alg=hmac-sha1 +net.inet.ip.mtudisc=1 +net.inet.ip.mtudisctimeout=600 +net.inet.ip.ipsec-comp-alg=deflate +net.inet.ip.ifq.len=0 +net.inet.ip.ifq.maxlen=256 +net.inet.ip.ifq.drops=0 +net.inet.ip.mforwarding=0 +net.inet.ip.multipath=0 +net.inet.ip.mrtproto=19 +net.inet.ip.arpqueued=0 +net.inet.icmp.maskrepl=0 +net.inet.icmp.bmcastecho=0 +net.inet.icmp.errppslimit=100 +net.inet.icmp.rediraccept=0 +net.inet.icmp.redirtimeout=600 +net.inet.icmp.tstamprepl=1 +net.inet.ipip.allow=0 +net.inet.tcp.rfc1323=1 +net.inet.tcp.keepinittime=150 +net.inet.tcp.keepidle=14400 +net.inet.tcp.keepintvl=150 +net.inet.tcp.slowhz=2 +net.inet.tcp.baddynamic=1,7,9,11,13,15,17,18,19,20,21,22,23,25,37,42,43,53,57,67,68,70,77,79,80,87,88,95,101,102,103,104,105,107,109,110,111,113,115,117,119,123,129,135,137,138,139,143,152,163,164,177,178,179,191,194,199,201,202,204,206,210,213,220,372,389,427,433,443,445,464,465,468,512,513,514,515,521,526,530,531,532,540,543,544,545,548,554,556,587,631,636,646,706,749,750,751,754,760,782,871,873,888,993,995,1080,1109,1127,1433,1434,1524,1525,1723,1900,2049,2105,2106,2108,2110,2111,2112,2120,2121,2401,2627,2983,3031,3260,3306,3517,3689,4444,4500,5002,5060,5432,5680,6000,6001,6002,6003,6004,6005,6006,6007,6008,6009,6010,7326,8025,8026,10050,10051 +net.inet.tcp.sack=1 +net.inet.tcp.mssdflt=512 +net.inet.tcp.rstppslimit=100 +net.inet.tcp.ackonpush=0 +net.inet.tcp.ecn=0 +net.inet.tcp.syncachelimit=10255 +net.inet.tcp.synbucketlimit=105 +net.inet.tcp.rfc3390=1 +net.inet.tcp.reasslimit=3072 +net.inet.tcp.sackholelimit=32768 +net.inet.tcp.always_keepalive=0 +net.inet.udp.checksum=1 +net.inet.udp.baddynamic=7,9,13,18,19,22,37,39,53,67,68,69,70,80,88,105,107,109,110,111,123,129,135,137,138,139,143,161,162,163,164,177,178,179,191,194,199,201,202,204,206,210,213,220,372,389,427,445,464,468,500,512,513,514,517,518,520,525,533,548,554,587,623,631,636,646,664,706,749,750,751,993,995,1433,1434,1524,1525,1645,1646,1701,1723,1812,1813,1900,2049,2627,3031,3517,3689,4444,4500,5002,5060,7000,7001,7002,7003,7004,7005,7006,7007,7008,7009,8025,8067,10050,10051,26740 +net.inet.udp.recvspace=41600 +net.inet.udp.sendspace=9216 +net.inet.gre.allow=0 +net.inet.gre.wccp=0 +net.inet.esp.enable=1 +net.inet.esp.udpencap=1 +net.inet.esp.udpencap_port=4500 +net.inet.ah.enable=1 +net.inet.mobileip.allow=0 +net.inet.etherip.allow=0 +net.inet.ipcomp.enable=0 +net.inet.carp.allow=1 +net.inet.carp.preempt=0 +net.inet.carp.log=2 +net.inet.divert.recvspace=65636 +net.inet.divert.sendspace=65636 +net.inet6.ip6.forwarding=0 +net.inet6.ip6.redirect=1 +net.inet6.ip6.hlim=64 +net.inet6.ip6.mrtproto=103 +net.inet6.ip6.maxfragpackets=200 +net.inet6.ip6.accept_rtadv=0 +net.inet6.ip6.keepfaith=0 +net.inet6.ip6.log_interval=5 +net.inet6.ip6.hdrnestlimit=10 +net.inet6.ip6.dad_count=1 +net.inet6.ip6.auto_flowlabel=1 +net.inet6.ip6.defmcasthlim=1 +net.inet6.ip6.kame_version=OpenBSD-current +net.inet6.ip6.use_deprecated=1 +net.inet6.ip6.rr_prune=5 +net.inet6.ip6.v6only=1 +net.inet6.ip6.maxfrags=200 +net.inet6.ip6.mforwarding=0 +net.inet6.ip6.multipath=0 +net.inet6.ip6.multicast_mtudisc=0 +net.inet6.ip6.neighborgcthresh=2048 +net.inet6.ip6.maxifprefixes=16 +net.inet6.ip6.maxifdefrouters=16 +net.inet6.ip6.maxdynroutes=4096 +net.inet6.ip6.dad_pending=0 +net.inet6.icmp6.rediraccept=0 +net.inet6.icmp6.redirtimeout=600 +net.inet6.icmp6.nd6_prune=1 +net.inet6.icmp6.nd6_delay=5 +net.inet6.icmp6.nd6_umaxtries=3 +net.inet6.icmp6.nd6_mmaxtries=3 +net.inet6.icmp6.nd6_useloopback=1 +net.inet6.icmp6.nodeinfo=1 +net.inet6.icmp6.errppslimit=100 +net.inet6.icmp6.nd6_maxnudhint=0 +net.inet6.icmp6.mtudisc_hiwat=1280 +net.inet6.icmp6.mtudisc_lowat=256 +net.inet6.icmp6.nd6_debug=0 +net.inet6.divert.recvspace=65636 +net.inet6.divert.sendspace=65636 +net.bpf.bufsize=32768 +net.bpf.maxbufsize=2097152 +net.mpls.ttl=255 +net.mpls.ifq.len=0 +net.mpls.ifq.maxlen=256 +net.mpls.ifq.drops=0 +net.mpls.maxloop_inkernel=16 +net.mpls.mapttl_ip=1 +net.mpls.mapttl_ip6=0 +net.pipex.enable=0 +hw.machine=i386 +hw.model=AMD Athlon(tm) 64 X2 Dual Core Processor 4000+ ("AuthenticAMD" 686-class, 512KB L2 cache) +hw.ncpu=1 +hw.byteorder=1234 +hw.pagesize=4096 +hw.disknames=wd0:6efb56f4a4881126,cd0:,sd0: +hw.diskcount=3 +hw.sensors.acpiac0.indicator0=On (power supply) +hw.cpuspeed=2111 +hw.vendor=innotek GmbH +hw.product=VirtualBox +hw.version=1.2 +hw.serialno=0 +hw.uuid=65ccb28d-b0b0-4b72-ba00-dfb647ff14fa +hw.physmem=267907072 +hw.usermem=267894784 +hw.ncpufound=1 +hw.allowpowerdown=1 +machdep.console_device=ttyC0 +machdep.bios.diskinfo.128=bootdev = 0xa0000200, cylinders = 520, heads = 128, sectors = 63 +machdep.bios.cksumlen=1 +machdep.allowaperture=0 +machdep.cpuvendor=AuthenticAMD +machdep.cpuid=397233 +machdep.cpufeature=126614463 +machdep.apmwarn=10 +machdep.kbdreset=0 +machdep.apmhalt=0 +machdep.userldt=0 +machdep.osfxsr=1 +machdep.sse=1 +machdep.sse2=1 +machdep.xcrypt=0 +machdep.lidsuspend=0 +user.cs_path=/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin:/usr/local/bin +user.bc_base_max=2147483647 +user.bc_dim_max=65535 +user.bc_scale_max=2147483647 +user.bc_string_max=2147483647 +user.coll_weights_max=2 +user.expr_nest_max=32 +user.line_max=2048 +user.re_dup_max=255 +user.posix2_version=199212 +user.posix2_c_bind=0 +user.posix2_c_dev=0 +user.posix2_char_term=0 +user.posix2_fort_dev=0 +user.posix2_fort_run=0 +user.posix2_localedef=0 +user.posix2_sw_dev=0 +user.posix2_upe=0 +user.stream_max=20 +user.tzname_max=255 +ddb.radix=16 +ddb.max_width=80 +ddb.max_line=24 +ddb.tab_stop_width=8 +ddb.panic=1 +ddb.console=0 +ddb.log=1 +ddb.trigger=0 +vfs.mounts.ffs has 3 mounted instances +vfs.mounts.msdos has 1 mounted instance +vfs.ffs.doclusterread=1 +vfs.ffs.doclusterwrite=1 +vfs.ffs.doreallocblks=1 +vfs.ffs.doasyncfree=1 +vfs.ffs.max_softdeps=23704 +vfs.ffs.sd_tickdelay=2 +vfs.ffs.sd_worklist_push=0 +vfs.ffs.sd_blk_limit_push=0 +vfs.ffs.sd_ino_limit_push=0 +vfs.ffs.sd_blk_limit_hit=0 +vfs.ffs.sd_ino_limit_hit=0 +vfs.ffs.sd_sync_limit_hit=0 +vfs.ffs.sd_indir_blk_ptrs=0 +vfs.ffs.sd_inode_bitmap=0 +vfs.ffs.sd_direct_blk_ptrs=0 +vfs.ffs.sd_dir_entry=0 +vfs.ffs.dirhash_dirsize=2560 +vfs.ffs.dirhash_maxmem=2097152 +vfs.ffs.dirhash_mem=30622 +vfs.nfs.iothreads=-1 diff --git a/t/pt-summary/samples/BSD/openbsd_001/vmstat b/t/pt-summary/samples/BSD/openbsd_001/vmstat new file mode 100644 index 00000000..72f166e9 --- /dev/null +++ b/t/pt-summary/samples/BSD/openbsd_001/vmstat @@ -0,0 +1,7 @@ + procs memory page disks traps cpu + r b w avm fre flt re pi po fr sr wd0 cd0 int sys cs us sy id + 2 1 0 7608 191356 66 0 0 0 0 0 2 0 231 108 14 0 1 99 + 1 1 0 7804 191192 9916 0 0 0 0 0 0 0 234 14726 315 9 90 1 + 1 0 0 7600 191360 9461 0 0 0 0 0 0 0 256 14435 285 6 94 0 + 0 0 0 7496 191456 1272 0 0 0 0 0 0 0 256 1973 50 2 12 85 + 0 0 0 7496 191456 11 0 0 0 0 0 0 0 230 23 12 0 0 100 diff --git a/t/pt-summary/samples/Linux/001/dmesg_file b/t/pt-summary/samples/Linux/001/dmesg_file new file mode 100755 index 00000000..c26bec46 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/dmesg_file @@ -0,0 +1,786 @@ +[ 0.000000] Initializing cgroup subsys cpuset +[ 0.000000] Initializing cgroup subsys cpu +[ 0.000000] Linux version 3.0.0-16-generic (buildd@zirconium) (gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3) ) #29-Ubuntu SMP Tue Feb 14 12:49:42 UTC 2012 (Ubuntu 3.0.0-16.29-generic 3.0.20) +[ 0.000000] KERNEL supported cpus: +[ 0.000000] Intel GenuineIntel +[ 0.000000] AMD AuthenticAMD +[ 0.000000] NSC Geode by NSC +[ 0.000000] Cyrix CyrixInstead +[ 0.000000] Centaur CentaurHauls +[ 0.000000] Transmeta GenuineTMx86 +[ 0.000000] Transmeta TransmetaCPU +[ 0.000000] UMC UMC UMC UMC +[ 0.000000] Disabled fast string operations +[ 0.000000] BIOS-provided physical RAM map: +[ 0.000000] BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) +[ 0.000000] BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) +[ 0.000000] BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved) +[ 0.000000] BIOS-e820: 0000000000100000 - 000000007f494000 (usable) +[ 0.000000] BIOS-e820: 000000007f494000 - 000000007f575000 (reserved) +[ 0.000000] BIOS-e820: 000000007f575000 - 000000007f5bf000 (ACPI NVS) +[ 0.000000] BIOS-e820: 000000007f5bf000 - 000000007f5ed000 (reserved) +[ 0.000000] BIOS-e820: 000000007f5ed000 - 000000007f5ff000 (ACPI data) +[ 0.000000] BIOS-e820: 000000007f5ff000 - 0000000080000000 (reserved) +[ 0.000000] BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) +[ 0.000000] BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved) +[ 0.000000] BIOS-e820: 00000000fed14000 - 00000000fed1a000 (reserved) +[ 0.000000] BIOS-e820: 00000000fed1c000 - 00000000fed20000 (reserved) +[ 0.000000] BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) +[ 0.000000] BIOS-e820: 00000000fff00000 - 0000000100000000 (reserved) +[ 0.000000] Notice: NX (Execute Disable) protection cannot be enabled in hardware: non-PAE kernel! +[ 0.000000] NX (Execute Disable) protection: approximated by x86 segment limits +[ 0.000000] DMI 2.6 present. +[ 0.000000] DMI: Quanta UW3/UW3, BIOS Q3F81 08/30/2011 +[ 0.000000] e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) +[ 0.000000] e820 remove range: 00000000000a0000 - 0000000000100000 (usable) +[ 0.000000] last_pfn = 0x7f494 max_arch_pfn = 0x100000 +[ 0.000000] MTRR default type: uncachable +[ 0.000000] MTRR fixed ranges enabled: +[ 0.000000] 00000-9FFFF write-back +[ 0.000000] A0000-BFFFF uncachable +[ 0.000000] C0000-DFFFF write-through +[ 0.000000] E0000-FFFFF write-protect +[ 0.000000] MTRR variable ranges enabled: +[ 0.000000] 0 base 0FFF00000 mask 0FFF00000 write-protect +[ 0.000000] 1 base 000000000 mask 0C0000000 write-back +[ 0.000000] 2 base 040000000 mask 0C0000000 write-back +[ 0.000000] 3 base 07F800000 mask 0FF800000 uncachable +[ 0.000000] 4 disabled +[ 0.000000] 5 disabled +[ 0.000000] 6 disabled +[ 0.000000] x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106 +[ 0.000000] initial memory mapped : 0 - 01c00000 +[ 0.000000] Base memory trampoline at [c009b000] 9b000 size 16384 +[ 0.000000] init_memory_mapping: 0000000000000000-00000000377fe000 +[ 0.000000] 0000000000 - 0000400000 page 4k +[ 0.000000] 0000400000 - 0037400000 page 2M +[ 0.000000] 0037400000 - 00377fe000 page 4k +[ 0.000000] kernel direct mapping tables up to 377fe000 @ 1bfb000-1c00000 +[ 0.000000] RAMDISK: 364d6000 - 37263000 +[ 0.000000] ACPI: RSDP 000fe020 00024 (v02 Garba ) +[ 0.000000] ACPI: XSDT 7f5fe120 0005C (v01 Garba COMMODOR 00000001 01000013) +[ 0.000000] ACPI: FACP 7f5fd000 000F4 (v04 Garba COMMODOR 00000001 MSFT 01000013) +[ 0.000000] ACPI: DSDT 7f5f1000 08E19 (v01 Garba COMMODOR 00000001 MSFT 01000013) +[ 0.000000] ACPI: FACS 7f582000 00040 +[ 0.000000] ACPI: HPET 7f5fc000 00038 (v01 Garba COMMODOR 00000001 MSFT 01000013) +[ 0.000000] ACPI: APIC 7f5fb000 00078 (v02 Garba COMMODOR 00000001 MSFT 01000013) +[ 0.000000] ACPI: MCFG 7f5fa000 0003C (v01 Garba COMMODOR 00000001 MSFT 01000013) +[ 0.000000] ACPI: SLIC 7f5f0000 00176 (v01 Garba COMMODOR 00000001 MSFT 01000013) +[ 0.000000] ACPI: BOOT 7f5ef000 00028 (v01 Garba COMMODOR 00000001 MSFT 01000013) +[ 0.000000] ACPI: SSDT 7f5ed000 00655 (v01 Garba COMMODOR 00003000 INTL 20051117) +[ 0.000000] ACPI: Local APIC address 0xfee00000 +[ 0.000000] 1148MB HIGHMEM available. +[ 0.000000] 887MB LOWMEM available. +[ 0.000000] mapped low ram: 0 - 377fe000 +[ 0.000000] low ram: 0 - 377fe000 +[ 0.000000] Zone PFN ranges: +[ 0.000000] DMA 0x00000010 -> 0x00001000 +[ 0.000000] Normal 0x00001000 -> 0x000377fe +[ 0.000000] HighMem 0x000377fe -> 0x0007f494 +[ 0.000000] Movable zone start PFN for each node +[ 0.000000] early_node_map[2] active PFN ranges +[ 0.000000] 0: 0x00000010 -> 0x0000009f +[ 0.000000] 0: 0x00000100 -> 0x0007f494 +[ 0.000000] On node 0 totalpages: 521251 +[ 0.000000] free_area_init_node: node 0, pgdat c17b54c0, node_mem_map f54e6200 +[ 0.000000] DMA zone: 32 pages used for memmap +[ 0.000000] DMA zone: 0 pages reserved +[ 0.000000] DMA zone: 3951 pages, LIFO batch:0 +[ 0.000000] Normal zone: 1744 pages used for memmap +[ 0.000000] Normal zone: 221486 pages, LIFO batch:31 +[ 0.000000] HighMem zone: 2298 pages used for memmap +[ 0.000000] HighMem zone: 291740 pages, LIFO batch:31 +[ 0.000000] Using APIC driver default +[ 0.000000] ACPI: PM-Timer IO Port: 0x408 +[ 0.000000] ACPI: Local APIC address 0xfee00000 +[ 0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) +[ 0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled) +[ 0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x00] disabled) +[ 0.000000] ACPI: LAPIC (acpi_id[0x04] lapic_id[0x00] disabled) +[ 0.000000] ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1]) +[ 0.000000] ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x1]) +[ 0.000000] ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0]) +[ 0.000000] IOAPIC[0]: apic_id 4, version 32, address 0xfec00000, GSI 0-23 +[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) +[ 0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) +[ 0.000000] ACPI: IRQ0 used by override. +[ 0.000000] ACPI: IRQ2 used by override. +[ 0.000000] ACPI: IRQ9 used by override. +[ 0.000000] Using ACPI (MADT) for SMP configuration information +[ 0.000000] ACPI: HPET id: 0x8086a201 base: 0xfed00000 +[ 0.000000] SMP: Allowing 4 CPUs, 2 hotplug CPUs +[ 0.000000] nr_irqs_gsi: 40 +[ 0.000000] PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 +[ 0.000000] PM: Registered nosave memory: 00000000000a0000 - 00000000000e0000 +[ 0.000000] PM: Registered nosave memory: 00000000000e0000 - 0000000000100000 +[ 0.000000] Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) +[ 0.000000] Booting paravirtualized kernel on bare hardware +[ 0.000000] setup_percpu: NR_CPUS:8 nr_cpumask_bits:8 nr_cpu_ids:4 nr_node_ids:1 +[ 0.000000] PERCPU: Embedded 12 pages/cpu @f5000000 s26240 r0 d22912 u1048576 +[ 0.000000] pcpu-alloc: s26240 r0 d22912 u1048576 alloc=1*4194304 +[ 0.000000] pcpu-alloc: [0] 0 1 2 3 +[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 517177 +[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.0.0-16-generic root=UUID=f162d4b0-438f-410e-be8f-84069aa292d3 ro quiet splash vt.handoff=7 +[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes) +[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) +[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) +[ 0.000000] Initializing CPU#0 +[ 0.000000] allocated 8341568 bytes of page_cgroup +[ 0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups +[ 0.000000] Initializing HighMem for node 0 (000377fe:0007f494) +[ 0.000000] Memory: 2036064k/2085456k available (5340k kernel code, 48940k reserved, 2596k data, 696k init, 1176152k highmem) +[ 0.000000] virtual kernel memory layout: +[ 0.000000] fixmap : 0xfff16000 - 0xfffff000 ( 932 kB) +[ 0.000000] pkmap : 0xff800000 - 0xffc00000 (4096 kB) +[ 0.000000] vmalloc : 0xf7ffe000 - 0xff7fe000 ( 120 MB) +[ 0.000000] lowmem : 0xc0000000 - 0xf77fe000 ( 887 MB) +[ 0.000000] .init : 0xc17c1000 - 0xc186f000 ( 696 kB) +[ 0.000000] .data : 0xc1537104 - 0xc17c0140 (2596 kB) +[ 0.000000] .text : 0xc1000000 - 0xc1537104 (5340 kB) +[ 0.000000] Checking if this processor honours the WP bit even in supervisor mode...Ok. +[ 0.000000] SLUB: Genslabs=15, HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 +[ 0.000000] Hierarchical RCU implementation. +[ 0.000000] RCU dyntick-idle grace-period acceleration is enabled. +[ 0.000000] NR_IRQS:2304 nr_irqs:712 16 +[ 0.000000] CPU 0 irqstacks, hard=f440a000 soft=f440c000 +[ 0.000000] vt handoff: transparent VT on vt#7 +[ 0.000000] Console: colour dummy device 80x25 +[ 0.000000] console [tty0] enabled +[ 0.000000] hpet clockevent registered +[ 0.000000] Fast TSC calibration using PIT +[ 0.000000] Detected 1662.402 MHz processor. +[ 0.004005] Calibrating delay loop (skipped), value calculated using timer frequency.. 3324.80 BogoMIPS (lpj=6649608) +[ 0.004017] pid_max: default: 32768 minimum: 301 +[ 0.004070] Security Framework initialized +[ 0.004106] AppArmor: AppArmor initialized +[ 0.004111] Yama: becoming mindful. +[ 0.004231] Mount-cache hash table entries: 512 +[ 0.004507] Initializing cgroup subsys cpuacct +[ 0.004523] Initializing cgroup subsys memory +[ 0.004542] Initializing cgroup subsys devices +[ 0.004549] Initializing cgroup subsys freezer +[ 0.004554] Initializing cgroup subsys net_cls +[ 0.004560] Initializing cgroup subsys blkio +[ 0.004576] Initializing cgroup subsys perf_event +[ 0.004631] Disabled fast string operations +[ 0.004641] CPU: Physical Processor ID: 0 +[ 0.004646] CPU: Processor Core ID: 0 +[ 0.004652] mce: CPU supports 5 MCE banks +[ 0.004669] CPU0: Thermal monitoring enabled (TM2) +[ 0.004678] using mwait in idle threads. +[ 0.010856] ACPI: Core revision 20110413 +[ 0.024028] ftrace: allocating 24901 entries in 49 pages +[ 0.028106] Enabling APIC mode: Flat. Using 1 I/O APICs +[ 0.028617] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 +[ 0.070773] CPU0: Intel(R) Atom(TM) CPU N455 @ 1.66GHz stepping 0a +[ 0.072003] Performance Events: PEBS fmt0+, Atom events, Intel PMU driver. +[ 0.072003] ... version: 3 +[ 0.072003] ... bit width: 40 +[ 0.072003] ... generic registers: 2 +[ 0.072003] ... value mask: 000000ffffffffff +[ 0.072003] ... max period: 000000007fffffff +[ 0.072003] ... fixed-purpose events: 3 +[ 0.072003] ... event mask: 0000000700000003 +[ 0.072003] CPU 1 irqstacks, hard=f44d2000 soft=f44d4000 +[ 0.072003] Booting Node 0, Processors #1 +[ 0.072003] smpboot cpu 1: start_ip = 9b000 +[ 0.008000] Initializing CPU#1 +[ 0.008000] Disabled fast string operations +[ 0.160040] Brought up 2 CPUs +[ 0.160050] Total of 2 processors activated (6649.81 BogoMIPS). +[ 0.160571] devtmpfs: initialized +[ 0.160571] PM: Registering ACPI NVS region at 7f575000 (303104 bytes) +[ 0.166717] print_constraints: dummy: +[ 0.166760] Time: 17:55:35 Date: 03/21/12 +[ 0.166855] NET: Registered protocol family 16 +[ 0.166959] Trying to unpack rootfs image as initramfs... +[ 0.167368] EISA bus registered +[ 0.167398] ACPI: bus type pci registered +[ 0.167614] PCI: MMCONFIG for domain 0000 [bus 00-ff] at [mem 0xe0000000-0xefffffff] (base 0xe0000000) +[ 0.167626] PCI: MMCONFIG at [mem 0xe0000000-0xefffffff] reserved in E820 +[ 0.167633] PCI: Using MMCONFIG for extended config space +[ 0.167639] PCI: Using configuration type 1 for base access +[ 0.172224] bio: create slab at 0 +[ 0.178077] ACPI: EC: Look up EC in DSDT +[ 0.183775] ACPI: Executed 1 blocks of module-level executable AML code +[ 0.189508] [Firmware Bug]: ACPI: BIOS _OSI(Linux) query ignored +[ 0.191049] ACPI: SSDT 7f497810 00789 (v01 Garba COMMODOR 00003000 INTL 20051117) +[ 0.193158] ACPI: Dynamic OEM Table Load: +[ 0.193170] ACPI: SSDT (null) 00789 (v01 Garba COMMODOR 00003000 INTL 20051117) +[ 0.193598] ACPI: SSDT 7f496c10 001C1 (v02 Garba COMMODOR 00003001 INTL 20051117) +[ 0.194949] ACPI: Dynamic OEM Table Load: +[ 0.194961] ACPI: SSDT (null) 001C1 (v02 Garba COMMODOR 00003001 INTL 20051117) +[ 0.249111] ACPI: SSDT 7f496e10 001B5 (v01 Garba COMMODOR 00003000 INTL 20051117) +[ 0.250590] ACPI: Dynamic OEM Table Load: +[ 0.250601] ACPI: SSDT (null) 001B5 (v01 Garba COMMODOR 00003000 INTL 20051117) +[ 0.280469] ACPI: SSDT 7f495f10 000C9 (v02 Garba COMMODOR 00003000 INTL 20051117) +[ 0.281870] ACPI: Dynamic OEM Table Load: +[ 0.281882] ACPI: SSDT (null) 000C9 (v02 Garba COMMODOR 00003000 INTL 20051117) +[ 0.314535] ACPI: Interpreter enabled +[ 0.314535] ACPI: (supports S0 S3 S4 S5) +[ 0.314535] ACPI: Using IOAPIC for interrupt routing +[ 0.332641] ACPI: EC: GPE = 0x19, I/O: command/status = 0x66, data = 0x62 +[ 0.333210] ACPI: No dock devices found. +[ 0.333219] HEST: Table not found. +[ 0.333229] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug +[ 0.334586] ACPI Error: [CAPB] Namespace lookup failure, AE_ALREADY_EXISTS (20110413/dsfield-143) +[ 0.334609] ACPI Error: Method parse/execution failed [\_SB_.PCI0._OSC] (Node f4427ba0), AE_ALREADY_EXISTS (20110413/psparse-536) +[ 0.334636] ACPI: Marking method _OSC as Serialized because of AE_ALREADY_EXISTS error +[ 0.334660] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) +[ 0.337041] pci_root PNP0A08:00: host bridge window [io 0x0000-0x0cf7] +[ 0.337054] pci_root PNP0A08:00: host bridge window [io 0x0d00-0xffff] +[ 0.337063] pci_root PNP0A08:00: host bridge window [mem 0x000a0000-0x000bffff] +[ 0.337076] pci_root PNP0A08:00: host bridge window [mem 0x80000000-0xfebfffff] +[ 0.337112] pci 0000:00:00.0: [8086:a010] type 0 class 0x000600 +[ 0.337197] pci 0000:00:02.0: [8086:a011] type 0 class 0x000300 +[ 0.337220] pci 0000:00:02.0: reg 10: [mem 0x94180000-0x941fffff] +[ 0.337234] pci 0000:00:02.0: reg 14: [io 0x30c0-0x30c7] +[ 0.337248] pci 0000:00:02.0: reg 18: [mem 0x80000000-0x8fffffff pref] +[ 0.337263] pci 0000:00:02.0: reg 1c: [mem 0x94000000-0x940fffff] +[ 0.337335] pci 0000:00:02.1: [8086:a012] type 0 class 0x000380 +[ 0.337354] pci 0000:00:02.1: reg 10: [mem 0x94100000-0x9417ffff] +[ 0.337515] pci 0000:00:1b.0: [8086:27d8] type 0 class 0x000403 +[ 0.337554] pci 0000:00:1b.0: reg 10: [mem 0x94200000-0x94203fff 64bit] +[ 0.337701] pci 0000:00:1b.0: PME# supported from D0 D3hot D3cold +[ 0.337713] pci 0000:00:1b.0: PME# disabled +[ 0.337764] pci 0000:00:1c.0: [8086:27d0] type 1 class 0x000604 +[ 0.337918] pci 0000:00:1c.0: PME# supported from D0 D3hot D3cold +[ 0.337930] pci 0000:00:1c.0: PME# disabled +[ 0.337983] pci 0000:00:1c.1: [8086:27d2] type 1 class 0x000604 +[ 0.338137] pci 0000:00:1c.1: PME# supported from D0 D3hot D3cold +[ 0.338149] pci 0000:00:1c.1: PME# disabled +[ 0.338215] pci 0000:00:1d.0: [8086:27c8] type 0 class 0x000c03 +[ 0.338307] pci 0000:00:1d.0: reg 20: [io 0x3080-0x309f] +[ 0.338389] pci 0000:00:1d.1: [8086:27c9] type 0 class 0x000c03 +[ 0.338475] pci 0000:00:1d.1: reg 20: [io 0x3060-0x307f] +[ 0.338550] pci 0000:00:1d.2: [8086:27ca] type 0 class 0x000c03 +[ 0.338636] pci 0000:00:1d.2: reg 20: [io 0x3040-0x305f] +[ 0.338713] pci 0000:00:1d.3: [8086:27cb] type 0 class 0x000c03 +[ 0.338801] pci 0000:00:1d.3: reg 20: [io 0x3020-0x303f] +[ 0.338903] pci 0000:00:1d.7: [8086:27cc] type 0 class 0x000c03 +[ 0.341327] pci 0000:00:1d.7: reg 10: [mem 0x94204400-0x942047ff] +[ 0.356095] pci 0000:00:1d.7: PME# supported from D0 D3hot D3cold +[ 0.356109] pci 0000:00:1d.7: PME# disabled +[ 0.356160] pci 0000:00:1e.0: [8086:2448] type 1 class 0x000604 +[ 0.356302] pci 0000:00:1f.0: [8086:27bc] type 0 class 0x000601 +[ 0.356510] pci 0000:00:1f.2: [8086:27c1] type 0 class 0x000106 +[ 0.356548] pci 0000:00:1f.2: reg 10: [io 0x30b8-0x30bf] +[ 0.356570] pci 0000:00:1f.2: reg 14: [io 0x30cc-0x30cf] +[ 0.356591] pci 0000:00:1f.2: reg 18: [io 0x30b0-0x30b7] +[ 0.356613] pci 0000:00:1f.2: reg 1c: [io 0x30c8-0x30cb] +[ 0.356635] pci 0000:00:1f.2: reg 20: [io 0x30a0-0x30af] +[ 0.356658] pci 0000:00:1f.2: reg 24: [mem 0x94204000-0x942043ff] +[ 0.356748] pci 0000:00:1f.2: PME# supported from D3hot +[ 0.356761] pci 0000:00:1f.2: PME# disabled +[ 0.356803] pci 0000:00:1f.3: [8086:27da] type 0 class 0x000c05 +[ 0.356893] pci 0000:00:1f.3: reg 20: [io 0x3000-0x301f] +[ 0.357075] pci 0000:01:00.0: [10ec:8136] type 0 class 0x000200 +[ 0.357107] pci 0000:01:00.0: reg 10: [io 0x2000-0x20ff] +[ 0.357154] pci 0000:01:00.0: reg 18: [mem 0x90010000-0x90010fff 64bit pref] +[ 0.357186] pci 0000:01:00.0: reg 20: [mem 0x90000000-0x9000ffff 64bit pref] +[ 0.357210] pci 0000:01:00.0: reg 30: [mem 0xffff0000-0xffffffff pref] +[ 0.357311] pci 0000:01:00.0: supports D1 D2 +[ 0.357318] pci 0000:01:00.0: PME# supported from D0 D1 D2 D3hot D3cold +[ 0.357330] pci 0000:01:00.0: PME# disabled +[ 0.364095] pci 0000:00:1c.0: PCI bridge to [bus 01-01] +[ 0.364111] pci 0000:00:1c.0: bridge window [io 0x2000-0x2fff] +[ 0.364125] pci 0000:00:1c.0: bridge window [mem 0x93000000-0x93ffffff] +[ 0.364143] pci 0000:00:1c.0: bridge window [mem 0x90000000-0x90ffffff 64bit pref] +[ 0.364287] pci 0000:02:00.0: [10ec:8176] type 0 class 0x000280 +[ 0.364327] pci 0000:02:00.0: reg 10: [io 0x1000-0x10ff] +[ 0.364384] pci 0000:02:00.0: reg 18: [mem 0x92000000-0x92003fff 64bit] +[ 0.364550] pci 0000:02:00.0: supports D1 D2 +[ 0.364558] pci 0000:02:00.0: PME# supported from D0 D1 D2 D3hot D3cold +[ 0.364571] pci 0000:02:00.0: PME# disabled +[ 0.372089] pci 0000:00:1c.1: PCI bridge to [bus 02-02] +[ 0.372105] pci 0000:00:1c.1: bridge window [io 0x1000-0x1fff] +[ 0.372118] pci 0000:00:1c.1: bridge window [mem 0x92000000-0x92ffffff] +[ 0.372135] pci 0000:00:1c.1: bridge window [mem 0x91000000-0x91ffffff 64bit pref] +[ 0.372264] pci 0000:00:1e.0: PCI bridge to [bus 03-03] (subtractive decode) +[ 0.372278] pci 0000:00:1e.0: bridge window [io 0xf000-0x0000] (disabled) +[ 0.372291] pci 0000:00:1e.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) +[ 0.372308] pci 0000:00:1e.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) +[ 0.372319] pci 0000:00:1e.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) +[ 0.372328] pci 0000:00:1e.0: bridge window [io 0x0d00-0xffff] (subtractive decode) +[ 0.372339] pci 0000:00:1e.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) +[ 0.372350] pci 0000:00:1e.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) +[ 0.372389] pci_bus 0000:00: on NUMA node 0 +[ 0.372408] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] +[ 0.372859] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P32_._PRT] +[ 0.373131] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.EXP1._PRT] +[ 0.373314] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.EXP2._PRT] +[ 0.373756] ACPI Error: [CAPB] Namespace lookup failure, AE_ALREADY_EXISTS (20110413/dsfield-143) +[ 0.373778] ACPI Error: Method parse/execution failed [\_SB_.PCI0._OSC] (Node f4427ba0), AE_ALREADY_EXISTS (20110413/psparse-536) +[ 0.373817] pci0000:00: Requesting ACPI _OSC control (0x1d) +[ 0.374015] ACPI Error: [CAPB] Namespace lookup failure, AE_ALREADY_EXISTS (20110413/dsfield-143) +[ 0.374036] ACPI Error: Method parse/execution failed [\_SB_.PCI0._OSC] (Node f4427ba0), AE_ALREADY_EXISTS (20110413/psparse-536) +[ 0.374072] pci0000:00: ACPI _OSC request failed (AE_ALREADY_EXISTS), returned control mask: 0x1d +[ 0.374080] ACPI _OSC control for PCIe not granted, disabling ASPM +[ 0.385079] ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 7 9 10 *11 12) +[ 0.385288] ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 7 9 *10 11 12) +[ 0.385492] ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 7 9 10 *11 12) +[ 0.385707] ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 7 9 10 *11 12) +[ 0.385909] ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 7 9 10 11 12) *0, disabled. +[ 0.386114] ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 7 9 10 11 12) *0, disabled. +[ 0.386319] ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 7 9 10 11 12) *0, disabled. +[ 0.386545] ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 7 9 10 11 12) *0, disabled. +[ 0.386916] vgaarb: device added: PCI:0000:00:02.0,decodes=io+mem,owns=io+mem,locks=none +[ 0.386946] vgaarb: loaded +[ 0.386951] vgaarb: bridge control possible 0000:00:02.0 +[ 0.387842] SCSI subsystem initialized +[ 0.388071] libata version 3.00 loaded. +[ 0.388277] usbcore: registered new interface driver usbfs +[ 0.388326] usbcore: registered new interface driver hub +[ 0.388455] usbcore: registered new device driver usb +[ 0.388839] PCI: Using ACPI for IRQ routing +[ 0.399725] PCI: pci_cache_line_size set to 64 bytes +[ 0.399877] reserve RAM buffer: 000000000009fc00 - 000000000009ffff +[ 0.399886] reserve RAM buffer: 000000007f494000 - 000000007fffffff +[ 0.400313] NetLabel: Initializing +[ 0.400322] NetLabel: domain hash size = 128 +[ 0.400327] NetLabel: protocols = UNLABELED CIPSOv4 +[ 0.400364] NetLabel: unlabeled traffic allowed by default +[ 0.400533] HPET: 3 timers in total, 0 timers will be used for per-cpu timer +[ 0.400547] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0 +[ 0.400562] hpet0: 3 comparators, 64-bit 14.318180 MHz counter +[ 0.404939] Switching to clocksource hpet +[ 0.406951] Switched to NOHz mode on CPU #0 +[ 0.407047] Switched to NOHz mode on CPU #1 +[ 0.425306] AppArmor: AppArmor Filesystem Enabled +[ 0.425386] pnp: PnP ACPI init +[ 0.425432] ACPI: bus type pnp registered +[ 0.426887] pnp 00:00: [bus 00-ff] +[ 0.426899] pnp 00:00: [io 0x0000-0x0cf7 window] +[ 0.426908] pnp 00:00: [io 0x0cf8-0x0cff] +[ 0.426917] pnp 00:00: [io 0x0d00-0xffff window] +[ 0.426926] pnp 00:00: [mem 0x000a0000-0x000bffff window] +[ 0.426935] pnp 00:00: [mem 0x000c0000-0x000c3fff window] +[ 0.426943] pnp 00:00: [mem 0x000c4000-0x000c7fff window] +[ 0.426951] pnp 00:00: [mem 0x000c8000-0x000cbfff window] +[ 0.426960] pnp 00:00: [mem 0x000cc000-0x000cffff window] +[ 0.426968] pnp 00:00: [mem 0x000d0000-0x000d3fff window] +[ 0.426977] pnp 00:00: [mem 0x000d4000-0x000d7fff window] +[ 0.426985] pnp 00:00: [mem 0x000d8000-0x000dbfff window] +[ 0.426993] pnp 00:00: [mem 0x000dc000-0x000dffff window] +[ 0.427002] pnp 00:00: [mem 0x000e0000-0x000e3fff window] +[ 0.427010] pnp 00:00: [mem 0x000e4000-0x000e7fff window] +[ 0.427019] pnp 00:00: [mem 0x000e8000-0x000ebfff window] +[ 0.427027] pnp 00:00: [mem 0x000ec000-0x000effff window] +[ 0.427036] pnp 00:00: [mem 0x000f0000-0x000fffff window] +[ 0.427044] pnp 00:00: [mem 0x80000000-0xfebfffff window] +[ 0.427245] pnp 00:00: Plug and Play ACPI device, IDs PNP0a08 PNP0a03 (active) +[ 0.427700] pnp 00:01: [io 0x002e-0x002f] +[ 0.427709] pnp 00:01: [io 0x0061] +[ 0.427718] pnp 00:01: [io 0x0070] +[ 0.427725] pnp 00:01: [io 0x0080] +[ 0.427733] pnp 00:01: [io 0x0092] +[ 0.427741] pnp 00:01: [io 0x00b2-0x00b3] +[ 0.427749] pnp 00:01: [io 0x0063] +[ 0.427757] pnp 00:01: [io 0x0065] +[ 0.427763] pnp 00:01: [io 0x0067] +[ 0.427771] pnp 00:01: [io 0x0600-0x060f] +[ 0.427778] pnp 00:01: [io 0x0610] +[ 0.427785] pnp 00:01: [io 0x0800-0x080f] +[ 0.427792] pnp 00:01: [io 0x0810-0x0817] +[ 0.427799] pnp 00:01: [io 0x0400-0x047f] +[ 0.427807] pnp 00:01: [io 0x0500-0x053f] +[ 0.427814] pnp 00:01: [io 0x0380-0x0387] +[ 0.427822] pnp 00:01: [mem 0xe0000000-0xefffffff] +[ 0.427830] pnp 00:01: [mem 0xfed1c000-0xfed1ffff] +[ 0.427838] pnp 00:01: [mem 0xfed14000-0xfed17fff] +[ 0.427846] pnp 00:01: [mem 0xfed18000-0xfed18fff] +[ 0.427854] pnp 00:01: [mem 0xfed19000-0xfed19fff] +[ 0.427862] pnp 00:01: [mem 0xfec00000-0xfec00fff] +[ 0.427870] pnp 00:01: [mem 0xfee00000-0xfee00fff] +[ 0.428117] system 00:01: [io 0x0600-0x060f] has been reserved +[ 0.428128] system 00:01: [io 0x0610] has been reserved +[ 0.428138] system 00:01: [io 0x0800-0x080f] has been reserved +[ 0.428147] system 00:01: [io 0x0810-0x0817] has been reserved +[ 0.428157] system 00:01: [io 0x0400-0x047f] has been reserved +[ 0.428166] system 00:01: [io 0x0500-0x053f] has been reserved +[ 0.428176] system 00:01: [io 0x0380-0x0387] has been reserved +[ 0.428187] system 00:01: [mem 0xe0000000-0xefffffff] has been reserved +[ 0.428197] system 00:01: [mem 0xfed1c000-0xfed1ffff] has been reserved +[ 0.428207] system 00:01: [mem 0xfed14000-0xfed17fff] has been reserved +[ 0.428217] system 00:01: [mem 0xfed18000-0xfed18fff] has been reserved +[ 0.428228] system 00:01: [mem 0xfed19000-0xfed19fff] has been reserved +[ 0.428238] system 00:01: [mem 0xfec00000-0xfec00fff] could not be reserved +[ 0.428248] system 00:01: [mem 0xfee00000-0xfee00fff] has been reserved +[ 0.428260] system 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) +[ 0.428304] pnp 00:02: [io 0x0000-0x001f] +[ 0.428312] pnp 00:02: [io 0x0081-0x0091] +[ 0.428320] pnp 00:02: [io 0x0093-0x009f] +[ 0.428327] pnp 00:02: [io 0x00c0-0x00df] +[ 0.428335] pnp 00:02: [dma 4] +[ 0.428429] pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) +[ 0.428529] pnp 00:03: [io 0x0070-0x0077] +[ 0.428632] pnp 00:03: Plug and Play ACPI device, IDs PNP0b00 (active) +[ 0.428864] pnp 00:04: [irq 0 disabled] +[ 0.428888] pnp 00:04: [irq 8] +[ 0.428896] pnp 00:04: [mem 0xfed00000-0xfed003ff] +[ 0.428994] pnp 00:04: Plug and Play ACPI device, IDs PNP0103 (active) +[ 0.429037] pnp 00:05: [io 0x00f0] +[ 0.429053] pnp 00:05: [irq 13] +[ 0.429158] pnp 00:05: Plug and Play ACPI device, IDs PNP0c04 (active) +[ 0.429218] pnp 00:06: [mem 0xff800000-0xffffffff] +[ 0.429318] pnp 00:06: Plug and Play ACPI device, IDs INT0800 (active) +[ 0.429399] pnp 00:07: [io 0x0060] +[ 0.429408] pnp 00:07: [io 0x0064] +[ 0.429424] pnp 00:07: [irq 1] +[ 0.429531] pnp 00:07: Plug and Play ACPI device, IDs PNP0303 (active) +[ 0.429688] pnp 00:08: [irq 12] +[ 0.429796] pnp 00:08: Plug and Play ACPI device, IDs STLc023 PNP0f13 (active) +[ 0.430260] pnp: PnP ACPI: found 9 devices +[ 0.430268] ACPI: ACPI bus type pnp unregistered +[ 0.430277] PnPBIOS: Disabled by ACPI PNP +[ 0.471290] pci 0000:01:00.0: no compatible bridge window for [mem 0xffff0000-0xffffffff pref] +[ 0.471305] PCI: max bus depth: 1 pci_try_num: 2 +[ 0.471367] pci 0000:01:00.0: BAR 6: assigned [mem 0x90020000-0x9002ffff pref] +[ 0.471378] pci 0000:00:1c.0: PCI bridge to [bus 01-01] +[ 0.471388] pci 0000:00:1c.0: bridge window [io 0x2000-0x2fff] +[ 0.471403] pci 0000:00:1c.0: bridge window [mem 0x93000000-0x93ffffff] +[ 0.471415] pci 0000:00:1c.0: bridge window [mem 0x90000000-0x90ffffff 64bit pref] +[ 0.471432] pci 0000:00:1c.1: PCI bridge to [bus 02-02] +[ 0.471442] pci 0000:00:1c.1: bridge window [io 0x1000-0x1fff] +[ 0.471455] pci 0000:00:1c.1: bridge window [mem 0x92000000-0x92ffffff] +[ 0.471468] pci 0000:00:1c.1: bridge window [mem 0x91000000-0x91ffffff 64bit pref] +[ 0.471485] pci 0000:00:1e.0: PCI bridge to [bus 03-03] +[ 0.471492] pci 0000:00:1e.0: bridge window [io disabled] +[ 0.471505] pci 0000:00:1e.0: bridge window [mem disabled] +[ 0.471516] pci 0000:00:1e.0: bridge window [mem pref disabled] +[ 0.471577] pci 0000:00:1c.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 +[ 0.471593] pci 0000:00:1c.0: setting latency timer to 64 +[ 0.471629] pci 0000:00:1c.1: PCI INT B -> GSI 17 (level, low) -> IRQ 17 +[ 0.471642] pci 0000:00:1c.1: setting latency timer to 64 +[ 0.471663] pci 0000:00:1e.0: setting latency timer to 64 +[ 0.471675] pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7] +[ 0.471684] pci_bus 0000:00: resource 5 [io 0x0d00-0xffff] +[ 0.471693] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff] +[ 0.471702] pci_bus 0000:00: resource 7 [mem 0x80000000-0xfebfffff] +[ 0.471711] pci_bus 0000:01: resource 0 [io 0x2000-0x2fff] +[ 0.471719] pci_bus 0000:01: resource 1 [mem 0x93000000-0x93ffffff] +[ 0.471729] pci_bus 0000:01: resource 2 [mem 0x90000000-0x90ffffff 64bit pref] +[ 0.471738] pci_bus 0000:02: resource 0 [io 0x1000-0x1fff] +[ 0.471747] pci_bus 0000:02: resource 1 [mem 0x92000000-0x92ffffff] +[ 0.471756] pci_bus 0000:02: resource 2 [mem 0x91000000-0x91ffffff 64bit pref] +[ 0.471766] pci_bus 0000:03: resource 4 [io 0x0000-0x0cf7] +[ 0.471774] pci_bus 0000:03: resource 5 [io 0x0d00-0xffff] +[ 0.471783] pci_bus 0000:03: resource 6 [mem 0x000a0000-0x000bffff] +[ 0.471792] pci_bus 0000:03: resource 7 [mem 0x80000000-0xfebfffff] +[ 0.471910] NET: Registered protocol family 2 +[ 0.472158] IP route cache hash table entries: 32768 (order: 5, 131072 bytes) +[ 0.473036] TCP established hash table entries: 131072 (order: 8, 1048576 bytes) +[ 0.474146] TCP bind hash table entries: 65536 (order: 7, 524288 bytes) +[ 0.474668] TCP: Hash tables configured (established 131072 bind 65536) +[ 0.474682] TCP reno registered +[ 0.474702] UDP hash table entries: 512 (order: 2, 16384 bytes) +[ 0.474731] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes) +[ 0.475056] NET: Registered protocol family 1 +[ 0.475105] pci 0000:00:02.0: Boot video device +[ 0.492131] PCI: CLS 64 bytes, default 64 +[ 0.492146] Simple Boot Flag at 0x44 set to 0x1 +[ 0.493146] audit: initializing netlink socket (disabled) +[ 0.493177] type=2000 audit(1332352535.488:1): initialized +[ 0.552532] highmem bounce pool size: 64 pages +[ 0.552550] HugeTLB registered 4 MB page size, pre-allocated 0 pages +[ 0.569212] VFS: Disk quotas dquot_6.5.2 +[ 0.569438] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) +[ 0.571918] fuse init (API version 7.16) +[ 0.572313] msgmni has been set to 1679 +[ 0.573604] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253) +[ 0.573726] io scheduler noop registered +[ 0.573734] io scheduler deadline registered +[ 0.573794] io scheduler cfq registered (default) +[ 0.574128] pcieport 0000:00:1c.0: setting latency timer to 64 +[ 0.574229] pcieport 0000:00:1c.0: irq 40 for MSI/MSI-X +[ 0.574400] pcieport 0000:00:1c.1: setting latency timer to 64 +[ 0.574487] pcieport 0000:00:1c.1: irq 41 for MSI/MSI-X +[ 0.574736] pci_hotplug: PCI Hot Plug PCI Core version: 0.5 +[ 0.574835] pciehp: PCI Express Hot Plug Controller Driver version: 0.4 +[ 0.575009] intel_idle: MWAIT substates: 0x20220 +[ 0.575027] intel_idle: v0.4 model 0x1C +[ 0.575033] intel_idle: lapic_timer_reliable_states 0x2 +[ 0.575055] Marking TSC unstable due to TSC halts in idle states deeper than C2 +[ 0.575413] ACPI: Deprecated procfs I/F for AC is loaded, please retry with CONFIG_ACPI_PROCFS_POWER cleared +[ 0.575774] ACPI: AC Adapter [ACAD] (off-line) +[ 0.576036] input: Power Button as /devices/LNXSYSTM:00/device:00/PNP0C0C:00/input/input0 +[ 0.576052] ACPI: Power Button [PWRB] +[ 0.576202] input: Sleep Button as /devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input1 +[ 0.576215] ACPI: Sleep Button [SLPB] +[ 0.576368] input: Lid Switch as /devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input2 +[ 0.576634] ACPI: Lid Switch [LID0] +[ 0.577090] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input3 +[ 0.577106] ACPI: Power Button [PWRF] +[ 0.577204] ACPI: acpi_idle yielding to intel_idle +[ 0.583039] thermal LNXTHERM:00: registered as thermal_zone0 +[ 0.583049] ACPI: Thermal Zone [TZ01] (47 C) +[ 0.583122] ACPI: Deprecated procfs I/F for battery is loaded, please retry with CONFIG_ACPI_PROCFS_POWER cleared +[ 0.583276] ERST: Table is not found! +[ 0.583487] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled +[ 0.593541] isapnp: Scanning for PnP cards... +[ 0.641088] ACPI: Battery Slot [BAT0] (battery present) +[ 0.947950] isapnp: No Plug & Play device found +[ 0.958373] Freeing initrd memory: 13876k freed +[ 0.985389] Linux agpgart interface v0.103 +[ 0.985556] agpgart-intel 0000:00:00.0: Intel GMA3150 Chipset +[ 0.985727] agpgart-intel 0000:00:00.0: detected gtt size: 524288K total, 262144K mappable +[ 0.985968] agpgart-intel 0000:00:00.0: detected 8192K stolen memory +[ 0.986204] agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x80000000 +[ 0.989348] brd: module loaded +[ 0.990831] loop: module loaded +[ 0.992137] Fixed MDIO Bus: probed +[ 0.992214] PPP generic driver version 2.4.2 +[ 0.992329] tun: Universal TUN/TAP device driver, 1.6 +[ 0.992334] tun: (C) 1999-2004 Max Krasnyansky +[ 0.992535] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver +[ 0.992580] ehci_hcd 0000:00:1d.7: PCI INT A -> GSI 16 (level, low) -> IRQ 16 +[ 0.992616] ehci_hcd 0000:00:1d.7: setting latency timer to 64 +[ 0.992624] ehci_hcd 0000:00:1d.7: EHCI Host Controller +[ 0.992710] ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 1 +[ 0.992751] ehci_hcd 0000:00:1d.7: using broken periodic workaround +[ 0.992770] ehci_hcd 0000:00:1d.7: debug port 1 +[ 0.996664] ehci_hcd 0000:00:1d.7: cache line size of 64 is not supported +[ 0.996702] ehci_hcd 0000:00:1d.7: irq 16, io mem 0x94204400 +[ 1.012035] ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00 +[ 1.012345] hub 1-0:1.0: USB hub found +[ 1.012357] hub 1-0:1.0: 8 ports detected +[ 1.012516] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver +[ 1.012550] uhci_hcd: USB Universal Host Controller Interface driver +[ 1.012624] uhci_hcd 0000:00:1d.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 +[ 1.012640] uhci_hcd 0000:00:1d.0: setting latency timer to 64 +[ 1.012648] uhci_hcd 0000:00:1d.0: UHCI Host Controller +[ 1.012744] uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 2 +[ 1.012788] uhci_hcd 0000:00:1d.0: irq 16, io base 0x00003080 +[ 1.013079] hub 2-0:1.0: USB hub found +[ 1.013091] hub 2-0:1.0: 2 ports detected +[ 1.013213] uhci_hcd 0000:00:1d.1: PCI INT B -> GSI 17 (level, low) -> IRQ 17 +[ 1.013227] uhci_hcd 0000:00:1d.1: setting latency timer to 64 +[ 1.013234] uhci_hcd 0000:00:1d.1: UHCI Host Controller +[ 1.013329] uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 3 +[ 1.013388] uhci_hcd 0000:00:1d.1: irq 17, io base 0x00003060 +[ 1.013678] hub 3-0:1.0: USB hub found +[ 1.013689] hub 3-0:1.0: 2 ports detected +[ 1.013836] uhci_hcd 0000:00:1d.2: PCI INT C -> GSI 18 (level, low) -> IRQ 18 +[ 1.013851] uhci_hcd 0000:00:1d.2: setting latency timer to 64 +[ 1.013858] uhci_hcd 0000:00:1d.2: UHCI Host Controller +[ 1.013946] uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 4 +[ 1.014008] uhci_hcd 0000:00:1d.2: irq 18, io base 0x00003040 +[ 1.014295] hub 4-0:1.0: USB hub found +[ 1.014307] hub 4-0:1.0: 2 ports detected +[ 1.014442] uhci_hcd 0000:00:1d.3: PCI INT D -> GSI 19 (level, low) -> IRQ 19 +[ 1.014457] uhci_hcd 0000:00:1d.3: setting latency timer to 64 +[ 1.014464] uhci_hcd 0000:00:1d.3: UHCI Host Controller +[ 1.014555] uhci_hcd 0000:00:1d.3: new USB bus registered, assigned bus number 5 +[ 1.014612] uhci_hcd 0000:00:1d.3: irq 19, io base 0x00003020 +[ 1.014906] hub 5-0:1.0: USB hub found +[ 1.014917] hub 5-0:1.0: 2 ports detected +[ 1.015153] i8042: PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MAVC] at 0x60,0x64 irq 1,12 +[ 1.022914] serio: i8042 KBD port at 0x60,0x64 irq 1 +[ 1.022931] serio: i8042 AUX port at 0x60,0x64 irq 12 +[ 1.023256] mousedev: PS/2 mouse device common for all mice +[ 1.023697] rtc_cmos 00:03: RTC can wake from S4 +[ 1.023862] rtc_cmos 00:03: rtc core: registered rtc_cmos as rtc0 +[ 1.023903] rtc0: alarms up to one month, 242 bytes nvram, hpet irqs +[ 1.024187] device-mapper: uevent: version 1.0.3 +[ 1.024386] device-mapper: ioctl: 4.20.0-ioctl (2011-02-02) initialised: dm-devel@redhat.com +[ 1.024469] EISA: Probing bus 0 at eisa.0 +[ 1.024476] EISA: Cannot allocate resource for mainboard +[ 1.024482] Cannot allocate resource for EISA slot 1 +[ 1.024487] Cannot allocate resource for EISA slot 2 +[ 1.024493] Cannot allocate resource for EISA slot 3 +[ 1.024498] Cannot allocate resource for EISA slot 4 +[ 1.024503] Cannot allocate resource for EISA slot 5 +[ 1.024509] Cannot allocate resource for EISA slot 6 +[ 1.024514] Cannot allocate resource for EISA slot 7 +[ 1.024519] Cannot allocate resource for EISA slot 8 +[ 1.024524] EISA: Detected 0 cards. +[ 1.024541] cpufreq-nforce2: No nForce2 chipset. +[ 1.024697] cpuidle: using governor ladder +[ 1.024961] cpuidle: using governor menu +[ 1.024967] EFI Variables Facility v0.08 2004-May-17 +[ 1.025661] TCP cubic registered +[ 1.026049] NET: Registered protocol family 10 +[ 1.027435] NET: Registered protocol family 17 +[ 1.027488] Registering the dns_resolver key type +[ 1.027547] Using IPI No-Shortcut mode +[ 1.027780] PM: Hibernation image not present or could not be loaded. +[ 1.027805] registered taskstats version 1 +[ 1.036718] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input4 +[ 1.049200] Magic number: 4:254:947 +[ 1.049259] tty tty4: hash matches +[ 1.049346] rtc_cmos 00:03: setting system clock to 2012-03-21 17:55:36 UTC (1332352536) +[ 1.050758] BIOS EDD facility v0.16 2004-Jun-25, 0 devices found +[ 1.050763] EDD information not available. +[ 1.051071] Freeing unused kernel memory: 696k freed +[ 1.051497] Write protecting the kernel text: 5344k +[ 1.051585] Write protecting the kernel read-only data: 2188k +[ 1.092382] udevd[81]: starting version 173 +[ 1.330859] r8169 Gigabit Ethernet driver 2.3LK-NAPI loaded +[ 1.330917] r8169 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 +[ 1.330992] r8169 0000:01:00.0: setting latency timer to 64 +[ 1.331095] r8169 0000:01:00.0: irq 42 for MSI/MSI-X +[ 1.343811] r8169 0000:01:00.0: eth0: RTL8102e at 0xf8028000, e8:9a:8f:88:b9:05, XID 04e00000 IRQ 42 +[ 1.380145] usb 1-4: new high speed USB device number 3 using ehci_hcd +[ 1.380326] ahci 0000:00:1f.2: version 3.0 +[ 1.380361] ahci 0000:00:1f.2: PCI INT B -> GSI 17 (level, low) -> IRQ 17 +[ 1.391535] ahci 0000:00:1f.2: irq 43 for MSI/MSI-X +[ 1.391627] ahci: SSS flag set, parallel bus scan disabled +[ 1.391681] ahci 0000:00:1f.2: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0x1 impl SATA mode +[ 1.391694] ahci 0000:00:1f.2: flags: 64bit ncq stag pm led clo pio slum part +[ 1.391708] ahci 0000:00:1f.2: setting latency timer to 64 +[ 1.394435] scsi0 : ahci +[ 1.394840] scsi1 : ahci +[ 1.395128] scsi2 : ahci +[ 1.395405] scsi3 : ahci +[ 1.396197] ata1: SATA max UDMA/133 abar m1024@0x94204000 port 0x94204100 irq 43 +[ 1.396208] ata2: DUMMY +[ 1.396213] ata3: DUMMY +[ 1.396218] ata4: DUMMY +[ 1.716120] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300) +[ 1.717041] ata1.00: unexpected _GTF length (4) +[ 1.770082] ata1.00: ATA-8: ST9500325AS, 0001SDM1, max UDMA/133 +[ 1.770095] ata1.00: 976773168 sectors, multi 16: LBA48 NCQ (depth 31/32) +[ 1.771860] ata1.00: unexpected _GTF length (4) +[ 1.772210] ata1.00: configured for UDMA/133 +[ 1.772507] scsi 0:0:0:0: Direct-Access ATA ST9500325AS 0001 PQ: 0 ANSI: 5 +[ 1.773059] sd 0:0:0:0: Attached scsi generic sg0 type 0 +[ 1.773199] sd 0:0:0:0: [sda] 976773168 512-byte logical blocks: (500 GB/465 GiB) +[ 1.773417] sd 0:0:0:0: [sda] Write Protect is off +[ 1.773429] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 +[ 1.773557] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA +[ 1.848081] usb 2-1: new low speed USB device number 2 using uhci_hcd +[ 1.896593] sda: sda1 sda2 sda3 sda4 < sda5 sda6 sda7 sda8 > +[ 1.898053] sd 0:0:0:0: [sda] Attached SCSI disk +[ 2.061057] input: Genius Optical Mouse as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1:1.0/input/input5 +[ 2.061466] generic-usb 0003:0458:003A.0001: input,hidraw0: USB HID v1.11 Mouse [Genius Optical Mouse] on usb-0000:00:1d.0-1/input0 +[ 2.061531] usbcore: registered new interface driver usbhid +[ 2.061539] usbhid: USB HID core driver +[ 3.634548] EXT4-fs (sda7): mounted filesystem with ordered data mode. Opts: (null) +[ 15.220447] udevd[305]: starting version 173 +[ 15.296288] Adding 2083836k swap on /dev/sda8. Priority:-1 extents:1 across:2083836k +[ 15.319750] lp: driver loaded but no devices found +[ 15.585089] [drm] Initialized drm 1.1.0 20060810 +[ 15.639418] EXT4-fs (sda7): re-mounted. Opts: errors=remount-ro +[ 15.717608] i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 +[ 15.717624] i915 0000:00:02.0: setting latency timer to 64 +[ 15.842319] i915 0000:00:02.0: irq 44 for MSI/MSI-X +[ 15.842337] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010). +[ 15.842345] [drm] Driver supports precise vblank timestamp query. +[ 15.855120] wmi: Mapper loaded +[ 15.876599] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+mem,decodes=io+mem:owns=io+mem +[ 15.928335] cfg80211: Calling CRDA to update world regulatory domain +[ 16.197366] fixme: max PWM is zero. +[ 16.261129] type=1400 audit(1332363351.709:2): apparmor="STATUS" operation="profile_load" name="/sbin/dhclient" pid=529 comm="apparmor_parser" +[ 16.262527] type=1400 audit(1332363351.709:3): apparmor="STATUS" operation="profile_load" name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=529 comm="apparmor_parser" +[ 16.263403] type=1400 audit(1332363351.709:4): apparmor="STATUS" operation="profile_load" name="/usr/lib/connman/scripts/dhclient-script" pid=529 comm="apparmor_parser" +[ 16.339641] rtl8192ce 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 +[ 16.339662] rtl8192ce 0000:02:00.0: setting latency timer to 64 +[ 16.436334] Linux video capture interface: v2.00 +[ 16.461370] [drm] initialized overlay support +[ 16.473324] uvcvideo: Found UVC 1.00 device USB Webcam (064e:f248) +[ 16.499633] input: USB Webcam as /devices/pci0000:00/0000:00:1d.7/usb1/1-4/1-4:1.0/input/input6 +[ 16.506722] usbcore: registered new interface driver uvcvideo +[ 16.506733] USB Video Class driver (v1.1.0) +[ 16.529057] psmouse serio1: ID: 10 00 64 +[ 16.529205] fbcon: inteldrmfb (fb0) is primary device +[ 16.529643] Console: switching to colour frame buffer device 128x37 +[ 16.529722] fb0: inteldrmfb frame buffer device +[ 16.529729] drm: registered panic notifier +[ 16.541308] acpi device:23: registered as cooling_device2 +[ 16.541843] input: Video Bus as /devices/LNXSYSTM:00/device:00/PNP0A08:00/LNXVIDEO:00/input/input7 +[ 16.542023] ACPI: Video Device [OVGA] (multi-head: yes rom: no post: no) +[ 16.542141] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0 +[ 16.570399] HDA Intel 0000:00:1b.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 +[ 16.570523] HDA Intel 0000:00:1b.0: irq 45 for MSI/MSI-X +[ 16.570590] HDA Intel 0000:00:1b.0: setting latency timer to 64 +[ 16.708418] input: HDA Intel Mic at Ext Left Jack as /devices/pci0000:00/0000:00:1b.0/sound/card0/input8 +[ 16.716090] input: HDA Intel HP Out at Ext Left Jack as /devices/pci0000:00/0000:00:1b.0/sound/card0/input9 +[ 16.763673] Finger Sensing Pad, hw: 14.1.1, sw: 1.0.0-K, buttons: 4 +[ 17.205354] input: FSPPS/2 Sentelic FingerSensingPad as /devices/platform/i8042/serio1/input/input10 +[ 17.331554] cfg80211: Updating information on frequency 2412 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331567] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331576] cfg80211: Updating information on frequency 2417 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331586] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331594] cfg80211: Updating information on frequency 2422 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331604] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331612] cfg80211: Updating information on frequency 2427 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331621] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331629] cfg80211: Updating information on frequency 2432 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331639] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331647] cfg80211: Updating information on frequency 2437 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331658] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331665] cfg80211: Updating information on frequency 2442 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331675] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331683] cfg80211: Updating information on frequency 2447 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331694] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331703] cfg80211: Updating information on frequency 2452 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331713] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331722] cfg80211: Updating information on frequency 2457 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331732] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331741] cfg80211: Updating information on frequency 2462 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331751] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331760] cfg80211: Updating information on frequency 2467 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331770] cfg80211: 2457000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331779] cfg80211: Updating information on frequency 2472 MHz for a 20 MHz width channel with regulatory rule: +[ 17.331789] cfg80211: 2457000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.331798] cfg80211: Disabling freq 2484 MHz as custom regd has no rule that fits a 20 MHz wide channel +[ 17.331832] cfg80211: Pending regulatory request, waiting for it to be processed... +[ 17.332671] cfg80211: Ignoring regulatory request Set by core since the driver uses its own custom regulatory domain +[ 17.361049] cfg80211: Ignoring regulatory request Set by core since the driver uses its own custom regulatory domain +[ 17.361061] cfg80211: World regulatory domain updated: +[ 17.361069] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp) +[ 17.361080] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm) +[ 17.361090] cfg80211: (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm) +[ 17.361100] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm) +[ 17.361109] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm) +[ 17.361119] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm) +[ 17.361156] cfg80211: Calling CRDA for country: EC +[ 17.387262] ieee80211 phy0: Selected rate control algorithm 'rtl_rc' +[ 17.390339] rtlwifi: wireless switch is on +[ 17.458324] cfg80211: Updating information on frequency 2412 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458338] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458347] cfg80211: Updating information on frequency 2417 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458358] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458366] cfg80211: Updating information on frequency 2422 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458376] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458385] cfg80211: Updating information on frequency 2427 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458395] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458404] cfg80211: Updating information on frequency 2432 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458413] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458422] cfg80211: Updating information on frequency 2437 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458432] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458440] cfg80211: Updating information on frequency 2442 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458449] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458457] cfg80211: Updating information on frequency 2447 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458467] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458474] cfg80211: Updating information on frequency 2452 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458483] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458491] cfg80211: Updating information on frequency 2457 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458500] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458508] cfg80211: Updating information on frequency 2462 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458518] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458525] cfg80211: Updating information on frequency 2467 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458535] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458543] cfg80211: Updating information on frequency 2472 MHz for a 20 MHz width channel with regulatory rule: +[ 17.458552] cfg80211: 2402000 KHz - 2482000 KHz @ KHz), (N/A mBi, 2000 mBm) +[ 17.458559] cfg80211: Disabling freq 2484 MHz +[ 17.458569] cfg80211: Regulatory domain changed to country: EC +[ 17.458575] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp) +[ 17.458584] cfg80211: (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm) +[ 17.458594] cfg80211: (5170000 KHz - 5250000 KHz @ 20000 KHz), (300 mBi, 1700 mBm) +[ 17.458603] cfg80211: (5250000 KHz - 5330000 KHz @ 20000 KHz), (300 mBi, 2300 mBm) +[ 17.458612] cfg80211: (5735000 KHz - 5835000 KHz @ 20000 KHz), (300 mBi, 3000 mBm) +[ 20.587017] type=1400 audit(1332363356.033:5): apparmor="STATUS" operation="profile_load" name="/usr/lib/lightdm/lightdm-guest-session-wrapper" pid=851 comm="apparmor_parser" +[ 20.600339] type=1400 audit(1332363356.049:6): apparmor="STATUS" operation="profile_replace" name="/sbin/dhclient" pid=852 comm="apparmor_parser" +[ 20.601740] type=1400 audit(1332363356.049:7): apparmor="STATUS" operation="profile_replace" name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=852 comm="apparmor_parser" +[ 20.602643] type=1400 audit(1332363356.049:8): apparmor="STATUS" operation="profile_replace" name="/usr/lib/connman/scripts/dhclient-script" pid=852 comm="apparmor_parser" +[ 20.667644] ppdev: user-space parallel port driver +[ 20.689493] type=1400 audit(1332363356.137:9): apparmor="STATUS" operation="profile_load" name="/usr/lib/libvirt/virt-aa-helper" pid=872 comm="apparmor_parser" +[ 20.750584] type=1400 audit(1332363356.197:10): apparmor="STATUS" operation="profile_load" name="/usr/bin/evince" pid=861 comm="apparmor_parser" +[ 20.754459] type=1400 audit(1332363356.201:11): apparmor="STATUS" operation="profile_load" name="/usr/lib/cups/backend/cups-pdf" pid=881 comm="apparmor_parser" +[ 21.514169] init: failsafe main process (812) killed by TERM signal +[ 21.535186] init: apport pre-start process (926) terminated with status 1 +[ 21.577060] audit_printk_skb: 30 callbacks suppressed +[ 21.577070] type=1400 audit(1332363357.025:22): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=957 comm="apparmor_parser" +[ 21.672624] init: Failed to spawn mysql main process: unable to execute: No such file or directory +[ 21.675839] init: apport post-stop process (970) terminated with status 1 diff --git a/t/pt-summary/samples/Linux/001/dmidecode b/t/pt-summary/samples/Linux/001/dmidecode new file mode 100755 index 00000000..15f7ce1c --- /dev/null +++ b/t/pt-summary/samples/Linux/001/dmidecode @@ -0,0 +1,412 @@ +# dmidecode 2.9 +SMBIOS 2.6 present. +34 structures occupying 1393 bytes. +Table at 0x000E81B0. + +Handle 0x0000, DMI type 0, 24 bytes +BIOS Information + Vendor: INSYDE + Version: Q3F81 + Release Date: 08/30/2011 + ROM Size: 1024 kB + Characteristics: + PCI is supported + BIOS is upgradeable + BIOS shadowing is allowed + Boot from CD is supported + Selectable boot is supported + BIOS ROM is socketed + EDD is supported + Japanese floppy for NEC 9800 1.2 MB is supported (int 13h) + Japanese floppy for Toshiba 1.2 MB is supported (int 13h) + 5.25"/360 KB floppy services are supported (int 13h) + 5.25"/1.2 MB floppy services are supported (int 13h) + 3.5"/720 KB floppy services are supported (int 13h) + 3.5"/2.88 MB floppy services are supported (int 13h) + 8042 keyboard services are supported (int 9h) + CGA/mono video services are supported (int 10h) + ACPI is supported + USB legacy is supported + Targeted content distribution is supported + BIOS Revision: 36.81 + Firmware Revision: 33.31 + +Handle 0x0001, DMI type 1, 27 bytes +System Information + Manufacturer: Quanta + Product Name: UW3 + Version: TBD + Serial Number: 123456789 + UUID: 78563412-3412-7856-90AB-CDDEEFAABBCC + Wake-up Type: Power Switch + SKU Number: NetTopSku + Family: Intel_Mobile + +Handle 0x0002, DMI type 2, 16 bytes +Base Board Information + Manufacturer: Quanta + Product Name: UW3 + Version: TBD + Serial Number: QTFA6BA130003X + Asset Tag: Base Board Asset Tag + Features: + Board is a hosting board + Board is replaceable + Location In Chassis: Base Board Chassis Location + Chassis Handle: 0x0003 + Type: Motherboard + Contained Object Handles: 0 + +Handle 0x0003, DMI type 3, 22 bytes +Chassis Information + Manufacturer: Quanta + Type: Other + Lock: Not Present + Version: UW3 + Serial Number: E89A8F88B905 + Asset Tag: Chassis Asset Tag + Boot-up State: Safe + Power Supply State: Safe + Thermal State: Safe + Security Status: None + OEM Information: 0x00000000 + Height: Unspecified + Number Of Power Cords: 1 + Contained Elements: 0 + +Handle 0x0004, DMI type 9, 17 bytes +System Slot Information + Designation: J7 + Type: x1 PCI Express + Current Usage: Available + Length: Other + ID: 0 + Characteristics: + PME signal is supported + Hot-plug devices are supported + +Handle 0x0005, DMI type 11, 5 bytes +OEM Strings + String 1: kPJ-+7X7+EfTa + String 2: jTyRUBSNi7Ydf + String 3: fCrOzJ6x1i-eh + String 4: String4 for Original Equipment Manufacturer + String 5: String5 for Original Equipment Manufacturer + +Handle 0x0006, DMI type 12, 5 bytes +System Configuration Options + Option 1: DSN: + Option 2: DSN: + Option 3: DSN: + Option 4: NVR: + +Handle 0x0007, DMI type 15, 29 bytes +System Event Log + Area Length: 32672 bytes + Header Start Offset: 0x0000 + Data Start Offset: 0x0000 + Access Method: General-purpose non-volatile data functions + Access Address: 0x0000 + Status: Valid, Not Full + Change Token: 0x12345678 + Header Format: OEM-specific + Supported Log Type Descriptors: 3 + Descriptor 1: POST memory resize + Data Format 1: None + Descriptor 2: POST error + Data Format 2: POST results bitmap + Descriptor 3: Log area reset/cleared + Data Format 3: None + +Handle 0x0008, DMI type 21, 7 bytes +Built-in Pointing Device + Type: Touch Pad + Interface: PS/2 + Buttons: 4 + +Handle 0x0009, DMI type 32, 20 bytes +System Boot Information + Status: No errors detected + +Handle 0x000A, DMI type 129, 5 bytes +OEM-specific Type + Header and Data: + 81 05 0A 00 4F + Strings: + em Test 1 + Oem Test 2 + +Handle 0x000B, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J20 + Internal Connector Type: None + External Reference Designator: Keyboard + External Connector Type: PS/2 + Port Type: Keyboard Port + +Handle 0x000C, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J22 + Internal Connector Type: None + External Reference Designator: Mouse + External Connector Type: PS/2 + Port Type: Mouse Port + +Handle 0x000D, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J9 + Internal Connector Type: None + External Reference Designator: SD Card Slot + External Connector Type: Access Bus (USB) + Port Type: USB + +Handle 0x000E, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J14 + Internal Connector Type: None + External Reference Designator: USB + External Connector Type: Access Bus (USB) + Port Type: USB + +Handle 0x000F, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J16 + Internal Connector Type: None + External Reference Designator: USB + External Connector Type: Access Bus (USB) + Port Type: USB + +Handle 0x0010, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J18 + Internal Connector Type: None + External Reference Designator: USB + External Connector Type: Access Bus (USB) + Port Type: USB + +Handle 0x0011, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J8 + Internal Connector Type: None + External Reference Designator: Network + External Connector Type: RJ-45 + Port Type: Network Port + +Handle 0x0012, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: U11 + Internal Connector Type: On Board IDE + External Reference Designator: OnBoard Primary IDE + External Connector Type: None + Port Type: Other + +Handle 0x0013, DMI type 8, 9 bytes +Port Connector Information + Internal Reference Designator: J5 + Internal Connector Type: None + External Reference Designator: CRT + External Connector Type: DB-15 female + Port Type: Video Port + +Handle 0x0014, DMI type 40, 18 bytes +Unknown Type + Header and Data: + 28 12 14 00 02 06 04 00 05 01 AA 07 00 00 05 02 + DC 05 + Strings: + PCIExpressx16 + Compiler Version: VC 9.0 + +Handle 0x0015, DMI type 41, 11 bytes +Unknown Type + Header and Data: + 29 0B 15 00 01 85 01 00 00 00 01 + Strings: + 82567LM Gigabit Network Connection + +Handle 0x0016, DMI type 16, 15 bytes +Physical Memory Array + Location: System Board Or Motherboard + Use: System Memory + Error Correction Type: None + Maximum Capacity: 4 GB + Error Information Handle: No Error + Number Of Devices: 2 + +Handle 0x0017, DMI type 17, 28 bytes +Memory Device + Array Handle: 0x0016 + Error Information Handle: 0x0018 + Total Width: Unknown + Data Width: 65474 bits + Size: 2048 MB + Form Factor: SODIMM + Set: None + Locator: DIMM0 + Bank Locator: BANK 0 + Type: DDR2 + Type Detail: Synchronous + Speed: 667 MHz (1.5 ns) + Manufacturer: 0000000000000000 + Serial Number: 00000000 + Asset Tag: Unknown + Part Number: 000000000000000000000000000000000000 + +Handle 0x0018, DMI type 18, 23 bytes +32-bit Memory Error Information + Type: OK + Granularity: Unknown + Operation: Unknown + Vendor Syndrome: Unknown + Memory Array Address: Unknown + Device Address: Unknown + Resolution: Unknown + +Handle 0x0019, DMI type 6, 12 bytes +Memory Module Information + Socket Designation: DIMM0 + Bank Connections: None + Current Speed: 1 ns + Type: Unknown DIMM + Installed Size: 2048 MB (Single-bank Connection) + Enabled Size: 2048 MB (Single-bank Connection) + Error Status: OK + +Handle 0x001A, DMI type 20, 19 bytes +Memory Device Mapped Address + Starting Address: 0x00000000000 + Ending Address: 0x0007FFFFFFF + Range Size: 2 GB + Physical Device Handle: 0x0017 + Memory Array Mapped Address Handle: 0x001C + Partition Row Position: 1 + +Handle 0x001B, DMI type 18, 23 bytes +32-bit Memory Error Information + Type: OK + Granularity: Unknown + Operation: Unknown + Vendor Syndrome: Unknown + Memory Array Address: Unknown + Device Address: Unknown + Resolution: Unknown + +Handle 0x001C, DMI type 19, 15 bytes +Memory Array Mapped Address + Starting Address: 0x00000000000 + Ending Address: 0x0007FFFFFFF + Range Size: 2 GB + Physical Array Handle: 0x0016 + Partition Width: 0 + +Handle 0x001D, DMI type 5, 20 bytes +Memory Controller Information + Error Detecting Method: None + Error Correcting Capabilities: + Unknown + None + Supported Interleave: One-way Interleave + Current Interleave: One-way Interleave + Maximum Memory Module Size: 4096 MB + Maximum Total Memory Size: 8192 MB + Supported Speeds: + Other + Supported Memory Types: + Other + Memory Module Voltage: Unknown + Associated Memory Slots: 2 + 0x0019 + 0x0019 + Enabled Error Correcting Capabilities: + None + +Handle 0x001E, DMI type 4, 42 bytes +Processor Information + Socket Designation: CPU + Type: Central Processor + Family: Pentium M + Manufacturer: Intel(R) Corporation + ID: CA 06 01 00 FF FB E9 BF + Signature: Type 0, Family 6, Model 28, Stepping 10 + Flags: + FPU (Floating-point unit on-chip) + VME (Virtual mode extension) + DE (Debugging extension) + PSE (Page size extension) + TSC (Time stamp counter) + MSR (Model specific registers) + PAE (Physical address extension) + MCE (Machine check exception) + CX8 (CMPXCHG8 instruction supported) + APIC (On-chip APIC hardware supported) + SEP (Fast system call) + MTRR (Memory type range registers) + PGE (Page global enable) + MCA (Machine check architecture) + CMOV (Conditional move instruction supported) + PAT (Page attribute table) + CLFSH (CLFLUSH instruction supported) + DS (Debug store) + ACPI (ACPI supported) + MMX (MMX technology supported) + FXSR (Fast floating-point save and restore) + SSE (Streaming SIMD extensions) + SSE2 (Streaming SIMD extensions 2) + SS (Self-snoop) + HTT (Hyper-threading technology) + TM (Thermal monitor supported) + PBE (Pending break enabled) + Version: Intel(R) Atom(TM) CPU N455 @ 1.66GHz + Voltage: 1.6 V + External Clock: 667 MHz + Max Speed: 1666 MHz + Current Speed: 1666 MHz + Status: Populated, Enabled + Upgrade: Socket 478 + L1 Cache Handle: 0x0020 + L2 Cache Handle: 0x001F + L3 Cache Handle: Not Provided + Serial Number: Not Specified + Asset Tag: FFFF + Part Number: Not Specified + Core Count: 1 + Core Enabled: 1 + Thread Count: 2 + Characteristics: + 64-bit capable + +Handle 0x001F, DMI type 7, 19 bytes +Cache Information + Socket Designation: Unknown + Configuration: Enabled, Not Socketed, Level 2 + Operational Mode: Write Back + Location: Internal + Installed Size: 512 KB + Maximum Size: 512 KB + Supported SRAM Types: + Synchronous + Installed SRAM Type: Synchronous + Speed: Unknown + Error Correction Type: Single-bit ECC + System Type: Unified + Associativity: 8-way Set-associative + +Handle 0x0020, DMI type 7, 19 bytes +Cache Information + Socket Designation: Unknown + Configuration: Enabled, Not Socketed, Level 1 + Operational Mode: Write Back + Location: Internal + Installed Size: 32 KB + Maximum Size: 32 KB + Supported SRAM Types: + Synchronous + Installed SRAM Type: Synchronous + Speed: Unknown + Error Correction Type: Single-bit ECC + System Type: Instruction + Associativity: 8-way Set-associative + +Handle 0x0021, DMI type 127, 4 bytes +End Of Table + diff --git a/t/pt-summary/samples/Linux/001/ip b/t/pt-summary/samples/Linux/001/ip new file mode 100755 index 00000000..70b0cb3a --- /dev/null +++ b/t/pt-summary/samples/Linux/001/ip @@ -0,0 +1,24 @@ +1: lo: mtu 16436 qdisc noqueue state UNKNOWN + link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 + RX: bytes packets errors dropped overrun mcast + 26454520 333224 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 26454520 333224 0 0 0 0 +2: eth0: mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 + link/ether e8:9a:8f:88:b9:05 brd ff:ff:ff:ff:ff:ff + RX: bytes packets errors dropped overrun mcast + 0 0 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 0 0 0 0 0 0 +3: wlan0: mtu 1500 qdisc mq state DOWN qlen 1000 + link/ether 20:7c:8f:55:13:75 brd ff:ff:ff:ff:ff:ff + RX: bytes packets errors dropped overrun mcast + 0 0 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 0 0 0 0 0 0 +4: virbr0: mtu 1500 qdisc noqueue state DOWN + link/ether 32:1e:4e:9a:05:16 brd ff:ff:ff:ff:ff:ff + RX: bytes packets errors dropped overrun mcast + 0 0 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 0 0 0 0 0 0 diff --git a/t/pt-summary/samples/Linux/001/lspci_file b/t/pt-summary/samples/Linux/001/lspci_file new file mode 100755 index 00000000..8e8967c2 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/lspci_file @@ -0,0 +1,17 @@ +00:00.0 Host bridge: Intel Corporation N10 Family DMI Bridge +00:02.0 VGA compatible controller: Intel Corporation N10 Family Integrated Graphics Controller +00:02.1 Display controller: Intel Corporation N10 Family Integrated Graphics Controller +00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02) +00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02) +00:1c.1 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 2 (rev 02) +00:1d.0 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 02) +00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02) +00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02) +00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02) +00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02) +00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) +00:1f.0 ISA bridge: Intel Corporation NM10 Family LPC Controller (rev 02) +00:1f.2 SATA controller: Intel Corporation N10/ICH7 Family SATA AHCI Controller (rev 02) +00:1f.3 SMBus: Intel Corporation N10/ICH 7 Family SMBus Controller (rev 02) +01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 02) +02:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter (rev 01) diff --git a/t/pt-summary/samples/Linux/001/lvs b/t/pt-summary/samples/Linux/001/lvs new file mode 100755 index 00000000..8c3b34fd --- /dev/null +++ b/t/pt-summary/samples/Linux/001/lvs @@ -0,0 +1 @@ + No volume groups found diff --git a/t/pt-summary/samples/Linux/001/memory b/t/pt-summary/samples/Linux/001/memory new file mode 100755 index 00000000..5ef7eaf2 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/memory @@ -0,0 +1,50 @@ + total used free shared buffers cached +Mem: 2099851264 1599336448 500514816 0 204341248 762146816 +-/+ buffers/cache: 632848384 1467002880 +Swap: 2133848064 0 2133848064 +MemTotal: 2050636 kB +MemFree: 488716 kB +Buffers: 199552 kB +Cached: 744284 kB +SwapCached: 0 kB +Active: 979228 kB +Inactive: 472084 kB +Active(anon): 740908 kB +Inactive(anon): 26548 kB +Active(file): 238320 kB +Inactive(file): 445536 kB +Unevictable: 16 kB +Mlocked: 16 kB +HighTotal: 1176152 kB +HighFree: 14892 kB +LowTotal: 874484 kB +LowFree: 473824 kB +SwapTotal: 2083836 kB +SwapFree: 2083836 kB +Dirty: 144 kB +Writeback: 0 kB +AnonPages: 507500 kB +Mapped: 141176 kB +Shmem: 259984 kB +Slab: 68800 kB +SReclaimable: 54100 kB +SUnreclaim: 14700 kB +KernelStack: 3168 kB +PageTables: 8752 kB +NFS_Unstable: 0 kB +Bounce: 0 kB +WritebackTmp: 0 kB +CommitLimit: 3109152 kB +Committed_AS: 2952180 kB +VmallocTotal: 122880 kB +VmallocUsed: 21448 kB +VmallocChunk: 96704 kB +HardwareCorrupted: 0 kB +AnonHugePages: 0 kB +HugePages_Total: 0 +HugePages_Free: 0 +HugePages_Rsvd: 0 +HugePages_Surp: 0 +Hugepagesize: 4096 kB +DirectMap4k: 16376 kB +DirectMap4M: 892928 kB diff --git a/t/pt-summary/samples/Linux/001/mounted_fs b/t/pt-summary/samples/Linux/001/mounted_fs new file mode 100755 index 00000000..66df06e9 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/mounted_fs @@ -0,0 +1,12 @@ +/dev/sda7 333G 35G 281G 12% / on / type ext4 (rw,errors=remount-ro,commit=0) +/dev/sdb1 3.8G 18M 3.8G 1% /media/PENDRIVE on /media/PENDRIVE type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks) +none 1002M 1.4M 1000M 1% /run/shm on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880) +none 1002M 1.4M 1000M 1% /run/shm on /run/shm type tmpfs (rw,nosuid,nodev) +none 1002M 1.4M 1000M 1% /run/shm on /sys/kernel/debug type debugfs (rw) +none 1002M 1.4M 1000M 1% /run/shm on /sys/kernel/security type securityfs (rw) +none 5.0M 0 5.0M 0% /run/lock on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880) +none 5.0M 0 5.0M 0% /run/lock on /run/shm type tmpfs (rw,nosuid,nodev) +none 5.0M 0 5.0M 0% /run/lock on /sys/kernel/debug type debugfs (rw) +none 5.0M 0 5.0M 0% /run/lock on /sys/kernel/security type securityfs (rw) +tmpfs 401M 840K 400M 1% /run on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755) +udev 995M 4.0K 995M 1% /dev on /dev type devtmpfs (rw,mode=0755) diff --git a/t/pt-summary/samples/Linux/001/netstat b/t/pt-summary/samples/Linux/001/netstat new file mode 100755 index 00000000..498dc60b --- /dev/null +++ b/t/pt-summary/samples/Linux/001/netstat @@ -0,0 +1,6 @@ +Active Internet connections (servers and established) +Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name +tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 7615/mysqld +tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1185/dnsmasq +tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 883/cupsd +tcp6 0 0 ::1:631 :::* LISTEN 883/cupsd diff --git a/t/pt-summary/samples/Linux/001/notable_procs b/t/pt-summary/samples/Linux/001/notable_procs new file mode 100755 index 00000000..a5263743 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/notable_procs @@ -0,0 +1,5 @@ + PID OOM COMMAND + ? ? sshd doesn't appear to be running + 305 -17 udevd +29745 -17 udevd +29746 -17 udevd diff --git a/t/pt-summary/samples/Linux/001/partitioning b/t/pt-summary/samples/Linux/001/partitioning new file mode 100755 index 00000000..c19aae6a --- /dev/null +++ b/t/pt-summary/samples/Linux/001/partitioning @@ -0,0 +1,30 @@ + + +Disk /dev/sda: 500.1 GB, 500107862016 bytes +255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors +Units = sectors of 1 * 512 = 512 bytes +Sector size (logical/physical): 512 bytes / 512 bytes +I/O size (minimum/optimal): 512 bytes / 512 bytes +Disk identifier: 0xd8b339dd + + Device Boot Start End Blocks Id System +/dev/sda1 * 2048 206847 102400 7 HPFS/NTFS/exFAT +/dev/sda2 206848 12494847 6144000 7 HPFS/NTFS/exFAT +/dev/sda3 12494848 207808587 97656870 7 HPFS/NTFS/exFAT +/dev/sda4 207810558 976771071 384480257 5 Extended +/dev/sda5 207810560 259807667 25998554 83 Linux +/dev/sda6 972603392 976771071 2083840 82 Linux swap / Solaris +/dev/sda7 259809280 968421375 354306048 83 Linux +/dev/sda8 968423424 972591103 2083840 82 Linux swap / Solaris + +Partition table entries are not in disk order + +Disk /dev/sdb: 4041 MB, 4041211904 bytes +128 heads, 63 sectors/track, 978 cylinders, total 7892992 sectors +Units = sectors of 1 * 512 = 512 bytes +Sector size (logical/physical): 512 bytes / 512 bytes +I/O size (minimum/optimal): 512 bytes / 512 bytes +Disk identifier: 0x04dd5721 + + Device Boot Start End Blocks Id System +/dev/sdb1 * 63 7892991 3946464+ b W95 FAT32 diff --git a/t/pt-summary/samples/Linux/001/proc_cpuinfo_copy b/t/pt-summary/samples/Linux/001/proc_cpuinfo_copy new file mode 100755 index 00000000..12034baf --- /dev/null +++ b/t/pt-summary/samples/Linux/001/proc_cpuinfo_copy @@ -0,0 +1,58 @@ +processor : 0 +vendor_id : GenuineIntel +cpu family : 6 +model : 28 +model name : Intel(R) Atom(TM) CPU N455 @ 1.66GHz +stepping : 10 +cpu MHz : 1666.000 +cache size : 512 KB +physical id : 0 +siblings : 2 +core id : 0 +cpu cores : 1 +apicid : 0 +initial apicid : 0 +fdiv_bug : no +hlt_bug : no +f00f_bug : no +coma_bug : no +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm movbe lahf_lm dts +bogomips : 3324.80 +clflush size : 64 +cache_alignment : 64 +address sizes : 32 bits physical, 48 bits virtual +power management: + +processor : 1 +vendor_id : GenuineIntel +cpu family : 6 +model : 28 +model name : Intel(R) Atom(TM) CPU N455 @ 1.66GHz +stepping : 10 +cpu MHz : 1000.000 +cache size : 512 KB +physical id : 0 +siblings : 2 +core id : 0 +cpu cores : 1 +apicid : 1 +initial apicid : 1 +fdiv_bug : no +hlt_bug : no +f00f_bug : no +coma_bug : no +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm movbe lahf_lm dts +bogomips : 3325.00 +clflush size : 64 +cache_alignment : 64 +address sizes : 32 bits physical, 48 bits virtual +power management: + diff --git a/t/pt-summary/samples/Linux/001/proc_cpuinfo_copy.unq b/t/pt-summary/samples/Linux/001/proc_cpuinfo_copy.unq new file mode 100755 index 00000000..4e2ee8f7 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/proc_cpuinfo_copy.unq @@ -0,0 +1 @@ + 2 512 KB diff --git a/t/pt-summary/samples/Linux/001/processes b/t/pt-summary/samples/Linux/001/processes new file mode 100755 index 00000000..135357ee --- /dev/null +++ b/t/pt-summary/samples/Linux/001/processes @@ -0,0 +1,10 @@ + PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND + 1548 hugmeir 20 0 122m 14m 10m S 2 0.7 1:44.97 gnome-settings- + 1567 hugmeir 20 0 257m 88m 22m S 2 4.4 83:35.58 compiz + 4455 hugmeir 20 0 283m 30m 21m S 2 1.5 30:42.87 knotify4 +17394 hugmeir 20 0 118m 37m 26m S 2 1.9 0:29.35 kwrite +30819 root 20 0 2824 1144 844 R 2 0.1 0:00.03 top + 1 root 20 0 3328 1912 1248 S 0 0.1 0:01.55 init + 2 root 20 0 0 0 0 S 0 0.0 0:00.07 kthreadd + 3 root 20 0 0 0 0 S 0 0.0 0:05.54 ksoftirqd/0 + 6 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/0 diff --git a/t/pt-summary/samples/Linux/001/raid-controller b/t/pt-summary/samples/Linux/001/raid-controller new file mode 100755 index 00000000..e69de29b diff --git a/t/pt-summary/samples/Linux/001/summary b/t/pt-summary/samples/Linux/001/summary new file mode 100755 index 00000000..82eda1e8 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/summary @@ -0,0 +1,24 @@ +platform Linux +hostname hugmeir +uptime 1 day, 15:14, 5 users, load average: 0.00, 0.06, 0.07 +kernel 3.0.0-16-generic +release Ubuntu 11.10 (oneiric) +CPU_ARCH 32-bit +OS_ARCH 32-bit +virt No virtualization detected +vendor Quanta +system Quanta; UW3; vTBD (Other) +servicetag 123456789 +threading NPTL 2.13 +getenforce No SELinux detected +rss 1233723392 +swappiness 60 +dirtypolicy 20, 10 +raid_controller No RAID controller detected +disks sda +sdb +internal::sda [cfq] 128 +internal::sdb [cfq] 128 +dentry-state 78471 67588 45 0 0 0 +file-nr 9248 0 203574 +inode-nr 70996 10387 diff --git a/t/pt-summary/samples/Linux/001/sysctl b/t/pt-summary/samples/Linux/001/sysctl new file mode 100755 index 00000000..d19b4560 --- /dev/null +++ b/t/pt-summary/samples/Linux/001/sysctl @@ -0,0 +1,905 @@ +kernel.sched_child_runs_first = 0 +kernel.sched_min_granularity_ns = 1500000 +kernel.sched_latency_ns = 12000000 +kernel.sched_wakeup_granularity_ns = 2000000 +kernel.sched_tunable_scaling = 1 +kernel.sched_migration_cost = 500000 +kernel.sched_nr_migrate = 32 +kernel.sched_time_avg = 1000 +kernel.sched_shares_window = 10000000 +kernel.timer_migration = 1 +kernel.sched_rt_period_us = 1000000 +kernel.sched_rt_runtime_us = 950000 +kernel.sched_autogroup_enabled = 1 +kernel.panic = 0 +kernel.core_uses_pid = 0 +kernel.core_pattern = core +kernel.core_pipe_limit = 0 +kernel.tainted = 0 +kernel.latencytop = 0 +kernel.real-root-dev = 0 +kernel.print-fatal-signals = 0 +kernel.ctrl-alt-del = 0 +kernel.ftrace_enabled = 1 +kernel.stack_tracer_enabled = 0 +kernel.ftrace_dump_on_oops = 0 +kernel.modprobe = /sbin/modprobe +kernel.modules_disabled = 0 +kernel.hotplug = +kernel.sg-big-buff = 32768 +kernel.acct = 4 2 30 +kernel.sysrq = 1 +kernel.cad_pid = 1 +kernel.threads-max = 31813 +kernel.random.poolsize = 4096 +kernel.random.entropy_avail = 132 +kernel.random.read_wakeup_threshold = 64 +kernel.random.write_wakeup_threshold = 128 +kernel.random.boot_id = cc011010-94e7-49d2-9aff-3db3499fb5ec +kernel.random.uuid = 8b36439c-eb1b-4904-9474-fde7b39cbcb2 +kernel.usermodehelper.bset = 4294967295 4294967295 +kernel.usermodehelper.inheritable = 4294967295 4294967295 +kernel.overflowuid = 65534 +kernel.overflowgid = 65534 +kernel.pid_max = 32768 +kernel.panic_on_oops = 0 +kernel.printk = 4 4 1 7 +kernel.printk_ratelimit = 5 +kernel.printk_ratelimit_burst = 10 +kernel.printk_delay = 0 +kernel.dmesg_restrict = 0 +kernel.kptr_restrict = 1 +kernel.ngroups_max = 65536 +kernel.unknown_nmi_panic = 0 +kernel.panic_on_unrecovered_nmi = 0 +kernel.panic_on_io_nmi = 0 +kernel.bootloader_type = 114 +kernel.bootloader_version = 2 +kernel.kstack_depth_to_print = 24 +kernel.io_delay_type = 1 +kernel.randomize_va_space = 2 +kernel.acpi_video_flags = 0 +kernel.hung_task_panic = 0 +kernel.hung_task_check_count = 32768 +kernel.hung_task_timeout_secs = 120 +kernel.hung_task_warnings = 10 +kernel.max_lock_depth = 1024 +kernel.poweroff_cmd = /sbin/poweroff +kernel.keys.maxkeys = 200 +kernel.keys.maxbytes = 20000 +kernel.keys.root_maxkeys = 200 +kernel.keys.root_maxbytes = 20000 +kernel.keys.gc_delay = 300 +kernel.perf_event_paranoid = 1 +kernel.perf_event_mlock_kb = 516 +kernel.perf_event_max_sample_rate = 100000 +kernel.blk_iopoll = 1 +kernel.yama.protected_sticky_symlinks = 1 +kernel.yama.protected_nonaccess_hardlinks = 1 +kernel.yama.ptrace_scope = 1 +kernel.ostype = Linux +kernel.osrelease = 3.0.0-16-generic +kernel.version = #29-Ubuntu SMP Tue Feb 14 12:49:42 UTC 2012 +kernel.hostname = hugmeir +kernel.domainname = (none) +kernel.shmmax = 33554432 +kernel.shmall = 2097152 +kernel.shmmni = 4096 +kernel.msgmax = 8192 +kernel.msgmni = 1707 +kernel.msgmnb = 16384 +kernel.sem = 250 32000 32 128 +kernel.auto_msgmni = 1 +kernel.pty.max = 4096 +kernel.pty.nr = 6 +kernel.sched_domain.cpu0.domain0.min_interval = 1 +kernel.sched_domain.cpu0.domain0.max_interval = 2 +kernel.sched_domain.cpu0.domain0.busy_idx = 0 +kernel.sched_domain.cpu0.domain0.idle_idx = 0 +kernel.sched_domain.cpu0.domain0.newidle_idx = 0 +kernel.sched_domain.cpu0.domain0.wake_idx = 0 +kernel.sched_domain.cpu0.domain0.forkexec_idx = 0 +kernel.sched_domain.cpu0.domain0.busy_factor = 64 +kernel.sched_domain.cpu0.domain0.imbalance_pct = 110 +kernel.sched_domain.cpu0.domain0.cache_nice_tries = 0 +kernel.sched_domain.cpu0.domain0.flags = 687 +kernel.sched_domain.cpu0.domain0.name = SIBLING +kernel.sched_domain.cpu1.domain0.min_interval = 1 +kernel.sched_domain.cpu1.domain0.max_interval = 2 +kernel.sched_domain.cpu1.domain0.busy_idx = 0 +kernel.sched_domain.cpu1.domain0.idle_idx = 0 +kernel.sched_domain.cpu1.domain0.newidle_idx = 0 +kernel.sched_domain.cpu1.domain0.wake_idx = 0 +kernel.sched_domain.cpu1.domain0.forkexec_idx = 0 +kernel.sched_domain.cpu1.domain0.busy_factor = 64 +kernel.sched_domain.cpu1.domain0.imbalance_pct = 110 +kernel.sched_domain.cpu1.domain0.cache_nice_tries = 0 +kernel.sched_domain.cpu1.domain0.flags = 687 +kernel.sched_domain.cpu1.domain0.name = SIBLING +vm.overcommit_memory = 0 +vm.panic_on_oom = 0 +vm.oom_kill_allocating_task = 0 +vm.oom_dump_tasks = 1 +vm.overcommit_ratio = 50 +vm.page-cluster = 3 +vm.dirty_background_ratio = 10 +vm.dirty_background_bytes = 0 +vm.dirty_ratio = 20 +vm.dirty_bytes = 0 +vm.dirty_writeback_centisecs = 500 +vm.dirty_expire_centisecs = 3000 +vm.nr_pdflush_threads = 0 +vm.swappiness = 60 +vm.nr_hugepages = 0 +vm.hugetlb_shm_group = 0 +vm.hugepages_treat_as_movable = 0 +vm.nr_overcommit_hugepages = 0 +vm.lowmem_reserve_ratio = 256 32 32 +vm.drop_caches = 0 +vm.extfrag_threshold = 500 +vm.min_free_kbytes = 44800 +vm.percpu_pagelist_fraction = 0 +vm.max_map_count = 65530 +vm.laptop_mode = 0 +vm.block_dump = 0 +vm.vfs_cache_pressure = 100 +vm.legacy_va_layout = 0 +vm.stat_interval = 1 +vm.mmap_min_addr = 65536 +vm.vdso_enabled = 1 +vm.highmem_is_dirtyable = 0 +vm.scan_unevictable_pages = 0 +vm.memory_failure_early_kill = 0 +vm.memory_failure_recovery = 1 +fs.inode-nr = 70940 10387 +fs.inode-state = 70940 10387 0 0 0 0 0 +fs.file-nr = 9248 0 203574 +fs.file-max = 203574 +fs.nr_open = 1048576 +fs.dentry-state = 78415 67533 45 0 0 0 +fs.overflowuid = 65534 +fs.overflowgid = 65534 +fs.leases-enable = 1 +fs.dir-notify-enable = 1 +fs.lease-break-time = 45 +fs.aio-nr = 2660 +fs.aio-max-nr = 65536 +fs.inotify.max_user_instances = 128 +fs.inotify.max_user_watches = 524288 +fs.inotify.max_queued_events = 16384 +fs.epoll.max_user_watches = 338668 +fs.suid_dumpable = 0 +fs.binfmt_misc.jar = enabled +fs.binfmt_misc.jar = interpreter /usr/bin/jexec +fs.binfmt_misc.jar = flags: +fs.binfmt_misc.jar = offset 0 +fs.binfmt_misc.jar = magic 504b0304 +fs.binfmt_misc.python2/7 = enabled +fs.binfmt_misc.python2/7 = interpreter /usr/bin/python2.7 +fs.binfmt_misc.python2/7 = flags: +fs.binfmt_misc.python2/7 = offset 0 +fs.binfmt_misc.python2/7 = magic 03f30d0a +fs.binfmt_misc.cli = enabled +fs.binfmt_misc.cli = interpreter /usr/lib/binfmt-support/run-detectors +fs.binfmt_misc.cli = flags: +fs.binfmt_misc.cli = offset 0 +fs.binfmt_misc.cli = magic 4d5a +fs.binfmt_misc.status = enabled +fs.pipe-max-size = 1048576 +fs.quota.lookups = 0 +fs.quota.drops = 0 +fs.quota.reads = 0 +fs.quota.writes = 0 +fs.quota.cache_hits = 0 +fs.quota.allocated_dquots = 0 +fs.quota.free_dquots = 0 +fs.quota.syncs = 4 +fs.mqueue.queues_max = 256 +fs.mqueue.msg_max = 10 +fs.mqueue.msgsize_max = 8192 +debug.exception-trace = 1 +debug.kprobes-optimization = 1 +dev.scsi.logging_level = 0 +dev.raid.speed_limit_min = 1000 +dev.raid.speed_limit_max = 200000 +dev.hpet.max-user-freq = 64 +dev.mac_hid.mouse_button_emulation = 0 +dev.mac_hid.mouse_button2_keycode = 97 +dev.mac_hid.mouse_button3_keycode = 100 +dev.cdrom.info = CD-ROM information, Id: cdrom.c 3.20 2003/12/17 +dev.cdrom.info = +dev.cdrom.info = drive name: +dev.cdrom.info = drive speed: +dev.cdrom.info = drive # of slots: +dev.cdrom.info = Can close tray: +dev.cdrom.info = Can open tray: +dev.cdrom.info = Can lock tray: +dev.cdrom.info = Can change speed: +dev.cdrom.info = Can select disk: +dev.cdrom.info = Can read multisession: +dev.cdrom.info = Can read MCN: +dev.cdrom.info = Reports media changed: +dev.cdrom.info = Can play audio: +dev.cdrom.info = Can write CD-R: +dev.cdrom.info = Can write CD-RW: +dev.cdrom.info = Can read DVD: +dev.cdrom.info = Can write DVD-R: +dev.cdrom.info = Can write DVD-RAM: +dev.cdrom.info = Can read MRW: +dev.cdrom.info = Can write MRW: +dev.cdrom.info = Can write RAM: +dev.cdrom.info = +dev.cdrom.info = +dev.cdrom.autoclose = 1 +dev.cdrom.autoeject = 0 +dev.cdrom.debug = 0 +dev.cdrom.lock = 0 +dev.cdrom.check_media = 0 +dev.parport.default.timeslice = 200 +dev.parport.default.spintime = 500 +net.netfilter.nf_log.0 = NONE +net.netfilter.nf_log.1 = NONE +net.netfilter.nf_log.2 = NONE +net.netfilter.nf_log.3 = NONE +net.netfilter.nf_log.4 = NONE +net.netfilter.nf_log.5 = NONE +net.netfilter.nf_log.6 = NONE +net.netfilter.nf_log.7 = NONE +net.netfilter.nf_log.8 = NONE +net.netfilter.nf_log.9 = NONE +net.netfilter.nf_log.10 = NONE +net.netfilter.nf_log.11 = NONE +net.netfilter.nf_log.12 = NONE +net.netfilter.nf_conntrack_generic_timeout = 600 +net.netfilter.nf_conntrack_tcp_timeout_syn_sent = 120 +net.netfilter.nf_conntrack_tcp_timeout_syn_recv = 60 +net.netfilter.nf_conntrack_tcp_timeout_established = 432000 +net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120 +net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60 +net.netfilter.nf_conntrack_tcp_timeout_last_ack = 30 +net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120 +net.netfilter.nf_conntrack_tcp_timeout_close = 10 +net.netfilter.nf_conntrack_tcp_timeout_max_retrans = 300 +net.netfilter.nf_conntrack_tcp_timeout_unacknowledged = 300 +net.netfilter.nf_conntrack_tcp_loose = 1 +net.netfilter.nf_conntrack_tcp_be_liberal = 0 +net.netfilter.nf_conntrack_tcp_max_retrans = 3 +net.netfilter.nf_conntrack_udp_timeout = 30 +net.netfilter.nf_conntrack_udp_timeout_stream = 180 +net.netfilter.nf_conntrack_icmp_timeout = 30 +net.netfilter.nf_conntrack_acct = 0 +net.netfilter.nf_conntrack_timestamp = 0 +net.netfilter.nf_conntrack_events = 1 +net.netfilter.nf_conntrack_events_retry_timeout = 15 +net.netfilter.nf_conntrack_max = 65536 +net.netfilter.nf_conntrack_count = 34 +net.netfilter.nf_conntrack_buckets = 16384 +net.netfilter.nf_conntrack_checksum = 1 +net.netfilter.nf_conntrack_log_invalid = 0 +net.netfilter.nf_conntrack_expect_max = 256 +net.core.somaxconn = 128 +net.core.xfrm_aevent_etime = 10 +net.core.xfrm_aevent_rseqth = 2 +net.core.xfrm_larval_drop = 1 +net.core.xfrm_acq_expires = 30 +net.core.wmem_max = 131071 +net.core.rmem_max = 131071 +net.core.wmem_default = 114688 +net.core.rmem_default = 114688 +net.core.dev_weight = 64 +net.core.netdev_max_backlog = 1000 +net.core.netdev_tstamp_prequeue = 1 +net.core.message_cost = 5 +net.core.message_burst = 10 +net.core.optmem_max = 10240 +net.core.rps_sock_flow_entries = 0 +net.core.netdev_budget = 300 +net.core.warnings = 1 +net.ipv4.route.gc_thresh = 32768 +net.ipv4.route.max_size = 524288 +net.ipv4.route.gc_min_interval = 0 +net.ipv4.route.gc_min_interval_ms = 500 +net.ipv4.route.gc_timeout = 300 +net.ipv4.route.gc_interval = 60 +net.ipv4.route.gc_interval = 60 +net.ipv4.route.redirect_load = 5 +net.ipv4.route.redirect_number = 9 +net.ipv4.route.redirect_silence = 5120 +net.ipv4.route.error_cost = 250 +net.ipv4.route.error_burst = 1250 +net.ipv4.route.gc_elasticity = 8 +net.ipv4.route.mtu_expires = 600 +net.ipv4.route.min_pmtu = 552 +net.ipv4.route.min_adv_mss = 256 +net.ipv4.neigh.default.mcast_solicit = 3 +net.ipv4.neigh.default.ucast_solicit = 3 +net.ipv4.neigh.default.app_solicit = 0 +net.ipv4.neigh.default.retrans_time = 100 +net.ipv4.neigh.default.base_reachable_time = 30 +net.ipv4.neigh.default.delay_first_probe_time = 5 +net.ipv4.neigh.default.gc_stale_time = 60 +net.ipv4.neigh.default.unres_qlen = 3 +net.ipv4.neigh.default.proxy_qlen = 64 +net.ipv4.neigh.default.anycast_delay = 100 +net.ipv4.neigh.default.proxy_delay = 80 +net.ipv4.neigh.default.locktime = 100 +net.ipv4.neigh.default.retrans_time_ms = 1000 +net.ipv4.neigh.default.base_reachable_time_ms = 30000 +net.ipv4.neigh.default.gc_interval = 30 +net.ipv4.neigh.default.gc_thresh1 = 128 +net.ipv4.neigh.default.gc_thresh2 = 512 +net.ipv4.neigh.default.gc_thresh3 = 1024 +net.ipv4.neigh.lo.mcast_solicit = 3 +net.ipv4.neigh.lo.ucast_solicit = 3 +net.ipv4.neigh.lo.app_solicit = 0 +net.ipv4.neigh.lo.retrans_time = 100 +net.ipv4.neigh.lo.base_reachable_time = 30 +net.ipv4.neigh.lo.delay_first_probe_time = 5 +net.ipv4.neigh.lo.gc_stale_time = 60 +net.ipv4.neigh.lo.unres_qlen = 3 +net.ipv4.neigh.lo.proxy_qlen = 64 +net.ipv4.neigh.lo.anycast_delay = 100 +net.ipv4.neigh.lo.proxy_delay = 80 +net.ipv4.neigh.lo.locktime = 100 +net.ipv4.neigh.lo.retrans_time_ms = 1000 +net.ipv4.neigh.lo.base_reachable_time_ms = 30000 +net.ipv4.neigh.eth0.mcast_solicit = 3 +net.ipv4.neigh.eth0.ucast_solicit = 3 +net.ipv4.neigh.eth0.app_solicit = 0 +net.ipv4.neigh.eth0.retrans_time = 100 +net.ipv4.neigh.eth0.base_reachable_time = 30 +net.ipv4.neigh.eth0.delay_first_probe_time = 5 +net.ipv4.neigh.eth0.gc_stale_time = 60 +net.ipv4.neigh.eth0.unres_qlen = 3 +net.ipv4.neigh.eth0.proxy_qlen = 64 +net.ipv4.neigh.eth0.anycast_delay = 100 +net.ipv4.neigh.eth0.proxy_delay = 80 +net.ipv4.neigh.eth0.locktime = 100 +net.ipv4.neigh.eth0.retrans_time_ms = 1000 +net.ipv4.neigh.eth0.base_reachable_time_ms = 30000 +net.ipv4.neigh.wlan0.mcast_solicit = 3 +net.ipv4.neigh.wlan0.ucast_solicit = 3 +net.ipv4.neigh.wlan0.app_solicit = 0 +net.ipv4.neigh.wlan0.retrans_time = 100 +net.ipv4.neigh.wlan0.base_reachable_time = 30 +net.ipv4.neigh.wlan0.delay_first_probe_time = 5 +net.ipv4.neigh.wlan0.gc_stale_time = 60 +net.ipv4.neigh.wlan0.unres_qlen = 3 +net.ipv4.neigh.wlan0.proxy_qlen = 64 +net.ipv4.neigh.wlan0.anycast_delay = 100 +net.ipv4.neigh.wlan0.proxy_delay = 80 +net.ipv4.neigh.wlan0.locktime = 100 +net.ipv4.neigh.wlan0.retrans_time_ms = 1000 +net.ipv4.neigh.wlan0.base_reachable_time_ms = 30000 +net.ipv4.neigh.virbr0.mcast_solicit = 3 +net.ipv4.neigh.virbr0.ucast_solicit = 3 +net.ipv4.neigh.virbr0.app_solicit = 0 +net.ipv4.neigh.virbr0.retrans_time = 100 +net.ipv4.neigh.virbr0.base_reachable_time = 30 +net.ipv4.neigh.virbr0.delay_first_probe_time = 5 +net.ipv4.neigh.virbr0.gc_stale_time = 60 +net.ipv4.neigh.virbr0.unres_qlen = 3 +net.ipv4.neigh.virbr0.proxy_qlen = 64 +net.ipv4.neigh.virbr0.anycast_delay = 100 +net.ipv4.neigh.virbr0.proxy_delay = 80 +net.ipv4.neigh.virbr0.locktime = 100 +net.ipv4.neigh.virbr0.retrans_time_ms = 1000 +net.ipv4.neigh.virbr0.base_reachable_time_ms = 30000 +net.ipv4.tcp_timestamps = 1 +net.ipv4.tcp_window_scaling = 1 +net.ipv4.tcp_sack = 1 +net.ipv4.tcp_retrans_collapse = 1 +net.ipv4.ip_default_ttl = 64 +net.ipv4.ip_no_pmtu_disc = 0 +net.ipv4.ip_nonlocal_bind = 0 +net.ipv4.tcp_syn_retries = 5 +net.ipv4.tcp_synack_retries = 5 +net.ipv4.tcp_max_orphans = 65536 +net.ipv4.tcp_max_tw_buckets = 65536 +net.ipv4.ip_dynaddr = 0 +net.ipv4.tcp_keepalive_time = 7200 +net.ipv4.tcp_keepalive_probes = 9 +net.ipv4.tcp_keepalive_intvl = 75 +net.ipv4.tcp_retries1 = 3 +net.ipv4.tcp_retries2 = 15 +net.ipv4.tcp_fin_timeout = 60 +net.ipv4.tcp_syncookies = 1 +net.ipv4.tcp_tw_recycle = 0 +net.ipv4.tcp_abort_on_overflow = 0 +net.ipv4.tcp_stdurg = 0 +net.ipv4.tcp_rfc1337 = 0 +net.ipv4.tcp_max_syn_backlog = 512 +net.ipv4.ip_local_port_range = 32768 61000 +net.ipv4.ip_local_reserved_ports = +net.ipv4.igmp_max_memberships = 20 +net.ipv4.igmp_max_msf = 10 +net.ipv4.inet_peer_threshold = 65664 +net.ipv4.inet_peer_minttl = 120 +net.ipv4.inet_peer_maxttl = 600 +net.ipv4.inet_peer_gc_mintime = 10 +net.ipv4.inet_peer_gc_maxtime = 120 +net.ipv4.tcp_orphan_retries = 0 +net.ipv4.tcp_fack = 1 +net.ipv4.tcp_reordering = 3 +net.ipv4.tcp_ecn = 2 +net.ipv4.tcp_dsack = 1 +net.ipv4.tcp_mem = 21132 28179 42264 +net.ipv4.tcp_wmem = 4096 16384 901728 +net.ipv4.tcp_rmem = 4096 87380 901728 +net.ipv4.tcp_app_win = 31 +net.ipv4.tcp_adv_win_scale = 2 +net.ipv4.tcp_tw_reuse = 0 +net.ipv4.tcp_frto = 2 +net.ipv4.tcp_frto_response = 0 +net.ipv4.tcp_low_latency = 0 +net.ipv4.tcp_no_metrics_save = 0 +net.ipv4.tcp_moderate_rcvbuf = 1 +net.ipv4.tcp_tso_win_divisor = 3 +net.ipv4.tcp_congestion_control = cubic +net.ipv4.tcp_abc = 0 +net.ipv4.tcp_mtu_probing = 0 +net.ipv4.tcp_base_mss = 512 +net.ipv4.tcp_workaround_signed_windows = 0 +net.ipv4.tcp_dma_copybreak = 4096 +net.ipv4.tcp_slow_start_after_idle = 1 +net.ipv4.cipso_cache_enable = 1 +net.ipv4.cipso_cache_bucket_size = 10 +net.ipv4.cipso_rbm_optfmt = 0 +net.ipv4.cipso_rbm_strictvalid = 1 +net.ipv4.tcp_available_congestion_control = cubic reno +net.ipv4.tcp_allowed_congestion_control = cubic reno +net.ipv4.tcp_max_ssthresh = 0 +net.ipv4.tcp_cookie_size = 0 +net.ipv4.tcp_thin_linear_timeouts = 0 +net.ipv4.tcp_thin_dupack = 0 +net.ipv4.udp_mem = 21132 28179 42264 +net.ipv4.udp_rmem_min = 4096 +net.ipv4.udp_wmem_min = 4096 +net.ipv4.netfilter.ip_conntrack_generic_timeout = 600 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent = 120 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent2 = 120 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 60 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 432000 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_last_ack = 30 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_close = 10 +net.ipv4.netfilter.ip_conntrack_tcp_timeout_max_retrans = 300 +net.ipv4.netfilter.ip_conntrack_tcp_loose = 1 +net.ipv4.netfilter.ip_conntrack_tcp_be_liberal = 0 +net.ipv4.netfilter.ip_conntrack_tcp_max_retrans = 3 +net.ipv4.netfilter.ip_conntrack_udp_timeout = 30 +net.ipv4.netfilter.ip_conntrack_udp_timeout_stream = 180 +net.ipv4.netfilter.ip_conntrack_icmp_timeout = 30 +net.ipv4.netfilter.ip_conntrack_max = 65536 +net.ipv4.netfilter.ip_conntrack_count = 34 +net.ipv4.netfilter.ip_conntrack_buckets = 16384 +net.ipv4.netfilter.ip_conntrack_checksum = 1 +net.ipv4.netfilter.ip_conntrack_log_invalid = 0 +net.ipv4.conf.all.forwarding = 1 +net.ipv4.conf.all.mc_forwarding = 0 +net.ipv4.conf.all.accept_redirects = 0 +net.ipv4.conf.all.secure_redirects = 1 +net.ipv4.conf.all.shared_media = 1 +net.ipv4.conf.all.rp_filter = 1 +net.ipv4.conf.all.send_redirects = 1 +net.ipv4.conf.all.accept_source_route = 0 +net.ipv4.conf.all.accept_local = 0 +net.ipv4.conf.all.src_valid_mark = 0 +net.ipv4.conf.all.proxy_arp = 0 +net.ipv4.conf.all.medium_id = 0 +net.ipv4.conf.all.bootp_relay = 0 +net.ipv4.conf.all.log_martians = 0 +net.ipv4.conf.all.tag = 0 +net.ipv4.conf.all.arp_filter = 0 +net.ipv4.conf.all.arp_announce = 0 +net.ipv4.conf.all.arp_ignore = 0 +net.ipv4.conf.all.arp_accept = 0 +net.ipv4.conf.all.arp_notify = 0 +net.ipv4.conf.all.proxy_arp_pvlan = 0 +net.ipv4.conf.all.disable_xfrm = 0 +net.ipv4.conf.all.disable_policy = 0 +net.ipv4.conf.all.force_igmp_version = 0 +net.ipv4.conf.all.promote_secondaries = 0 +net.ipv4.conf.default.forwarding = 1 +net.ipv4.conf.default.mc_forwarding = 0 +net.ipv4.conf.default.accept_redirects = 1 +net.ipv4.conf.default.secure_redirects = 1 +net.ipv4.conf.default.shared_media = 1 +net.ipv4.conf.default.rp_filter = 1 +net.ipv4.conf.default.send_redirects = 1 +net.ipv4.conf.default.accept_source_route = 1 +net.ipv4.conf.default.accept_local = 0 +net.ipv4.conf.default.src_valid_mark = 0 +net.ipv4.conf.default.proxy_arp = 0 +net.ipv4.conf.default.medium_id = 0 +net.ipv4.conf.default.bootp_relay = 0 +net.ipv4.conf.default.log_martians = 0 +net.ipv4.conf.default.tag = 0 +net.ipv4.conf.default.arp_filter = 0 +net.ipv4.conf.default.arp_announce = 0 +net.ipv4.conf.default.arp_ignore = 0 +net.ipv4.conf.default.arp_accept = 0 +net.ipv4.conf.default.arp_notify = 0 +net.ipv4.conf.default.proxy_arp_pvlan = 0 +net.ipv4.conf.default.disable_xfrm = 0 +net.ipv4.conf.default.disable_policy = 0 +net.ipv4.conf.default.force_igmp_version = 0 +net.ipv4.conf.default.promote_secondaries = 0 +net.ipv4.conf.lo.forwarding = 1 +net.ipv4.conf.lo.mc_forwarding = 0 +net.ipv4.conf.lo.accept_redirects = 1 +net.ipv4.conf.lo.secure_redirects = 1 +net.ipv4.conf.lo.shared_media = 1 +net.ipv4.conf.lo.rp_filter = 1 +net.ipv4.conf.lo.send_redirects = 1 +net.ipv4.conf.lo.accept_source_route = 1 +net.ipv4.conf.lo.accept_local = 0 +net.ipv4.conf.lo.src_valid_mark = 0 +net.ipv4.conf.lo.proxy_arp = 0 +net.ipv4.conf.lo.medium_id = 0 +net.ipv4.conf.lo.bootp_relay = 0 +net.ipv4.conf.lo.log_martians = 0 +net.ipv4.conf.lo.tag = 0 +net.ipv4.conf.lo.arp_filter = 0 +net.ipv4.conf.lo.arp_announce = 0 +net.ipv4.conf.lo.arp_ignore = 0 +net.ipv4.conf.lo.arp_accept = 0 +net.ipv4.conf.lo.arp_notify = 0 +net.ipv4.conf.lo.proxy_arp_pvlan = 0 +net.ipv4.conf.lo.disable_xfrm = 1 +net.ipv4.conf.lo.disable_policy = 1 +net.ipv4.conf.lo.force_igmp_version = 0 +net.ipv4.conf.lo.promote_secondaries = 0 +net.ipv4.conf.eth0.forwarding = 1 +net.ipv4.conf.eth0.mc_forwarding = 0 +net.ipv4.conf.eth0.accept_redirects = 1 +net.ipv4.conf.eth0.secure_redirects = 1 +net.ipv4.conf.eth0.shared_media = 1 +net.ipv4.conf.eth0.rp_filter = 1 +net.ipv4.conf.eth0.send_redirects = 1 +net.ipv4.conf.eth0.accept_source_route = 1 +net.ipv4.conf.eth0.accept_local = 0 +net.ipv4.conf.eth0.src_valid_mark = 0 +net.ipv4.conf.eth0.proxy_arp = 0 +net.ipv4.conf.eth0.medium_id = 0 +net.ipv4.conf.eth0.bootp_relay = 0 +net.ipv4.conf.eth0.log_martians = 0 +net.ipv4.conf.eth0.tag = 0 +net.ipv4.conf.eth0.arp_filter = 0 +net.ipv4.conf.eth0.arp_announce = 0 +net.ipv4.conf.eth0.arp_ignore = 0 +net.ipv4.conf.eth0.arp_accept = 0 +net.ipv4.conf.eth0.arp_notify = 0 +net.ipv4.conf.eth0.proxy_arp_pvlan = 0 +net.ipv4.conf.eth0.disable_xfrm = 0 +net.ipv4.conf.eth0.disable_policy = 0 +net.ipv4.conf.eth0.force_igmp_version = 0 +net.ipv4.conf.eth0.promote_secondaries = 0 +net.ipv4.conf.wlan0.forwarding = 1 +net.ipv4.conf.wlan0.mc_forwarding = 0 +net.ipv4.conf.wlan0.accept_redirects = 1 +net.ipv4.conf.wlan0.secure_redirects = 1 +net.ipv4.conf.wlan0.shared_media = 1 +net.ipv4.conf.wlan0.rp_filter = 1 +net.ipv4.conf.wlan0.send_redirects = 1 +net.ipv4.conf.wlan0.accept_source_route = 1 +net.ipv4.conf.wlan0.accept_local = 0 +net.ipv4.conf.wlan0.src_valid_mark = 0 +net.ipv4.conf.wlan0.proxy_arp = 0 +net.ipv4.conf.wlan0.medium_id = 0 +net.ipv4.conf.wlan0.bootp_relay = 0 +net.ipv4.conf.wlan0.log_martians = 0 +net.ipv4.conf.wlan0.tag = 0 +net.ipv4.conf.wlan0.arp_filter = 0 +net.ipv4.conf.wlan0.arp_announce = 0 +net.ipv4.conf.wlan0.arp_ignore = 0 +net.ipv4.conf.wlan0.arp_accept = 0 +net.ipv4.conf.wlan0.arp_notify = 0 +net.ipv4.conf.wlan0.proxy_arp_pvlan = 0 +net.ipv4.conf.wlan0.disable_xfrm = 0 +net.ipv4.conf.wlan0.disable_policy = 0 +net.ipv4.conf.wlan0.force_igmp_version = 0 +net.ipv4.conf.wlan0.promote_secondaries = 0 +net.ipv4.conf.virbr0.forwarding = 1 +net.ipv4.conf.virbr0.mc_forwarding = 0 +net.ipv4.conf.virbr0.accept_redirects = 1 +net.ipv4.conf.virbr0.secure_redirects = 1 +net.ipv4.conf.virbr0.shared_media = 1 +net.ipv4.conf.virbr0.rp_filter = 1 +net.ipv4.conf.virbr0.send_redirects = 1 +net.ipv4.conf.virbr0.accept_source_route = 1 +net.ipv4.conf.virbr0.accept_local = 0 +net.ipv4.conf.virbr0.src_valid_mark = 0 +net.ipv4.conf.virbr0.proxy_arp = 0 +net.ipv4.conf.virbr0.medium_id = 0 +net.ipv4.conf.virbr0.bootp_relay = 0 +net.ipv4.conf.virbr0.log_martians = 0 +net.ipv4.conf.virbr0.tag = 0 +net.ipv4.conf.virbr0.arp_filter = 0 +net.ipv4.conf.virbr0.arp_announce = 0 +net.ipv4.conf.virbr0.arp_ignore = 0 +net.ipv4.conf.virbr0.arp_accept = 0 +net.ipv4.conf.virbr0.arp_notify = 0 +net.ipv4.conf.virbr0.proxy_arp_pvlan = 0 +net.ipv4.conf.virbr0.disable_xfrm = 0 +net.ipv4.conf.virbr0.disable_policy = 0 +net.ipv4.conf.virbr0.force_igmp_version = 0 +net.ipv4.conf.virbr0.promote_secondaries = 0 +net.ipv4.ip_forward = 1 +net.ipv4.xfrm4_gc_thresh = 262144 +net.ipv4.ipfrag_high_thresh = 262144 +net.ipv4.ipfrag_low_thresh = 196608 +net.ipv4.ipfrag_time = 30 +net.ipv4.icmp_echo_ignore_all = 0 +net.ipv4.icmp_echo_ignore_broadcasts = 1 +net.ipv4.icmp_ignore_bogus_error_responses = 1 +net.ipv4.icmp_errors_use_inbound_ifaddr = 0 +net.ipv4.icmp_ratelimit = 1000 +net.ipv4.icmp_ratemask = 6168 +net.ipv4.rt_cache_rebuild_count = 4 +net.ipv4.ping_group_range = 1 0 +net.ipv4.ipfrag_secret_interval = 600 +net.ipv4.ipfrag_max_dist = 64 +net.token-ring.rif_timeout = 150000 +net.ipv6.neigh.default.mcast_solicit = 3 +net.ipv6.neigh.default.ucast_solicit = 3 +net.ipv6.neigh.default.app_solicit = 0 +net.ipv6.neigh.default.retrans_time = 250 +net.ipv6.neigh.default.base_reachable_time = 30 +net.ipv6.neigh.default.delay_first_probe_time = 5 +net.ipv6.neigh.default.gc_stale_time = 60 +net.ipv6.neigh.default.unres_qlen = 3 +net.ipv6.neigh.default.proxy_qlen = 64 +net.ipv6.neigh.default.anycast_delay = 100 +net.ipv6.neigh.default.proxy_delay = 80 +net.ipv6.neigh.default.locktime = 0 +net.ipv6.neigh.default.retrans_time_ms = 1000 +net.ipv6.neigh.default.base_reachable_time_ms = 30000 +net.ipv6.neigh.default.gc_interval = 30 +net.ipv6.neigh.default.gc_thresh1 = 128 +net.ipv6.neigh.default.gc_thresh2 = 512 +net.ipv6.neigh.default.gc_thresh3 = 1024 +net.ipv6.neigh.lo.mcast_solicit = 3 +net.ipv6.neigh.lo.ucast_solicit = 3 +net.ipv6.neigh.lo.app_solicit = 0 +net.ipv6.neigh.lo.retrans_time = 250 +net.ipv6.neigh.lo.base_reachable_time = 30 +net.ipv6.neigh.lo.delay_first_probe_time = 5 +net.ipv6.neigh.lo.gc_stale_time = 60 +net.ipv6.neigh.lo.unres_qlen = 3 +net.ipv6.neigh.lo.proxy_qlen = 64 +net.ipv6.neigh.lo.anycast_delay = 100 +net.ipv6.neigh.lo.proxy_delay = 80 +net.ipv6.neigh.lo.locktime = 0 +net.ipv6.neigh.lo.retrans_time_ms = 1000 +net.ipv6.neigh.lo.base_reachable_time_ms = 30000 +net.ipv6.neigh.eth0.mcast_solicit = 3 +net.ipv6.neigh.eth0.ucast_solicit = 3 +net.ipv6.neigh.eth0.app_solicit = 0 +net.ipv6.neigh.eth0.retrans_time = 250 +net.ipv6.neigh.eth0.base_reachable_time = 30 +net.ipv6.neigh.eth0.delay_first_probe_time = 5 +net.ipv6.neigh.eth0.gc_stale_time = 60 +net.ipv6.neigh.eth0.unres_qlen = 3 +net.ipv6.neigh.eth0.proxy_qlen = 64 +net.ipv6.neigh.eth0.anycast_delay = 100 +net.ipv6.neigh.eth0.proxy_delay = 80 +net.ipv6.neigh.eth0.locktime = 0 +net.ipv6.neigh.eth0.retrans_time_ms = 1000 +net.ipv6.neigh.eth0.base_reachable_time_ms = 30000 +net.ipv6.neigh.wlan0.mcast_solicit = 3 +net.ipv6.neigh.wlan0.ucast_solicit = 3 +net.ipv6.neigh.wlan0.app_solicit = 0 +net.ipv6.neigh.wlan0.retrans_time = 250 +net.ipv6.neigh.wlan0.base_reachable_time = 30 +net.ipv6.neigh.wlan0.delay_first_probe_time = 5 +net.ipv6.neigh.wlan0.gc_stale_time = 60 +net.ipv6.neigh.wlan0.unres_qlen = 3 +net.ipv6.neigh.wlan0.proxy_qlen = 64 +net.ipv6.neigh.wlan0.anycast_delay = 100 +net.ipv6.neigh.wlan0.proxy_delay = 80 +net.ipv6.neigh.wlan0.locktime = 0 +net.ipv6.neigh.wlan0.retrans_time_ms = 1000 +net.ipv6.neigh.wlan0.base_reachable_time_ms = 30000 +net.ipv6.neigh.virbr0.mcast_solicit = 3 +net.ipv6.neigh.virbr0.ucast_solicit = 3 +net.ipv6.neigh.virbr0.app_solicit = 0 +net.ipv6.neigh.virbr0.retrans_time = 250 +net.ipv6.neigh.virbr0.base_reachable_time = 30 +net.ipv6.neigh.virbr0.delay_first_probe_time = 5 +net.ipv6.neigh.virbr0.gc_stale_time = 60 +net.ipv6.neigh.virbr0.unres_qlen = 3 +net.ipv6.neigh.virbr0.proxy_qlen = 64 +net.ipv6.neigh.virbr0.anycast_delay = 100 +net.ipv6.neigh.virbr0.proxy_delay = 80 +net.ipv6.neigh.virbr0.locktime = 0 +net.ipv6.neigh.virbr0.retrans_time_ms = 1000 +net.ipv6.neigh.virbr0.base_reachable_time_ms = 30000 +net.ipv6.xfrm6_gc_thresh = 2048 +net.ipv6.conf.all.forwarding = 0 +net.ipv6.conf.all.hop_limit = 64 +net.ipv6.conf.all.mtu = 1280 +net.ipv6.conf.all.accept_ra = 1 +net.ipv6.conf.all.accept_redirects = 1 +net.ipv6.conf.all.autoconf = 1 +net.ipv6.conf.all.dad_transmits = 1 +net.ipv6.conf.all.router_solicitations = 3 +net.ipv6.conf.all.router_solicitation_interval = 4 +net.ipv6.conf.all.router_solicitation_delay = 1 +net.ipv6.conf.all.force_mld_version = 0 +net.ipv6.conf.all.use_tempaddr = 0 +net.ipv6.conf.all.temp_valid_lft = 604800 +net.ipv6.conf.all.temp_prefered_lft = 86400 +net.ipv6.conf.all.regen_max_retry = 5 +net.ipv6.conf.all.max_desync_factor = 600 +net.ipv6.conf.all.max_addresses = 16 +net.ipv6.conf.all.accept_ra_defrtr = 1 +net.ipv6.conf.all.accept_ra_pinfo = 1 +net.ipv6.conf.all.accept_ra_rtr_pref = 1 +net.ipv6.conf.all.router_probe_interval = 60 +net.ipv6.conf.all.accept_ra_rt_info_max_plen = 0 +net.ipv6.conf.all.proxy_ndp = 0 +net.ipv6.conf.all.accept_source_route = 0 +net.ipv6.conf.all.disable_ipv6 = 0 +net.ipv6.conf.all.accept_dad = 1 +net.ipv6.conf.all.force_tllao = 0 +net.ipv6.conf.default.forwarding = 0 +net.ipv6.conf.default.hop_limit = 64 +net.ipv6.conf.default.mtu = 1280 +net.ipv6.conf.default.accept_ra = 1 +net.ipv6.conf.default.accept_redirects = 1 +net.ipv6.conf.default.autoconf = 1 +net.ipv6.conf.default.dad_transmits = 1 +net.ipv6.conf.default.router_solicitations = 3 +net.ipv6.conf.default.router_solicitation_interval = 4 +net.ipv6.conf.default.router_solicitation_delay = 1 +net.ipv6.conf.default.force_mld_version = 0 +net.ipv6.conf.default.use_tempaddr = 0 +net.ipv6.conf.default.temp_valid_lft = 604800 +net.ipv6.conf.default.temp_prefered_lft = 86400 +net.ipv6.conf.default.regen_max_retry = 5 +net.ipv6.conf.default.max_desync_factor = 600 +net.ipv6.conf.default.max_addresses = 16 +net.ipv6.conf.default.accept_ra_defrtr = 1 +net.ipv6.conf.default.accept_ra_pinfo = 1 +net.ipv6.conf.default.accept_ra_rtr_pref = 1 +net.ipv6.conf.default.router_probe_interval = 60 +net.ipv6.conf.default.accept_ra_rt_info_max_plen = 0 +net.ipv6.conf.default.proxy_ndp = 0 +net.ipv6.conf.default.accept_source_route = 0 +net.ipv6.conf.default.disable_ipv6 = 0 +net.ipv6.conf.default.accept_dad = 1 +net.ipv6.conf.default.force_tllao = 0 +net.ipv6.conf.lo.forwarding = 0 +net.ipv6.conf.lo.hop_limit = 64 +net.ipv6.conf.lo.mtu = 16436 +net.ipv6.conf.lo.accept_ra = 1 +net.ipv6.conf.lo.accept_redirects = 1 +net.ipv6.conf.lo.autoconf = 1 +net.ipv6.conf.lo.dad_transmits = 1 +net.ipv6.conf.lo.router_solicitations = 3 +net.ipv6.conf.lo.router_solicitation_interval = 4 +net.ipv6.conf.lo.router_solicitation_delay = 1 +net.ipv6.conf.lo.force_mld_version = 0 +net.ipv6.conf.lo.use_tempaddr = -1 +net.ipv6.conf.lo.temp_valid_lft = 604800 +net.ipv6.conf.lo.temp_prefered_lft = 86400 +net.ipv6.conf.lo.regen_max_retry = 5 +net.ipv6.conf.lo.max_desync_factor = 600 +net.ipv6.conf.lo.max_addresses = 16 +net.ipv6.conf.lo.accept_ra_defrtr = 1 +net.ipv6.conf.lo.accept_ra_pinfo = 1 +net.ipv6.conf.lo.accept_ra_rtr_pref = 1 +net.ipv6.conf.lo.router_probe_interval = 60 +net.ipv6.conf.lo.accept_ra_rt_info_max_plen = 0 +net.ipv6.conf.lo.proxy_ndp = 0 +net.ipv6.conf.lo.accept_source_route = 0 +net.ipv6.conf.lo.disable_ipv6 = 0 +net.ipv6.conf.lo.accept_dad = -1 +net.ipv6.conf.lo.force_tllao = 0 +net.ipv6.conf.eth0.forwarding = 0 +net.ipv6.conf.eth0.hop_limit = 64 +net.ipv6.conf.eth0.mtu = 1500 +net.ipv6.conf.eth0.accept_ra = 0 +net.ipv6.conf.eth0.accept_redirects = 1 +net.ipv6.conf.eth0.autoconf = 1 +net.ipv6.conf.eth0.dad_transmits = 1 +net.ipv6.conf.eth0.router_solicitations = 3 +net.ipv6.conf.eth0.router_solicitation_interval = 4 +net.ipv6.conf.eth0.router_solicitation_delay = 1 +net.ipv6.conf.eth0.force_mld_version = 0 +net.ipv6.conf.eth0.use_tempaddr = 0 +net.ipv6.conf.eth0.temp_valid_lft = 604800 +net.ipv6.conf.eth0.temp_prefered_lft = 86400 +net.ipv6.conf.eth0.regen_max_retry = 5 +net.ipv6.conf.eth0.max_desync_factor = 600 +net.ipv6.conf.eth0.max_addresses = 16 +net.ipv6.conf.eth0.accept_ra_defrtr = 1 +net.ipv6.conf.eth0.accept_ra_pinfo = 1 +net.ipv6.conf.eth0.accept_ra_rtr_pref = 1 +net.ipv6.conf.eth0.router_probe_interval = 60 +net.ipv6.conf.eth0.accept_ra_rt_info_max_plen = 0 +net.ipv6.conf.eth0.proxy_ndp = 0 +net.ipv6.conf.eth0.accept_source_route = 0 +net.ipv6.conf.eth0.disable_ipv6 = 0 +net.ipv6.conf.eth0.accept_dad = 1 +net.ipv6.conf.eth0.force_tllao = 0 +net.ipv6.conf.wlan0.forwarding = 0 +net.ipv6.conf.wlan0.hop_limit = 64 +net.ipv6.conf.wlan0.mtu = 1500 +net.ipv6.conf.wlan0.accept_ra = 0 +net.ipv6.conf.wlan0.accept_redirects = 1 +net.ipv6.conf.wlan0.autoconf = 1 +net.ipv6.conf.wlan0.dad_transmits = 1 +net.ipv6.conf.wlan0.router_solicitations = 3 +net.ipv6.conf.wlan0.router_solicitation_interval = 4 +net.ipv6.conf.wlan0.router_solicitation_delay = 1 +net.ipv6.conf.wlan0.force_mld_version = 0 +net.ipv6.conf.wlan0.use_tempaddr = 0 +net.ipv6.conf.wlan0.temp_valid_lft = 604800 +net.ipv6.conf.wlan0.temp_prefered_lft = 86400 +net.ipv6.conf.wlan0.regen_max_retry = 5 +net.ipv6.conf.wlan0.max_desync_factor = 600 +net.ipv6.conf.wlan0.max_addresses = 16 +net.ipv6.conf.wlan0.accept_ra_defrtr = 1 +net.ipv6.conf.wlan0.accept_ra_pinfo = 1 +net.ipv6.conf.wlan0.accept_ra_rtr_pref = 1 +net.ipv6.conf.wlan0.router_probe_interval = 60 +net.ipv6.conf.wlan0.accept_ra_rt_info_max_plen = 0 +net.ipv6.conf.wlan0.proxy_ndp = 0 +net.ipv6.conf.wlan0.accept_source_route = 0 +net.ipv6.conf.wlan0.disable_ipv6 = 0 +net.ipv6.conf.wlan0.accept_dad = 1 +net.ipv6.conf.wlan0.force_tllao = 0 +net.ipv6.conf.virbr0.forwarding = 0 +net.ipv6.conf.virbr0.hop_limit = 64 +net.ipv6.conf.virbr0.mtu = 1500 +net.ipv6.conf.virbr0.accept_ra = 0 +net.ipv6.conf.virbr0.accept_redirects = 1 +net.ipv6.conf.virbr0.autoconf = 1 +net.ipv6.conf.virbr0.dad_transmits = 1 +net.ipv6.conf.virbr0.router_solicitations = 3 +net.ipv6.conf.virbr0.router_solicitation_interval = 4 +net.ipv6.conf.virbr0.router_solicitation_delay = 1 +net.ipv6.conf.virbr0.force_mld_version = 0 +net.ipv6.conf.virbr0.use_tempaddr = 0 +net.ipv6.conf.virbr0.temp_valid_lft = 604800 +net.ipv6.conf.virbr0.temp_prefered_lft = 86400 +net.ipv6.conf.virbr0.regen_max_retry = 5 +net.ipv6.conf.virbr0.max_desync_factor = 600 +net.ipv6.conf.virbr0.max_addresses = 16 +net.ipv6.conf.virbr0.accept_ra_defrtr = 1 +net.ipv6.conf.virbr0.accept_ra_pinfo = 1 +net.ipv6.conf.virbr0.accept_ra_rtr_pref = 1 +net.ipv6.conf.virbr0.router_probe_interval = 60 +net.ipv6.conf.virbr0.accept_ra_rt_info_max_plen = 0 +net.ipv6.conf.virbr0.proxy_ndp = 0 +net.ipv6.conf.virbr0.accept_source_route = 0 +net.ipv6.conf.virbr0.disable_ipv6 = 1 +net.ipv6.conf.virbr0.accept_dad = 1 +net.ipv6.conf.virbr0.force_tllao = 0 +net.ipv6.ip6frag_high_thresh = 262144 +net.ipv6.ip6frag_low_thresh = 196608 +net.ipv6.ip6frag_time = 60 +net.ipv6.route.gc_thresh = 1024 +net.ipv6.route.max_size = 4096 +net.ipv6.route.gc_min_interval = 0 +net.ipv6.route.gc_timeout = 60 +net.ipv6.route.gc_interval = 30 +net.ipv6.route.gc_elasticity = 9 +net.ipv6.route.mtu_expires = 600 +net.ipv6.route.min_adv_mss = 1220 +net.ipv6.route.gc_min_interval_ms = 500 +net.ipv6.icmp.ratelimit = 1000 +net.ipv6.bindv6only = 0 +net.ipv6.ip6frag_secret_interval = 600 +net.ipv6.mld_max_msf = 64 +net.bridge.bridge-nf-call-arptables = 1 +net.bridge.bridge-nf-call-iptables = 1 +net.bridge.bridge-nf-call-ip6tables = 1 +net.bridge.bridge-nf-filter-vlan-tagged = 0 +net.bridge.bridge-nf-filter-pppoe-tagged = 0 +net.nf_conntrack_max = 65536 +net.unix.max_dgram_qlen = 10 diff --git a/t/pt-summary/samples/Linux/001/vgs b/t/pt-summary/samples/Linux/001/vgs new file mode 100755 index 00000000..e69de29b diff --git a/t/pt-summary/samples/Linux/001/vmstat b/t/pt-summary/samples/Linux/001/vmstat new file mode 100755 index 00000000..aa03aa4a --- /dev/null +++ b/t/pt-summary/samples/Linux/001/vmstat @@ -0,0 +1,7 @@ +procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- + r b swpd free buff cache si so bi bo in cs us sy id wa + 2 0 0 491008 199604 741304 0 0 2 1 147 54 4 1 95 0 + 0 0 0 487528 199604 745220 0 0 0 8 884 2284 28 26 46 0 + 0 0 0 488104 199604 744588 0 0 0 0 188 207 1 0 99 0 + 1 0 0 491328 199612 741432 0 0 0 144 219 233 1 1 95 3 + 0 0 0 491328 199612 741388 0 0 0 148 250 245 1 0 99 0 diff --git a/t/pt-summary/samples/MegaCli64_AdpAllInfo_aALL001.txt b/t/pt-summary/samples/MegaCli64_AdpAllInfo_aALL001.txt new file mode 100644 index 00000000..99039d04 --- /dev/null +++ b/t/pt-summary/samples/MegaCli64_AdpAllInfo_aALL001.txt @@ -0,0 +1,227 @@ +[root@pc-db1]# /opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aALL + +Adapter #0 + +============================================================================== + Versions + ================ +Product Name : PERC 6/i Integrated +Serial No : 1122334455667788 +FW Package Build: 6.0.1-0080 + + Mfg. Data + ================ +Mfg. Date : 06/08/07 +Rework Date : 06/08/07 +Revision No : +Battery FRU : N/A + + Image Versions In Flash: + ================ +FW Version : 1.11.52-0349 +BIOS Version : NT13-2 +WebBIOS Version : 1.1-32-e_11-Rel +Ctrl-R Version : 1.01-010B +Boot Block Version : 1.00.00.01-0008 + + Pending Images In Flash + ================ +None + + PCI Info + ================ +Vendor Id : 1000 +Device Id : 0060 +SubVendorId : 1028 +SubDeviceId : 1f0c + +Host Interface : PCIE + +Number of Frontend Port: 0 +Device Interface : PCIE + +Number of Backend Port: 8 +Port : Address +0 5000c500079f8cf9 +1 5000c500079f5c35 +2 5000c500079fc0c9 +3 5000c500079dc339 +4 0000000000000000 +5 0000000000000000 +6 0000000000000000 +7 0000000000000000 + + HW Configuration + ================ +SAS Address : 5001e4f021048f00 +BBU : Present +Alarm : Absent +NVRAM : Present +Serial Debugger : Present +Memory : Present +Flash : Present +Memory Size : 256MB + + Settings + ================ +Current Time : 20:31:29 5/13, 2010 +Predictive Fail Poll Interval : 300sec +Interrupt Throttle Active Count : 16 +Interrupt Throttle Completion : 50us +Rebuild Rate : 30% +PR Rate : 30% +Resynch Rate : 30% +Check Consistency Rate : 30% +Reconstruction Rate : 30% +Cache Flush Interval : 4s +Max Drives to Spinup at One Time : 2 +Delay Among Spinup Groups : 12s +Physical Drive Coercion Mode : 128MB +Cluster Mode : Disabled +Alarm : Disabled +Auto Rebuild : Enabled +Battery Warning : Enabled +Ecc Bucket Size : 15 +Ecc Bucket Leak Rate : 1440 Minutes +Restore HotSpare on Insertion : Disabled +Expose Enclosure Devices : Disabled +Maintain PD Fail History : Disabled +Host Request Reordering : Enabled +Auto Detect BackPlane Enabled : SGPIO/i2c SEP +Load Balance Mode : Auto +Any Offline VD Cache Preserved : No + + Capabilities + ================ +RAID Level Supported : RAID0, RAID1, RAID5, RAID6, RAID10, RAID50, RAID60 +Supported Drives : SAS, SATA + +Allowed Mixing: + +Mix In Enclosure Allowed + + Status + ================ +ECC Bucket Count : 0 + + Limitations + ================ +Max Arms Per VD : 32 +Max Spans Per VD : 8 +Max Arrays : 128 +Max Number of VDs : 64 +Max Parallel Commands : 1008 +Max SGE Count : 80 +Max Data Transfer Size : 8192 sectors +Max Strips PerIO : 42 +Min Stripe Size : 8kB +Max Stripe Size : 1024kB + + Device Present + ================ +Virtual Drives : 2 + Degraded : 0 + Offline : 0 +Physical Devices : 5 + Disks : 4 + Critical Disks : 0 + Failed Disks : 0 + + Supported Adapter Operations + ================ +Rebuild Rate : Yes +CC Rate : Yes +BGI Rate : Yes +Reconstruct Rate : Yes +Patrol Read Rate : Yes +Alarm Control : Yes +Cluster Support : No +BBU : Yes +Spanning : Yes +Dedicated Hot Spare : Yes +Revertible Hot Spares : No +Foreign Config Import : Yes +Self Diagnostic : Yes +Allow Mixed Redundancy on Array : No +Global Hot Spares : Yes +Deny SCSI Passthrough : No +Deny SMP Passthrough : No +Deny STP Passthrough : No + + Supported VD Operations + ================ +Read Policy : Yes +Write Policy : Yes +IO Policy : Yes +Access Policy : Yes +Disk Cache Policy : Yes +Reconstruction : Yes +Deny Locate : No +Deny CC : No + + Supported PD Operations + ================ +Force Online : Yes +Force Offline : Yes +Force Rebuild : Yes +Deny Force Failed : No +Deny Force Good/Bad : No +Deny Missing Replace : No +Deny Clear : No +Deny Locate : No +Disable Copyback : No +Enable Copyback on SMART : No +Enable Copyback to SSD on SMART error : No + + Error Counters + ================ +Memory Correctable Errors : 0 +Memory Uncorrectable Errors : 0 + + Cluster Information + ================ +Cluster Permitted : No +Cluster Active : No + + Default Settings + ================ +Phy Polarity : 0 +Phy PolaritySplit : 0 +Background Rate : 30 +Stripe Size : 64kB +Flush Time : 4 seconds +Write Policy : WB +Read Policy : None +Cache When BBU Bad : Disabled +Cached IO : No +SMART Mode : Mode 6 +Alarm Disable : No +Coercion Mode : 128MB +ZCR Config : Unknown +Dirty LED Shows Drive Activity : No +BIOS Continue on Error : No +Spin Down Mode : None +Allowed Device Type : SAS/SATA Mix +Allow Mix In Enclosure : Yes +Allow HDD SAS/SATA Mix In VD : No +Allow SSD SAS/SATA Mix In VD : No +Allow HDD/SAS Mix In VD : No +Allow SATA In Cluster : No +Max Chained Enclosures : 1 +Disable Ctrl-R : No +Enable Web BIOS : No +Direct PD Mapping : Yes +BIOS Enumerate VDs : Yes +Restore Hot Spare on Insertion : No +Expose Enclosure Devices : No +Maintain PD Fail History : No +Disable Puncturing : No +Zero Based Enclosure Enumeration : Yes +PreBoot CLI Enabled : No +LED Show Drive Activity : No +Cluster Disable : Yes +SAS Disable : No +Auto Detect BackPlane Enable : SGPIO/i2c SEP +Delay during POST : 0 + +Exit Code: 0x00 diff --git a/t/pt-summary/samples/MegaCli64_LdPdInfo_aALL_886223 b/t/pt-summary/samples/MegaCli64_LdPdInfo_aALL_886223 new file mode 100644 index 00000000..ab72172a --- /dev/null +++ b/t/pt-summary/samples/MegaCli64_LdPdInfo_aALL_886223 @@ -0,0 +1,214 @@ +# /opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL + +Adapter #0 + +Number of Virtual Disks: 1 +Virtual Drive: 0 (Target Id: 0) +Name : +RAID Level : Primary-1, Secondary-3, RAID Level Qualifier-0 +Size : 135.5 GB +Mirror Data : 135.5 GB +State : Optimal +Strip Size : 64 KB +Number Of Drives per span:2 +Span Depth : 2 +Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU +Default Access Policy: Read/Write +Current Access Policy: Read/Write +Disk Cache Policy : Disk's Default +Encryption Type : None +Is VD Cached: No +Number of Spans: 2 +Span: 0 - Number of PDs: 2 + +PD: 0 Information +Enclosure Device ID: 32 +Slot Number: 0 +Drive's postion: DiskGroup: 0, Span: 0, Arm: 0 +Enclosure position: 0 +Device Id: 0 +WWN: 5000C5001365F9E0 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 68.366 GB [0x88bb93a Sectors] +Non Coerced Size: 67.866 GB [0x87bb93a Sectors] +Coerced Size: 67.75 GB [0x8780000 Sectors] +Firmware state: Online, Spun Up +Device Firmware Level: SM04 +Shield Counter: 0 +Successful diagnostics completion on : N/A +SAS Address(0): 0x5000c5001365f9e1 +SAS Address(1): 0x0 +Connected Port Number: 0(path0) +Inquiry Data: SEAGATE ST973451SS SM043PD2JH68 +FDE Enable: Disable +Secured: Unsecured +Locked: Unlocked +Needs EKM Attention: No +Foreign State: None +Device Speed: Unknown +Link Speed: Unknown +Media Type: Hard Disk Device +Drive Temperature :35C (95.00 F) +PI Eligibility: No +Drive is formatted for PI information: No +PI: No PI +Drive's write cache : Disabled +Port-0 : +Port status: Active +Port's Linkspeed: Unknown +Port-1 : +Port status: Active +Port's Linkspeed: Unknown +Drive has flagged a S.M.A.R.T alert : No + + + + +PD: 1 Information +Enclosure Device ID: 32 +Slot Number: 1 +Drive's postion: DiskGroup: 0, Span: 0, Arm: 1 +Enclosure position: 0 +Device Id: 1 +WWN: 5000C5001365F458 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 68.366 GB [0x88bb93a Sectors] +Non Coerced Size: 67.866 GB [0x87bb93a Sectors] +Coerced Size: 67.75 GB [0x8780000 Sectors] +Firmware state: Online, Spun Up +Device Firmware Level: SM04 +Shield Counter: 0 +Successful diagnostics completion on : N/A +SAS Address(0): 0x5000c5001365f459 +SAS Address(1): 0x0 +Connected Port Number: 1(path0) +Inquiry Data: SEAGATE ST973451SS SM043PD2JH34 +FDE Enable: Disable +Secured: Unsecured +Locked: Unlocked +Needs EKM Attention: No +Foreign State: None +Device Speed: Unknown +Link Speed: Unknown +Media Type: Hard Disk Device +Drive Temperature :34C (93.20 F) +PI Eligibility: No +Drive is formatted for PI information: No +PI: No PI +Drive's write cache : Disabled +Port-0 : +Port status: Active +Port's Linkspeed: Unknown +Port-1 : +Port status: Active +Port's Linkspeed: Unknown +Drive has flagged a S.M.A.R.T alert : No + + + +Span: 1 - Number of PDs: 2 + +PD: 0 Information +Enclosure Device ID: 32 +Slot Number: 2 +Drive's postion: DiskGroup: 0, Span: 1, Arm: 0 +Enclosure position: 0 +Device Id: 2 +WWN: 5000C500136605E0 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 68.366 GB [0x88bb93a Sectors] +Non Coerced Size: 67.866 GB [0x87bb93a Sectors] +Coerced Size: 67.75 GB [0x8780000 Sectors] +Firmware state: Online, Spun Up +Device Firmware Level: SM04 +Shield Counter: 0 +Successful diagnostics completion on : N/A +SAS Address(0): 0x5000c500136605e1 +SAS Address(1): 0x0 +Connected Port Number: 2(path0) +Inquiry Data: SEAGATE ST973451SS SM043PD2JKD3 +FDE Enable: Disable +Secured: Unsecured +Locked: Unlocked +Needs EKM Attention: No +Foreign State: None +Device Speed: Unknown +Link Speed: Unknown +Media Type: Hard Disk Device +Drive Temperature :34C (93.20 F) +PI Eligibility: No +Drive is formatted for PI information: No +PI: No PI +Drive's write cache : Disabled +Port-0 : +Port status: Active +Port's Linkspeed: Unknown +Port-1 : +Port status: Active +Port's Linkspeed: Unknown +Drive has flagged a S.M.A.R.T alert : No + + + + +PD: 1 Information +Enclosure Device ID: 32 +Slot Number: 3 +Drive's postion: DiskGroup: 0, Span: 1, Arm: 1 +Enclosure position: 0 +Device Id: 3 +WWN: 5000C5001365C7F4 +Sequence Number: 2 +Media Error Count: 0 +Other Error Count: 0 +Predictive Failure Count: 0 +Last Predictive Failure Event Seq Number: 0 +PD Type: SAS +Raw Size: 68.366 GB [0x88bb93a Sectors] +Non Coerced Size: 67.866 GB [0x87bb93a Sectors] +Coerced Size: 67.75 GB [0x8780000 Sectors] +Firmware state: Online, Spun Up +Device Firmware Level: SM04 +Shield Counter: 0 +Successful diagnostics completion on : N/A +SAS Address(0): 0x5000c5001365c7f5 +SAS Address(1): 0x0 +Connected Port Number: 3(path0) +Inquiry Data: SEAGATE ST973451SS SM043PD2GJKA +FDE Enable: Disable +Secured: Unsecured +Locked: Unlocked +Needs EKM Attention: No +Foreign State: None +Device Speed: Unknown +Link Speed: Unknown +Media Type: Hard Disk Device +Drive Temperature :32C (89.60 F) +PI Eligibility: No +Drive is formatted for PI information: No +PI: No PI +Drive's write cache : Disabled +Port-0 : +Port status: Active +Port's Linkspeed: Unknown +Port-1 : +Port status: Active +Port's Linkspeed: Unknown +Drive has flagged a S.M.A.R.T alert : No + diff --git a/t/pt-summary/parse_arcconf.sh b/t/pt-summary/samples/arcconf-001.txt similarity index 79% rename from t/pt-summary/parse_arcconf.sh rename to t/pt-summary/samples/arcconf-001.txt index f7ab3cb0..8978d6de 100644 --- a/t/pt-summary/parse_arcconf.sh +++ b/t/pt-summary/samples/arcconf-001.txt @@ -1,25 +1,3 @@ -#!/bin/bash - -TESTS=2 -TMPDIR=$TEST_TMPDIR - -cat < $TMPDIR/expected - Specs | Adaptec 3405, SAS/SATA, 128 MB cache, Optimal - Battery | 99%, 3d1h11m remaining, Optimal - - LogicalDev Size RAID Disks Stripe Status Cache - ========== ========= ==== ===== ====== ======= ======= - raid10 279800 MB 10 4 256 KB Optimal On (WB) - - PhysiclDev State Speed Vendor Model Size Cache - ========== ======= ============= ======= ============ =========== ======= - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146855SS 140014 MB On (WB) - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146356SS 140014 MB On (WB) - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146356SS 140014 MB On (WB) - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3146855SS 140014 MB On (WB) -EOF - -cat < $TMPDIR/in # /usr/StorMan/arcconf getconfig 1 Controllers found: 1 ---------------------------------------------------------------------- @@ -153,24 +131,3 @@ Physical Device information Command completed successfully. -EOF -parse_arcconf $TMPDIR/in > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected - -cat < $TMPDIR/expected - Specs | Adaptec 3405, SAS/SATA, 128 MB cache, Optimal - Battery | 99%, 3d1h11m remaining, Optimal - - LogicalDev Size RAID Disks Stripe Status Cache - ========== ========= ==== ===== ====== ======= ======= - Raid10-A 571392 MB 10 4 256 KB Optimal On (WB) - - PhysiclDev State Speed Vendor Model Size Cache - ========== ======= ============= ======= ============ =========== ======= - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) - Hard drive Online SAS 3.0 Gb/s SEAGATE ST3300655SS 286102 MB On (WB) -EOF -parse_arcconf samples/arcconf-002.txt > $TMPDIR/got -no_diff $TMPDIR/got $TMPDIR/expected diff --git a/t/pt-summary/samples/arcconf-003_900285.txt b/t/pt-summary/samples/arcconf-003_900285.txt new file mode 100644 index 00000000..cff76213 --- /dev/null +++ b/t/pt-summary/samples/arcconf-003_900285.txt @@ -0,0 +1,228 @@ +# arcconf getconfig 1 +Controllers found: 1 +---------------------------------------------------------------------- +Controller information +---------------------------------------------------------------------- + Controller Status : Optimal + Channel description : SAS/SATA + Controller Model : Adaptec 5805Z + Controller Serial Number : 0A11115148F + Physical Slot : 2 + Temperature : 68 C/ 154 F (Normal) + Installed memory : 512 MB + Copyback : Disabled + Background consistency check : Disabled + Automatic Failover : Enabled + Global task priority : High + Performance Mode : Default/Dynamic + Stayawake period : Disabled + Spinup limit internal drives : 0 + Spinup limit external drives : 0 + Defunct disk drive count : 0 + Logical devices/Failed/Degraded : 2/0/0 + SSDs assigned to MaxIQ Cache pool : 0 + Maximum SSDs allowed in MaxIQ Cache pool : 8 + MaxIQ Read Cache Pool Size : 0.000 GB + MaxIQ cache fetch rate : 0 + MaxIQ Cache Read, Write Balance Factor : 3,1 + NCQ status : Enabled + Statistics data collection mode : Enabled + -------------------------------------------------------- + + -------------------------------------------------------- + Controller Version Information + -------------------------------------------------------- + BIOS : 5.2-0 (18252) + Firmware : 5.2-0 (18252) + Driver : 1.1-7 (28000) + Boot Flash : 5.2-0 (18252) + -------------------------------------------------------- + Controller ZMM Information + -------------------------------------------------------- + Status : ZMM Optimal + +---------------------------------------------------------------------- +Logical device information +---------------------------------------------------------------------- +Logical device number 0 + Logical device name : RAID10-A + RAID level : 10 + Status of logical device : Optimal + Size : 121790 MB + Stripe-unit size : 256 KB + Read-cache mode : Enabled + MaxIQ preferred cache setting : Enabled + MaxIQ cache setting : Disabled + Write-cache mode : Enabled (write-back) + Write-cache setting : Enabled (write-back) when protected by battery/ZMM + Partitioned : Yes + Protected by Hot-Spare : No + Bootable : Yes + Failed stripes : No + Power settings : Disabled + -------------------------------------------------------- + Logical device segment information + -------------------------------------------------------- + Group 0, Segment 0 : Present (0,0) CVEM939500TN064KGN + Group 0, Segment 1 : Present (0,1) CVEM940200NT064KGN + Group 1, Segment 0 : Present (0,2) CVEM004300A4064KGN + Group 1, Segment 1 : Present (0,3) CVEM9214000F064KGN + +Logical device number 1 + Logical device name : RAID1-A + RAID level : 1 + Status of logical device : Optimal + Size : 285686 MB + Read-cache mode : Enabled + MaxIQ preferred cache setting : Enabled + MaxIQ cache setting : Disabled + Write-cache mode : Enabled (write-back) + Write-cache setting : Enabled (write-back) when protected by battery/ZMM + Partitioned : Yes + Protected by Hot-Spare : No + Bootable : No + Failed stripes : No + Power settings : Disabled + -------------------------------------------------------- + Logical device segment information + -------------------------------------------------------- + Segment 0 : Present (0,4) 6SJ1CG1A0000N1407G9E + Segment 1 : Present (0,5) 6SJ1F1XW0000N1407EXC + +---------------------------------------------------------------------- +Physical Device information +---------------------------------------------------------------------- + Device #0 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,0(0:0) + Reported Location : Connector 0, Device 0 + Vendor : INTEL + Model : SSDSA2SH064G1GC + Firmware : 045C8790 + Serial number : CVEM939500TN064KGN + Size : 61057 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : Yes + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #1 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,1(1:0) + Reported Location : Connector 0, Device 1 + Vendor : INTEL + Model : SSDSA2SH064G1GC + Firmware : 045C8860 + Serial number : CVEM940200NT064KGN + Size : 61057 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : Yes + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #2 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,2(2:0) + Reported Location : Connector 0, Device 2 + Vendor : INTEL + Model : SSDSA2SH064G1GC + Firmware : 045C8860 + Serial number : CVEM004300A4064KGN + Size : 61057 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : Yes + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #3 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,3(3:0) + Reported Location : Connector 0, Device 3 + Vendor : INTEL + Model : SSDSA2SH064G1GC + Firmware : 045C8860 + Serial number : CVEM9214000F064KGN + Size : 61057 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : Yes + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #4 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SAS 3.0 Gb/s + Reported Channel,Device(T:L) : 0,4(4:0) + Reported Location : Connector 1, Device 0 + Vendor : SEAGATE + Model : ST3300657SS + Firmware : 0008 + Serial number : 6SJ1CG1A0000N1407G9E + World-wide name : 5000C50039EE5900 + Size : 286102 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + Device #5 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SAS 3.0 Gb/s + Reported Channel,Device(T:L) : 0,5(5:0) + Reported Location : Connector 1, Device 1 + Vendor : SEAGATE + Model : ST3300657SS + Firmware : 0008 + Serial number : 6SJ1F1XW0000N1407EXC + World-wide name : 5000C50039EE6A38 + Size : 286102 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + +Command completed successfully. diff --git a/t/pt-summary/samples/arcconf-004_917781.txt b/t/pt-summary/samples/arcconf-004_917781.txt new file mode 100644 index 00000000..1e27f48a --- /dev/null +++ b/t/pt-summary/samples/arcconf-004_917781.txt @@ -0,0 +1,162 @@ +Controllers found: 1 +---------------------------------------------------------------------- +Controller information +---------------------------------------------------------------------- + Controller Status : Optimal + Channel description : SAS/SATA + Controller Model : Adaptec 5405Z + Controller Serial Number : 1B1811A16A3 + Physical Slot : 1 + Temperature : 77 C/ 170 F (Normal) + Installed memory : 512 MB + Copyback : Disabled + Background consistency check : Disabled + Automatic Failover : Enabled + Global task priority : High + Performance Mode : Default/Dynamic + Stayawake period : Disabled + Spinup limit internal drives : 0 + Spinup limit external drives : 0 + Defunct disk drive count : 0 + Logical devices/Failed/Degraded : 1/0/0 + SSDs assigned to MaxIQ Cache pool : 0 + Maximum SSDs allowed in MaxIQ Cache pool : 8 + MaxIQ Read Cache Pool Size : 0.000 GB + MaxIQ cache fetch rate : 0 + MaxIQ Cache Read, Write Balance Factor : 3,1 + NCQ status : Enabled + Statistics data collection mode : Enabled + -------------------------------------------------------- + Controller Version Information + -------------------------------------------------------- + BIOS : 5.2-0 (18252) + Firmware : 5.2-0 (18252) + Driver : 1.1-5 (24702) + Boot Flash : 5.2-0 (18252) + -------------------------------------------------------- + Controller ZMM Information + -------------------------------------------------------- + Status : ZMM Optimal + +---------------------------------------------------------------------- +Logical device information +---------------------------------------------------------------------- +Logical device number 0 + Logical device name : RAID10-A + RAID level : 10 + Status of logical device : Optimal + Size : 571382 MB + Stripe-unit size : 256 KB + Read-cache mode : Enabled + MaxIQ preferred cache setting : Disabled + MaxIQ cache setting : Disabled + Write-cache mode : Enabled (write-back) + Write-cache setting : Enabled (write-back) when protected by battery/ZMM + Partitioned : Yes + Protected by Hot-Spare : No + Bootable : Yes + Failed stripes : No + Power settings : Disabled + -------------------------------------------------------- + Logical device segment information + -------------------------------------------------------- + Group 0, Segment 0 : Present (0,1) WD-WXL1E11WFZ23 + Group 0, Segment 1 : Present (0,0) WD-WX11DB003670 + Group 1, Segment 0 : Present (0,2) WD-WX11DB006532 + Group 1, Segment 1 : Present (0,3) WD-WX11DB006553 + + +---------------------------------------------------------------------- +Physical Device information +---------------------------------------------------------------------- + Device #0 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,0(0:0) + Reported Location : Connector 0, Device 0 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WX11DB003670 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #1 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,1(1:0) + Reported Location : Connector 0, Device 1 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WXL1E11WFZ23 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #2 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,2(2:0) + Reported Location : Connector 0, Device 2 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WX11DB006532 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #3 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,3(3:0) + Reported Location : Connector 0, Device 3 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WX11DB006553 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + + +Command completed successfully. diff --git a/t/pt-summary/samples/arcconf-004_917781.txt.bak.~1~ b/t/pt-summary/samples/arcconf-004_917781.txt.bak.~1~ new file mode 100644 index 00000000..096071f5 --- /dev/null +++ b/t/pt-summary/samples/arcconf-004_917781.txt.bak.~1~ @@ -0,0 +1,162 @@ +Controllers found: 1 +---------------------------------------------------------------------- +Controller information +---------------------------------------------------------------------- + Controller Status : Optimal + Channel description : SAS/SATA + Controller Model : Adaptec 5405Z + Controller Serial Number : 1B1811A16A3 + Physical Slot : 1 + Temperature : 77 C/ 170 F (Normal) + Installed memory : 512 MB + Copyback : Disabled + Background consistency check : Disabled + Automatic Failover : Enabled + Global task priority : High + Performance Mode : Default/Dynamic + Stayawake period : Disabled + Spinup limit internal drives : 0 + Spinup limit external drives : 0 + Defunct disk drive count : 0 + Logical devices/Failed/Degraded : 1/0/0 + SSDs assigned to MaxIQ Cache pool : 0 + Maximum SSDs allowed in MaxIQ Cache pool : 8 + MaxIQ Read Cache Pool Size : 0.000 GB + MaxIQ cache fetch rate : 0 + MaxIQ Cache Read, Write Balance Factor : 3,1 + NCQ status : Enabled + Statistics data collection mode : Enabled + -------------------------------------------------------- + Controller Version Information + -------------------------------------------------------- + BIOS : 5.2-0 (18252) + Firmware : 5.2-0 (18252) + Driver : 1.1-5 (24702) + Boot Flash : 5.2-0 (18252) + -------------------------------------------------------- + Controller ZMM Information + -------------------------------------------------------- + Status : ZMM Optimal + +---------------------------------------------------------------------- +Logical device information +---------------------------------------------------------------------- +Logical device number 0 + Logical device name : RAID10-A + RAID level : 10 + Status of logical device : Optimal + Size : 571382 MB + Stripe-unit size : 256 KB + Read-cache mode : Enabled + MaxIQ preferred cache setting : Disabled + MaxIQ cache setting : Disabled + Write-cache mode : Enabled (write-back) + Write-cache setting : Enabled (write-back) when protected by battery/ZMM + Partitioned : Yes + Protected by Hot-Spare : No + Bootable : Yes + Failed stripes : No + Power settings : Disabled + -------------------------------------------------------- + Logical device segment information + -------------------------------------------------------- + Group 0, Segment 0 : Present (0,1) WD-WXL1E11WFZ23 + Group 0, Segment 1 : Present (0,0) WD-WX11DB003670 + Group 1, Segment 0 : Present (0,2) WD-WX11DB006532 + Group 1, Segment 1 : Present (0,3) WD-WX11DB006553 + + +---------------------------------------------------------------------- +Physical Device information +---------------------------------------------------------------------- + Device #0 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,0(0:0) + Reported Location : Connector 0, Device 0 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WX11DB003670 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #1 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,1(1:0) + Reported Location : Connector 0, Device 1 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WXL1E11WFZ23 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #2 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,2(2:0) + Reported Location : Connector 0, Device 2 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WX11DB006532 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + Device #3 + Device is a Hard drive + State : Online + Supported : Yes + Transfer Speed : SATA 3.0 Gb/s + Reported Channel,Device(T:L) : 0,3(3:0) + Reported Location : Connector 0, Device 3 + Vendor : WDC + Model : WD3000HLFS-0 + Firmware : 04.04V06 + Serial number : WD-WX11DB006553 + Size : 286168 MB + Write Cache : Enabled (write-back) + FRU : None + S.M.A.R.T. : No + S.M.A.R.T. warnings : 0 + Power State : Full rpm + Supported Power States : Full rpm,Powered off + SSD : No + MaxIQ Cache Capable : No + MaxIQ Cache Assigned : No + NCQ status : Enabled + + +Command completed successfully. diff --git a/t/pt-summary/samples/dmesg-005.txt b/t/pt-summary/samples/dmesg-005.txt new file mode 100644 index 00000000..31b8a5e8 --- /dev/null +++ b/t/pt-summary/samples/dmesg-005.txt @@ -0,0 +1,787 @@ +Linux version 2.6.18-164.6.1.el5 (mockbuild@builder10.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) #1 SMP Tue Nov 3 16:12:36 EST 2009 +Command line: ro root=/dev/VolGroup00/LogVol00 rhgb quiet +BIOS-provided physical RAM map: + BIOS-e820: 0000000000010000 - 000000000009a800 (usable) + BIOS-e820: 000000000009a800 - 00000000000a0000 (reserved) + BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved) + BIOS-e820: 0000000000100000 - 000000007f780000 (usable) + BIOS-e820: 000000007f78e000 - 000000007f790000 type 9 + BIOS-e820: 000000007f790000 - 000000007f79e000 (ACPI data) + BIOS-e820: 000000007f79e000 - 000000007f7d0000 (ACPI NVS) + BIOS-e820: 000000007f7d0000 - 000000007f7e0000 (reserved) + BIOS-e820: 000000007f7ec000 - 0000000080000000 (reserved) + BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) + BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) + BIOS-e820: 00000000ffb00000 - 0000000100000000 (reserved) + BIOS-e820: 0000000100000000 - 0000000280000000 (usable) +DMI present. +ACPI: RSDP (v002 SUN ) @ 0x00000000000fa3e0 +ACPI: XSDT (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f790100 +ACPI: FADT (v004 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f790290 +ACPI: MADT (v002 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f790390 +ACPI: MCFG (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f7904c0 +ACPI: SLIT (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f790500 +ACPI: SPMI (v005 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f790530 +ACPI: OEMB (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f79e040 +ACPI: HPET (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f79a580 +ACPI: DMAR (v001 SUN Xxx70 0x00000001 MSFT 0x00000097) @ 0x000000007f79e100 +ACPI: SSDT (v001 SUN Xxx70 0x00000012 INTL 0x20051117) @ 0x000000007f7a07f0 +ACPI: EINJ (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f79a5c0 +ACPI: BERT (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f79a750 +ACPI: ERST (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f79a780 +ACPI: HEST (v001 SUN Xxx70 0x20090619 MSFT 0x00000097) @ 0x000000007f79a930 +ACPI: DSDT (v002 SUN Xxx70 0x00000002 INTL 0x20051117) @ 0x0000000000000000 +No NUMA configuration found +Faking a node at 0000000000000000-0000000280000000 +Bootmem setup node 0 0000000000000000-0000000280000000 +Memory for crash kernel (0x0 to 0x0) notwithin permissible range +disabling kdump +On node 0 totalpages: 2057723 + DMA zone: 2627 pages, LIFO batch:0 + DMA32 zone: 503736 pages, LIFO batch:31 + Normal zone: 1551360 pages, LIFO batch:31 +ACPI: PM-Timer IO Port: 0x808 +ACPI: Local APIC address 0xfee00000 +ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) +Processor #0 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] enabled) +Processor #2 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x03] lapic_id[0x04] enabled) +Processor #4 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x04] lapic_id[0x06] enabled) +Processor #6 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x05] lapic_id[0x01] enabled) +Processor #1 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x06] lapic_id[0x03] enabled) +Processor #3 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x07] lapic_id[0x05] enabled) +Processor #5 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x08] lapic_id[0x07] enabled) +Processor #7 7:10 APIC version 21 +ACPI: LAPIC (acpi_id[0x09] lapic_id[0x88] disabled) +ACPI: LAPIC (acpi_id[0x0a] lapic_id[0x89] disabled) +ACPI: LAPIC (acpi_id[0x0b] lapic_id[0x8a] disabled) +ACPI: LAPIC (acpi_id[0x0c] lapic_id[0x8b] disabled) +ACPI: LAPIC (acpi_id[0x0d] lapic_id[0x8c] disabled) +ACPI: LAPIC (acpi_id[0x0e] lapic_id[0x8d] disabled) +ACPI: LAPIC (acpi_id[0x0f] lapic_id[0x8e] disabled) +ACPI: LAPIC (acpi_id[0x10] lapic_id[0x8f] disabled) +ACPI: LAPIC_NMI (acpi_id[0xff] high edge lint[0x1]) +ACPI: IOAPIC (id[0x08] address[0xfec00000] gsi_base[0]) +IOAPIC[0]: apic_id 8, version 32, address 0xfec00000, GSI 0-23 +ACPI: IOAPIC (id[0x09] address[0xfec8a000] gsi_base[24]) +IOAPIC[1]: apic_id 9, version 32, address 0xfec8a000, GSI 24-47 +ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) +ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) +ACPI: IRQ0 used by override. +ACPI: IRQ2 used by override. +ACPI: IRQ9 used by override. +Setting APIC routing to physical flat +ACPI: HPET id: 0xffffffff base: 0xfed00000 +Using ACPI (MADT) for SMP configuration information +Nosave address range: 000000000009a000 - 000000000009b000 +Nosave address range: 000000000009b000 - 00000000000a0000 +Nosave address range: 00000000000a0000 - 00000000000e0000 +Nosave address range: 00000000000e0000 - 0000000000100000 +Nosave address range: 000000007f780000 - 000000007f78e000 +Nosave address range: 000000007f78e000 - 000000007f790000 +Nosave address range: 000000007f790000 - 000000007f79e000 +Nosave address range: 000000007f79e000 - 000000007f7d0000 +Nosave address range: 000000007f7d0000 - 000000007f7e0000 +Nosave address range: 000000007f7e0000 - 000000007f7ec000 +Nosave address range: 000000007f7ec000 - 0000000080000000 +Nosave address range: 0000000080000000 - 00000000e0000000 +Nosave address range: 00000000e0000000 - 00000000f0000000 +Nosave address range: 00000000f0000000 - 00000000fee00000 +Nosave address range: 00000000fee00000 - 00000000fee01000 +Nosave address range: 00000000fee01000 - 00000000ffb00000 +Nosave address range: 00000000ffb00000 - 0000000100000000 +Allocating PCI resources starting at 88000000 (gap: 80000000:60000000) +SMP: Allowing 16 CPUs, 8 hotplug CPUs +Built 1 zonelists. Total pages: 2057723 +Kernel command line: ro root=/dev/VolGroup00/LogVol00 rhgb quiet +Initializing CPU#0 +PID hash table entries: 4096 (order: 12, 32768 bytes) +Console: colour VGA+ 80x25 +Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes) +Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes) +Checking aperture... +PCI-DMA: Using software bounce buffering for IO (SWIOTLB) +Placing software IO TLB between 0x1ca1000 - 0x5ca1000 +Memory: 8148316k/10485760k available (2549k kernel code, 231116k reserved, 1292k data, 208k init) +Calibrating delay loop (skipped), value calculated using timer frequency.. 4522.11 BogoMIPS (lpj=2261056) +Security Framework v1.0.0 initialized +SELinux: Initializing. +SELinux: Starting in permissive mode +selinux_register_security: Registering secondary module capability +Capability LSM initialized as secondary +Mount-cache hash table entries: 256 +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +using mwait in idle threads. +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 0 +CPU0: Thermal monitoring enabled (TM1) +SMP alternatives: switching to UP code +ACPI: Core revision 20060707 +Using local APIC timer interrupts. +Detected 8.312 MHz APIC timer. +SMP alternatives: switching to SMP code +Booting processor 1/8 APIC 0x2 +Initializing CPU#1 +Calibrating delay using timer specific routine.. 4521.98 BogoMIPS (lpj=2260990) +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 1 +CPU1: Thermal monitoring enabled (TM1) +Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping 05 +SMP alternatives: switching to SMP code +Booting processor 2/8 APIC 0x4 +Initializing CPU#2 +Calibrating delay using timer specific routine.. 4521.98 BogoMIPS (lpj=2260991) +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 2 +CPU2: Thermal monitoring enabled (TM1) +Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping 05 +SMP alternatives: switching to SMP code +Booting processor 3/8 APIC 0x6 +Initializing CPU#3 +Calibrating delay using timer specific routine.. 4521.95 BogoMIPS (lpj=2260978) +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 3 +CPU3: Thermal monitoring enabled (TM1) +Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping 05 +SMP alternatives: switching to SMP code +Booting processor 4/8 APIC 0x1 +Initializing CPU#4 +Calibrating delay using timer specific routine.. 4521.97 BogoMIPS (lpj=2260988) +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 0 +CPU4: Thermal monitoring enabled (TM1) +Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping 05 +SMP alternatives: switching to SMP code +Booting processor 5/8 APIC 0x3 +Initializing CPU#5 +Calibrating delay using timer specific routine.. 4521.97 BogoMIPS (lpj=2260988) +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 1 +CPU5: Thermal monitoring enabled (TM1) +Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping 05 +SMP alternatives: switching to SMP code +Booting processor 6/8 APIC 0x5 +Initializing CPU#6 +Calibrating delay using timer specific routine.. 4521.97 BogoMIPS (lpj=2260989) +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 2 +CPU6: Thermal monitoring enabled (TM1) +Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping 05 +SMP alternatives: switching to SMP code +Booting processor 7/8 APIC 0x7 +Initializing CPU#7 +Calibrating delay using timer specific routine.. 4521.97 BogoMIPS (lpj=2260987) +CPU: L1 I cache: 32K, L1 D cache: 32K +CPU: L2 cache: 256K +CPU: L3 cache: 8192K +CPU: Physical Processor ID: 0 +CPU: Processor Core ID: 3 +CPU7: Thermal monitoring enabled (TM1) +Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping 05 +Brought up 8 CPUs +testing NMI watchdog ... OK. +time.c: Using 14.318180 MHz WALL HPET GTOD HPET/TSC timer. +time.c: Detected 2261.056 MHz processor. +sizeof(vma)=176 bytes +sizeof(page)=56 bytes +sizeof(inode)=560 bytes +sizeof(dentry)=216 bytes +sizeof(ext3inode)=760 bytes +sizeof(buffer_head)=96 bytes +sizeof(skbuff)=248 bytes +migration_cost=1,20 +checking if image is initramfs... it is +Freeing initrd memory: 3379k freed +NET: Registered protocol family 16 +ACPI: bus type pci registered +PCI: Using MMCONFIG at e0000000 +ACPI: Interpreter enabled +ACPI: Using IOAPIC for interrupt routing +ACPI: No dock devices found. +ACPI: PCI Root Bridge [PCI0] (0000:00) +PCI: Transparent bridge - 0000:00:1e.0 +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.NPE1._PRT] +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.NPE2._PRT] +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.NPE3._PRT] +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.NPE7._PRT] +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.NPE9._PRT] +ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P1._PRT] +ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 6 7 *10 11 12 14 15) +ACPI: PCI Interrupt Link [LNKB] (IRQs *5) +ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 6 7 10 11 12 14 *15) +ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 6 7 10 *11 12 14 15) +ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 6 7 10 11 12 14 15) *0, disabled. +ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 6 7 10 11 12 *14 15) +ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 6 7 10 11 12 14 15) *0, disabled. +ACPI: PCI Interrupt Link [LNKH] (IRQs *3 4 6 7 10 11 12 14 15) +Linux Plug and Play Support v0.97 (c) Adam Belay +pnp: PnP ACPI init +pnp: PnP ACPI: found 15 devices +usbcore: registered new driver usbfs +usbcore: registered new driver hub +PCI: Using ACPI for IRQ routing +PCI: If a device doesn't work, try "pci=routeirq". If it helps, post a report +NetLabel: Initializing +NetLabel: domain hash size = 128 +NetLabel: protocols = UNLABELED CIPSOv4 +NetLabel: unlabeled traffic allowed by default +hpet0: at MMIO 0xfed00000 (virtual 0xffffffffff5fe000), IRQs 2, 8, 0, 0 +hpet0: 4 64-bit timers, 14318180 Hz +DMAR:Host address width 40 +DMAR:DRHD (flags: 0x00000001)base: 0x00000000fbffe000 +DMAR:RMRR base: 0x00000000000ec000 end: 0x00000000000effff +DMAR:RMRR base: 0x000000007f7ec000 end: 0x000000007f7fffff +DMAR:Unknown DMAR structure type +PCI-GART: No AMD northbridge found. +pnp: 00:0a: ioport range 0x400-0x41f has been reserved +PCI: Bridge: 0000:00:01.0 + IO window: a000-afff + MEM window: fa600000-fa6fffff + PREFETCH window: disabled. +PCI: Bridge: 0000:00:02.0 + IO window: b000-bfff + MEM window: fa700000-fa7fffff + PREFETCH window: disabled. +PCI: Bridge: 0000:00:03.0 + IO window: c000-cfff + MEM window: fa800000-fabfffff + PREFETCH window: disabled. +PCI: Bridge: 0000:00:07.0 + IO window: d000-dfff + MEM window: fac00000-faffffff + PREFETCH window: disabled. +PCI: Bridge: 0000:00:09.0 + IO window: disabled. + MEM window: disabled. + PREFETCH window: disabled. +PCI: Bridge: 0000:00:1e.0 + IO window: e000-efff + MEM window: fb000000-fbefffff + PREFETCH window: disabled. +PCI: Setting latency timer of device 0000:00:01.0 to 64 +PCI: Setting latency timer of device 0000:00:02.0 to 64 +PCI: Setting latency timer of device 0000:00:03.0 to 64 +PCI: Setting latency timer of device 0000:00:07.0 to 64 +PCI: Setting latency timer of device 0000:00:09.0 to 64 +PCI: Setting latency timer of device 0000:00:1e.0 to 64 +NET: Registered protocol family 2 +IP route cache hash table entries: 262144 (order: 9, 2097152 bytes) +TCP established hash table entries: 262144 (order: 10, 4194304 bytes) +TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) +TCP: Hash tables configured (established 262144 bind 65536) +TCP reno registered +audit: initializing netlink socket (disabled) +type=2000 audit(1260474150.129:1): initialized +Total HugeTLB memory allocated, 0 +VFS: Disk quotas dquot_6.5.1 +Dquot-cache hash table entries: 512 (order 0, 4096 bytes) +SELinux: Registering netfilter hooks +Initializing Cryptographic API +alg: No test for crc32c (crc32c-generic) +ksign: Installing public key data +Loading keyring +- Added public key 1DAAFEBBCEC31697 +- User ID: CentOS (Kernel Module GPG key) +io scheduler noop registered +io scheduler anticipatory registered +io scheduler deadline registered +io scheduler cfq registered (default) +Boot video device is 0000:1f:05.0 +PCI: Setting latency timer of device 0000:00:01.0 to 64 +assign_interrupt_mode Found MSI capability +Allocate Port Service[0000:00:01.0:pcie00] +Allocate Port Service[0000:00:01.0:pcie01] +PCI: Setting latency timer of device 0000:00:02.0 to 64 +assign_interrupt_mode Found MSI capability +Allocate Port Service[0000:00:02.0:pcie00] +Allocate Port Service[0000:00:02.0:pcie01] +PCI: Setting latency timer of device 0000:00:03.0 to 64 +assign_interrupt_mode Found MSI capability +Allocate Port Service[0000:00:03.0:pcie00] +Allocate Port Service[0000:00:03.0:pcie01] +PCI: Setting latency timer of device 0000:00:07.0 to 64 +assign_interrupt_mode Found MSI capability +Allocate Port Service[0000:00:07.0:pcie00] +Allocate Port Service[0000:00:07.0:pcie01] +PCI: Setting latency timer of device 0000:00:09.0 to 64 +assign_interrupt_mode Found MSI capability +Allocate Port Service[0000:00:09.0:pcie00] +Allocate Port Service[0000:00:09.0:pcie01] +pci_hotplug: PCI Hot Plug PCI Core version: 0.5 +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P001Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P001Cst] [20060707] +ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3]) +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P002Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P002Cst] [20060707] +ACPI: CPU1 (power states: C1[C1] C2[C2] C3[C3]) +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P003Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P003Cst] [20060707] +ACPI: CPU2 (power states: C1[C1] C2[C2] C3[C3]) +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P004Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P004Cst] [20060707] +ACPI: CPU3 (power states: C1[C1] C2[C2] C3[C3]) +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P005Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P005Cst] [20060707] +ACPI: CPU4 (power states: C1[C1] C2[C2] C3[C3]) +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P006Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P006Cst] [20060707] +ACPI: CPU5 (power states: C1[C1] C2[C2] C3[C3]) +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P007Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P007Cst] [20060707] +ACPI: CPU6 (power states: C1[C1] C2[C2] C3[C3]) +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [DpgPmm] OemTableId [ P008Ist] [20060707] +ACPI (exconfig-0456): Dynamic SSDT Load - OemId [ PmRef] OemTableId [ P008Cst] [20060707] +ACPI: CPU7 (power states: C1[C1] C2[C2] C3[C3]) +Real Time Clock Driver v1.12ac +hpet_resources: 0xfed00000 is busy +Non-volatile memory driver v1.2 +Linux agpgart interface v0.101 (c) Dave Jones +Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled +serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A +00:0b: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A +brd: module loaded +Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 +ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx +Probing IDE interface ide0... +Probing IDE interface ide1... +ide-floppy driver 0.99.newide +usbcore: registered new driver hiddev +usbcore: registered new driver usbhid +drivers/usb/input/hid-core.c: v2.6:USB HID core driver +PNP: No PS/2 controller found. Probing ports directly. +Failed to disable AUX port, but continuing anyway... Is this a SiS? +If AUX port is really absent please use the 'i8042.noaux' option. +serio: i8042 KBD port at 0x60,0x64 irq 1 +mice: PS/2 mouse device common for all mice +md: md driver 0.90.3 MAX_MD_DEVS=256, MD_SB_DISKS=27 +md: bitmap version 4.39 +TCP bic registered +Initializing IPsec netlink socket +NET: Registered protocol family 1 +NET: Registered protocol family 17 +ACPI: (supports S0 S5) +Initalizing network drop monitor service +Freeing unused kernel memory: 208k freed +Write protecting the kernel read-only data: 497k +GSI 16 sharing vector 0xD9 and IRQ 16 +ACPI: PCI Interrupt 0000:00:1a.7[C] -> GSI 18 (level, low) -> IRQ 217 +PCI: Setting latency timer of device 0000:00:1a.7 to 64 +ehci_hcd 0000:00:1a.7: EHCI Host Controller +ehci_hcd 0000:00:1a.7: new USB bus registered, assigned bus number 1 +ehci_hcd 0000:00:1a.7: debug port 1 +PCI: cache line size of 32 is not supported by device 0000:00:1a.7 +ehci_hcd 0000:00:1a.7: irq 217, io mem 0xfa5de000 +ehci_hcd 0000:00:1a.7: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 +usb usb1: configuration #1 chosen from 1 choice +hub 1-0:1.0: USB hub found +hub 1-0:1.0: 6 ports detected +GSI 17 sharing vector 0xE1 and IRQ 17 +ACPI: PCI Interrupt 0000:00:1d.7[A] -> GSI 23 (level, low) -> IRQ 225 +PCI: Setting latency timer of device 0000:00:1d.7 to 64 +ehci_hcd 0000:00:1d.7: EHCI Host Controller +ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 2 +ehci_hcd 0000:00:1d.7: debug port 1 +PCI: cache line size of 32 is not supported by device 0000:00:1d.7 +ehci_hcd 0000:00:1d.7: irq 225, io mem 0xfa5dc000 +ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 +usb usb2: configuration #1 chosen from 1 choice +hub 2-0:1.0: USB hub found +hub 2-0:1.0: 6 ports detected +ohci_hcd: 2005 April 22 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) +USB Universal Host Controller Interface driver v3.0 +GSI 18 sharing vector 0xE9 and IRQ 18 +ACPI: PCI Interrupt 0000:00:1a.0[A] -> GSI 16 (level, low) -> IRQ 233 +PCI: Setting latency timer of device 0000:00:1a.0 to 64 +uhci_hcd 0000:00:1a.0: UHCI Host Controller +uhci_hcd 0000:00:1a.0: new USB bus registered, assigned bus number 3 +uhci_hcd 0000:00:1a.0: irq 233, io base 0x00009800 +usb usb3: configuration #1 chosen from 1 choice +hub 3-0:1.0: USB hub found +hub 3-0:1.0: 2 ports detected +usb 1-3: new high speed USB device using ehci_hcd and address 2 +GSI 19 sharing vector 0x32 and IRQ 19 +ACPI: PCI Interrupt 0000:00:1a.1[B] -> GSI 21 (level, low) -> IRQ 50 +PCI: Setting latency timer of device 0000:00:1a.1 to 64 +uhci_hcd 0000:00:1a.1: UHCI Host Controller +uhci_hcd 0000:00:1a.1: new USB bus registered, assigned bus number 4 +uhci_hcd 0000:00:1a.1: irq 50, io base 0x00009880 +usb usb4: configuration #1 chosen from 1 choice +hub 4-0:1.0: USB hub found +hub 4-0:1.0: 2 ports detected +GSI 20 sharing vector 0x3A and IRQ 20 +ACPI: PCI Interrupt 0000:00:1a.2[D] -> GSI 19 (level, low) -> IRQ 58 +PCI: Setting latency timer of device 0000:00:1a.2 to 64 +uhci_hcd 0000:00:1a.2: UHCI Host Controller +uhci_hcd 0000:00:1a.2: new USB bus registered, assigned bus number 5 +uhci_hcd 0000:00:1a.2: irq 58, io base 0x00009c00 +usb usb5: configuration #1 chosen from 1 choice +hub 5-0:1.0: USB hub found +hub 5-0:1.0: 2 ports detected +usb 1-3: configuration #1 chosen from 1 choice +hub 1-3:1.0: USB hub found +hub 1-3:1.0: 2 ports detected +ACPI: PCI Interrupt 0000:00:1d.0[A] -> GSI 23 (level, low) -> IRQ 225 +PCI: Setting latency timer of device 0000:00:1d.0 to 64 +uhci_hcd 0000:00:1d.0: UHCI Host Controller +uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 6 +uhci_hcd 0000:00:1d.0: irq 225, io base 0x00009080 +usb usb6: configuration #1 chosen from 1 choice +hub 6-0:1.0: USB hub found +hub 6-0:1.0: 2 ports detected +ACPI: PCI Interrupt 0000:00:1d.1[B] -> GSI 19 (level, low) -> IRQ 58 +PCI: Setting latency timer of device 0000:00:1d.1 to 64 +uhci_hcd 0000:00:1d.1: UHCI Host Controller +uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 7 +uhci_hcd 0000:00:1d.1: irq 58, io base 0x00009400 +usb usb7: configuration #1 chosen from 1 choice +hub 7-0:1.0: USB hub found +hub 7-0:1.0: 2 ports detected +ACPI: PCI Interrupt 0000:00:1d.2[C] -> GSI 18 (level, low) -> IRQ 217 +PCI: Setting latency timer of device 0000:00:1d.2 to 64 +uhci_hcd 0000:00:1d.2: UHCI Host Controller +uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 8 +uhci_hcd 0000:00:1d.2: irq 217, io base 0x00009480 +usb usb8: configuration #1 chosen from 1 choice +hub 8-0:1.0: USB hub found +hub 8-0:1.0: 2 ports detected +SCSI subsystem initialized +Fusion MPT base driver 3.04.07rh +Copyright (c) 1999-2008 LSI Corporation +Fusion MPT SAS Host driver 3.04.07rh +GSI 21 sharing vector 0x42 and IRQ 21 +ACPI: PCI Interrupt 0000:0d:00.0[A] -> GSI 24 (level, low) -> IRQ 66 +mptbase: ioc0: Initiating bringup +usb 2-3: new high speed USB device using ehci_hcd and address 2 +usb 2-3: configuration #1 chosen from 1 choice +hub 2-3:1.0: USB hub found +hub 2-3:1.0: 4 ports detected +ioc0: LSISAS1068E B2: Capabilities={Initiator} +PCI: Setting latency timer of device 0000:0d:00.0 to 64 +usb 5-1: new low speed USB device using uhci_hcd and address 2 +usb 5-1: configuration #1 chosen from 1 choice +input: American Megatrends Inc. Virtual Keyboard and Mouse as /class/input/input0 +input: USB HID v1.10 Keyboard [American Megatrends Inc. Virtual Keyboard and Mouse] on usb-0000:00:1a.2-1 +input: American Megatrends Inc. Virtual Keyboard and Mouse as /class/input/input1 +input: USB HID v1.10 Mouse [American Megatrends Inc. Virtual Keyboard and Mouse] on usb-0000:00:1a.2-1 +scsi0 : ioc0: LSISAS1068E B2, FwRev=011b0200h, Ports=1, MaxQ=277, IRQ=66 + Vendor: HITACHI Model: H103030SCSUN300G Rev: A2A8 + Type: Direct-Access ANSI SCSI revision: 06 + Vendor: HITACHI Model: H103030SCSUN300G Rev: A2A8 + Type: Direct-Access ANSI SCSI revision: 06 + Vendor: HITACHI Model: H103030SCSUN300G Rev: A2A8 + Type: Direct-Access ANSI SCSI revision: 06 + Vendor: LSILOGIC Model: Logical Volume Rev: 3000 + Type: Direct-Access ANSI SCSI revision: 02 +SCSI device sda: 875974656 512-byte hdwr sectors (448499 MB) +sda: Write Protect is off +sda: Mode Sense: 03 00 00 08 +SCSI device sda: drive cache: write through +SCSI device sda: 875974656 512-byte hdwr sectors (448499 MB) +sda: Write Protect is off +sda: Mode Sense: 03 00 00 08 +SCSI device sda: drive cache: write through + sda: sda1 sda2 +sd 0:1:0:0: Attached scsi disk sda +GSI 22 sharing vector 0x4A and IRQ 22 +ACPI: PCI Interrupt 0000:13:00.0[A] -> GSI 30 (level, low) -> IRQ 74 +mptbase: ioc1: Initiating bringup +ioc1: LSISAS1068E B3: Capabilities={Initiator} +PCI: Setting latency timer of device 0000:13:00.0 to 64 +scsi1 : ioc1: LSISAS1068E B3, FwRev=011a0000h, Ports=1, MaxQ=336, IRQ=74 + Vendor: ATA Model: HITACHI HUA7210S Rev: AC4A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdb: 1953525168 512-byte hdwr sectors (1000205 MB) +sdb: Write Protect is off +sdb: Mode Sense: 73 00 00 08 +SCSI device sdb: drive cache: write through +SCSI device sdb: 1953525168 512-byte hdwr sectors (1000205 MB) +sdb: Write Protect is off +sdb: Mode Sense: 73 00 00 08 +SCSI device sdb: drive cache: write through + sdb: sdb1 +sd 1:0:0:0: Attached scsi disk sdb + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdc: 1953525168 512-byte hdwr sectors (1000205 MB) +sdc: Write Protect is off +sdc: Mode Sense: 73 00 00 08 +SCSI device sdc: drive cache: write through +SCSI device sdc: 1953525168 512-byte hdwr sectors (1000205 MB) +sdc: Write Protect is off +sdc: Mode Sense: 73 00 00 08 +SCSI device sdc: drive cache: write through + sdc: sdc1 +sd 1:0:1:0: Attached scsi disk sdc + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdd: 1953525168 512-byte hdwr sectors (1000205 MB) +sdd: Write Protect is off +sdd: Mode Sense: 73 00 00 08 +SCSI device sdd: drive cache: write through +SCSI device sdd: 1953525168 512-byte hdwr sectors (1000205 MB) +sdd: Write Protect is off +sdd: Mode Sense: 73 00 00 08 +SCSI device sdd: drive cache: write through + sdd: sdd1 +sd 1:0:2:0: Attached scsi disk sdd + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sde: 1953525168 512-byte hdwr sectors (1000205 MB) +sde: Write Protect is off +sde: Mode Sense: 73 00 00 08 +SCSI device sde: drive cache: write through +SCSI device sde: 1953525168 512-byte hdwr sectors (1000205 MB) +sde: Write Protect is off +sde: Mode Sense: 73 00 00 08 +SCSI device sde: drive cache: write through + sde: sde1 +sd 1:0:3:0: Attached scsi disk sde + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdf: 1953525168 512-byte hdwr sectors (1000205 MB) +sdf: Write Protect is off +sdf: Mode Sense: 73 00 00 08 +SCSI device sdf: drive cache: write through +SCSI device sdf: 1953525168 512-byte hdwr sectors (1000205 MB) +sdf: Write Protect is off +sdf: Mode Sense: 73 00 00 08 +SCSI device sdf: drive cache: write through + sdf: unknown partition table +sd 1:0:4:0: Attached scsi disk sdf + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdg: 1953525168 512-byte hdwr sectors (1000205 MB) +sdg: Write Protect is off +sdg: Mode Sense: 73 00 00 08 +SCSI device sdg: drive cache: write through +SCSI device sdg: 1953525168 512-byte hdwr sectors (1000205 MB) +sdg: Write Protect is off +sdg: Mode Sense: 73 00 00 08 +SCSI device sdg: drive cache: write through + sdg: unknown partition table +sd 1:0:5:0: Attached scsi disk sdg + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdh: 1953525168 512-byte hdwr sectors (1000205 MB) +sdh: Write Protect is off +sdh: Mode Sense: 73 00 00 08 +SCSI device sdh: drive cache: write through +SCSI device sdh: 1953525168 512-byte hdwr sectors (1000205 MB) +sdh: Write Protect is off +sdh: Mode Sense: 73 00 00 08 +SCSI device sdh: drive cache: write through + sdh: unknown partition table +sd 1:0:6:0: Attached scsi disk sdh + Vendor: ATA Model: HITACHI HUA7210S Rev: AC4A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdi: 1953525168 512-byte hdwr sectors (1000205 MB) +sdi: Write Protect is off +sdi: Mode Sense: 73 00 00 08 +SCSI device sdi: drive cache: write through +SCSI device sdi: 1953525168 512-byte hdwr sectors (1000205 MB) +sdi: Write Protect is off +sdi: Mode Sense: 73 00 00 08 +SCSI device sdi: drive cache: write through + sdi: unknown partition table +sd 1:0:7:0: Attached scsi disk sdi + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdj: 1953525168 512-byte hdwr sectors (1000205 MB) +sdj: Write Protect is off +sdj: Mode Sense: 73 00 00 08 +SCSI device sdj: drive cache: write through +SCSI device sdj: 1953525168 512-byte hdwr sectors (1000205 MB) +sdj: Write Protect is off +sdj: Mode Sense: 73 00 00 08 +SCSI device sdj: drive cache: write through + sdj: unknown partition table +sd 1:0:8:0: Attached scsi disk sdj + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdk: 1953525168 512-byte hdwr sectors (1000205 MB) +sdk: Write Protect is off +sdk: Mode Sense: 73 00 00 08 +SCSI device sdk: drive cache: write through +SCSI device sdk: 1953525168 512-byte hdwr sectors (1000205 MB) +sdk: Write Protect is off +sdk: Mode Sense: 73 00 00 08 +SCSI device sdk: drive cache: write through + sdk: unknown partition table +sd 1:0:9:0: Attached scsi disk sdk + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdl: 1953525168 512-byte hdwr sectors (1000205 MB) +sdl: Write Protect is off +sdl: Mode Sense: 73 00 00 08 +SCSI device sdl: drive cache: write through +SCSI device sdl: 1953525168 512-byte hdwr sectors (1000205 MB) +sdl: Write Protect is off +sdl: Mode Sense: 73 00 00 08 +SCSI device sdl: drive cache: write through + sdl: unknown partition table +sd 1:0:10:0: Attached scsi disk sdl + Vendor: ATA Model: HITACHI HUA7210S Rev: A90A + Type: Direct-Access ANSI SCSI revision: 05 +SCSI device sdm: 1953525168 512-byte hdwr sectors (1000205 MB) +sdm: Write Protect is off +sdm: Mode Sense: 73 00 00 08 +SCSI device sdm: drive cache: write through +SCSI device sdm: 1953525168 512-byte hdwr sectors (1000205 MB) +sdm: Write Protect is off +sdm: Mode Sense: 73 00 00 08 +SCSI device sdm: drive cache: write through + sdm: sdm1 +sd 1:0:11:0: Attached scsi disk sdm + Vendor: SUN Model: Storage J4200 Rev: 3A31 + Type: Enclosure ANSI SCSI revision: 05 +shpchp: Standard Hot Plug PCI Controller Driver version: 0.4 +libata version 3.00 loaded. +ahci 0000:00:1f.2: version 3.0 +ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 19 (level, low) -> IRQ 58 +ahci 0000:00:1f.2: AHCI 0001.0200 32 slots 6 ports 3 Gbps 0x3f impl SATA mode +ahci 0000:00:1f.2: flags: 64bit ncq sntf stag pm led clo pio slum part ems +PCI: Setting latency timer of device 0000:00:1f.2 to 64 +scsi2 : ahci +scsi3 : ahci +scsi4 : ahci +scsi5 : ahci +scsi6 : ahci +scsi7 : ahci +ata1: SATA max UDMA/133 abar m2048@0xfa5d8000 port 0xfa5d8100 irq 82 +ata2: SATA max UDMA/133 abar m2048@0xfa5d8000 port 0xfa5d8180 irq 82 +ata3: SATA max UDMA/133 abar m2048@0xfa5d8000 port 0xfa5d8200 irq 82 +ata4: SATA max UDMA/133 abar m2048@0xfa5d8000 port 0xfa5d8280 irq 82 +ata5: SATA max UDMA/133 abar m2048@0xfa5d8000 port 0xfa5d8300 irq 82 +ata6: SATA max UDMA/133 abar m2048@0xfa5d8000 port 0xfa5d8380 irq 82 +ata1: SATA link down (SStatus 0 SControl 300) +ata2: SATA link down (SStatus 0 SControl 300) +ata3: SATA link down (SStatus 0 SControl 300) +ata4: SATA link down (SStatus 0 SControl 300) +ata5: SATA link down (SStatus 0 SControl 300) +ata6: SATA link down (SStatus 0 SControl 300) +device-mapper: uevent: version 1.0.3 +device-mapper: ioctl: 4.11.5-ioctl (2007-12-12) initialised: dm-devel@redhat.com +device-mapper: dm-raid45: initialized v0.2594l +EXT3-fs: INFO: recovery required on readonly filesystem. +EXT3-fs: write access will be enabled during recovery. +kjournald starting. Commit interval 5 seconds +EXT3-fs: dm-1: orphan cleanup on readonly fs +ext3_orphan_cleanup: deleting unreferenced inode 56295427 +ext3_orphan_cleanup: deleting unreferenced inode 96010261 +ext3_orphan_cleanup: deleting unreferenced inode 96010260 +ext3_orphan_cleanup: deleting unreferenced inode 96010259 +ext3_orphan_cleanup: deleting unreferenced inode 96010258 +ext3_orphan_cleanup: deleting unreferenced inode 96010255 +ext3_orphan_cleanup: deleting unreferenced inode 55967827 +ext3_orphan_cleanup: deleting unreferenced inode 13009800 +ext3_orphan_cleanup: deleting unreferenced inode 13009008 +ext3_orphan_cleanup: deleting unreferenced inode 13009117 +ext3_orphan_cleanup: deleting unreferenced inode 13009006 +ext3_orphan_cleanup: deleting unreferenced inode 13009797 +ext3_orphan_cleanup: deleting unreferenced inode 13008965 +ext3_orphan_cleanup: deleting unreferenced inode 13009009 +EXT3-fs: dm-1: 14 orphan inodes deleted +EXT3-fs: recovery complete. +EXT3-fs: mounted filesystem with ordered data mode. +SELinux: Disabled at runtime. +SELinux: Unregistering netfilter hooks +type=1404 audit(1260474362.120:2): selinux=0 auid=4294967295 ses=4294967295 +scsi 0:0:1:0: Attached scsi generic sg0 type 0 +scsi 0:0:2:0: Attached scsi generic sg1 type 0 +scsi 0:0:3:0: Attached scsi generic sg2 type 0 +sd 0:1:0:0: Attached scsi generic sg3 type 0 +sd 1:0:0:0: Attached scsi generic sg4 type 0 +sd 1:0:1:0: Attached scsi generic sg5 type 0 +sd 1:0:2:0: Attached scsi generic sg6 type 0 +sd 1:0:3:0: Attached scsi generic sg7 type 0 +sd 1:0:4:0: Attached scsi generic sg8 type 0 +sd 1:0:5:0: Attached scsi generic sg9 type 0 +sd 1:0:6:0: Attached scsi generic sg10 type 0 +sd 1:0:7:0: Attached scsi generic sg11 type 0 +sd 1:0:8:0: Attached scsi generic sg12 type 0 +sd 1:0:9:0: Attached scsi generic sg13 type 0 +sd 1:0:10:0: Attached scsi generic sg14 type 0 +sd 1:0:11:0: Attached scsi generic sg15 type 0 +scsi 1:0:12:0: Attached scsi generic sg16 type 13 +input: PC Speaker as /class/input/input2 +ACPI: PCI Interrupt 0000:00:1f.3[C] -> GSI 18 (level, low) -> IRQ 217 +802.1Q VLAN Support v1.8 Ben Greear +All bugs added by David S. Miller +Intel(R) Gigabit Ethernet Network Driver - version 1.3.16-k2 +Copyright (c) 2007-2009 Intel Corporation. +GSI 23 sharing vector 0x5A and IRQ 23 +ACPI: PCI Interrupt 0000:01:00.0[A] -> GSI 28 (level, low) -> IRQ 90 +igb 0000:01:00.0: Disabling ASPM L0s upstream switch port 0000:00:01.0 +PCI: Setting latency timer of device 0000:01:00.0 to 64 +igb 0000:01:00.0: Intel(R) Gigabit Ethernet Network Connection +igb 0000:01:00.0: eth0: (PCIe:2.5Gb/s:Width x2) 00:14:4f:ca:fa:b4 +igb 0000:01:00.0: eth0: PBA No: 2030ff-0ff +igb 0000:01:00.0: Using MSI-X interrupts. 4 rx queue(s), 1 tx queue(s) +GSI 24 sharing vector 0x92 and IRQ 24 +ACPI: PCI Interrupt 0000:01:00.1[B] -> GSI 40 (level, low) -> IRQ 146 +igb 0000:01:00.1: Disabling ASPM L0s upstream switch port 0000:00:01.0 +PCI: Setting latency timer of device 0000:01:00.1 to 64 +igb 0000:01:00.1: Intel(R) Gigabit Ethernet Network Connection +igb 0000:01:00.1: eth1: (PCIe:2.5Gb/s:Width x2) 00:14:4f:ca:fa:b5 +igb 0000:01:00.1: eth1: PBA No: 2030ff-0ff +igb 0000:01:00.1: Using MSI-X interrupts. 4 rx queue(s), 1 tx queue(s) +GSI 25 sharing vector 0xCA and IRQ 25 +ACPI: PCI Interrupt 0000:07:00.0[A] -> GSI 29 (level, low) -> IRQ 202 +igb 0000:07:00.0: Disabling ASPM L0s upstream switch port 0000:00:02.0 +PCI: Setting latency timer of device 0000:07:00.0 to 64 +igb 0000:07:00.0: Intel(R) Gigabit Ethernet Network Connection +igb 0000:07:00.0: eth2: (PCIe:2.5Gb/s:Width x2) 00:14:4f:ca:fa:b6 +igb 0000:07:00.0: eth2: PBA No: 2030ff-0ff +igb 0000:07:00.0: Using MSI-X interrupts. 4 rx queue(s), 1 tx queue(s) +GSI 26 sharing vector 0x43 and IRQ 26 +ACPI: PCI Interrupt 0000:07:00.1[B] -> GSI 41 (level, low) -> IRQ 67 +igb 0000:07:00.1: Disabling ASPM L0s upstream switch port 0000:00:02.0 +PCI: Setting latency timer of device 0000:07:00.1 to 64 +igb 0000:07:00.1: Intel(R) Gigabit Ethernet Network Connection +igb 0000:07:00.1: eth3: (PCIe:2.5Gb/s:Width x2) 00:14:4f:ca:fa:b7 +igb 0000:07:00.1: eth3: PBA No: 2030ff-0ff +igb 0000:07:00.1: Using MSI-X interrupts. 4 rx queue(s), 1 tx queue(s) +floppy0: no floppy controllers found +lp: driver loaded but no devices found +NET: Registered protocol family 10 +lo: Disabled Privacy Extensions +IPv6 over IPv4 tunneling driver +mtrr: type mismatch for fb000000,800000 old: write-back new: write-combining +ACPI: Power Button (FF) [PWRF] +ACPI: Power Button (CM) [PWRB] +md: Autodetecting RAID arrays. +md: autorun ... +md: ... autorun DONE. +device-mapper: multipath: version 1.0.5 loaded +EXT3 FS on dm-1, internal journal +kjournald starting. Commit interval 5 seconds +EXT3 FS on sda1, internal journal +EXT3-fs: mounted filesystem with ordered data mode. +Adding 10190840k swap on /dev/VolGroup00/LogVol01. Priority:-1 extents:1 across:10190840k diff --git a/t/pt-summary/samples/dmesg-007.txt b/t/pt-summary/samples/dmesg-007.txt new file mode 100644 index 00000000..13e07435 --- /dev/null +++ b/t/pt-summary/samples/dmesg-007.txt @@ -0,0 +1,136 @@ +Copyright (c) 1992-2010 The FreeBSD Project. +Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 + The Regents of the University of California. All rights reserved. +FreeBSD is a registered trademark of The FreeBSD Foundation. +FreeBSD 7.3-RELEASE #0: Sun Mar 21 06:15:01 UTC 2010 + root@walker.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 +Timecounter "i8254" frequency 1193182 Hz quality 0 +CPU: Genuine Intel(R) CPU U7300 @ 1.30GHz (1338.94-MHz 686-class CPU) + Origin = "GenuineIntel" Id = 0x1067a Stepping = 10 + Features=0x783fbbf + Features2=0x209 +real memory = 134152192 (127 MB) +avail memory = 117145600 (111 MB) +pnpbios: Bad PnP BIOS data checksum +kbd1 at kbdmux0 +acpi0: on motherboard +acpi0: [ITHREAD] +acpi0: Power Button (fixed) +acpi0: Sleep Button (fixed) +Timecounter "ACPI-safe" frequency 3579545 Hz quality 850 +acpi_timer0: <32-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0 +pcib0: port 0xcf8-0xcff on acpi0 +pci0: on pcib0 +isab0: at device 1.0 on pci0 +isa0: on isab0 +atapci0: port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xd000-0xd00f at device 1.1 on pci0 +ata0: on atapci0 +ata0: [ITHREAD] +ata1: on atapci0 +ata1: [ITHREAD] +vgapci0: mem 0xe0000000-0xe0ffffff irq 11 at device 2.0 on pci0 +em0: port 0xd010-0xd017 mem 0xf0000000-0xf001ffff irq 10 at device 3.0 on pci0 +em0: [FILTER] +em0: Ethernet address: 08:00:27:f4:61:1f +pci0: at device 4.0 (no driver attached) +pci0: at device 5.0 (no driver attached) +ohci0: mem 0xf0804000-0xf0804fff irq 11 at device 6.0 on pci0 +ohci0: [GIANT-LOCKED] +ohci0: [ITHREAD] +usb0: OHCI version 1.0 +usb0: on ohci0 +usb0: USB revision 1.0 +uhub0: on usb0 +uhub0: 8 ports with 8 removable, self powered +pci0: at device 7.0 (no driver attached) +ehci0: mem 0xf0805000-0xf0805fff irq 10 at device 11.0 on pci0 +ehci0: [GIANT-LOCKED] +ehci0: [ITHREAD] +usb1: EHCI version 1.0 +usb1: on ehci0 +usb1: USB revision 2.0 +uhub1: on usb1 +uhub1: 8 ports with 8 removable, self powered +battery0: on acpi0 +acpi_acad0: on acpi0 +atkbdc0: port 0x60,0x64 irq 1 on acpi0 +atkbd0: irq 1 on atkbdc0 +kbd0 at atkbd0 +atkbd0: [GIANT-LOCKED] +atkbd0: [ITHREAD] +psm0: irq 12 on atkbdc0 +psm0: [GIANT-LOCKED] +psm0: [ITHREAD] +psm0: model IntelliMouse Explorer, device ID 4 +pmtimer0 on isa0 +orm0: at iomem 0xc0000-0xc8fff,0xe2000-0xe2fff pnpid ORM0000 on isa0 +ppc0: parallel port not found. +sc0: at flags 0x100 on isa0 +sc0: VGA <16 virtual consoles, flags=0x300> +sio0: configured irq 4 not in bitmap of probed irqs 0 +sio0: port may not be enabled +sio0: configured irq 4 not in bitmap of probed irqs 0 +sio0: port may not be enabled +sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 +sio0: type 8250 or not responding +sio0: [FILTER] +sio1: configured irq 3 not in bitmap of probed irqs 0 +sio1: port may not be enabled +vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 +Timecounter "TSC" frequency 1338937165 Hz quality 800 +Timecounters tick every 1.000 msec +ad0: 20480MB at ata0-master UDMA33 +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: CDROM at ata0-slave UDMA33 +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +acd0: timeout waiting to issue command +acd0: error issuing ATA PACKET command +Trying to mount root from ufs:/dev/ad0s1a +em0: link state changed to DOWN +em0: link state changed to UP diff --git a/t/pt-summary/samples/hpaculi-001.txt b/t/pt-summary/samples/hpaculi-001.txt new file mode 100644 index 00000000..dd1afd5c --- /dev/null +++ b/t/pt-summary/samples/hpaculi-001.txt @@ -0,0 +1,11 @@ + +Smart Array P400i in Slot 0 (Embedded) (sn: PH73MU7325 ) + + array A (SAS, Unused Space: 0 MB) + + + logicaldrive 1 (136.7 GB, RAID 1, OK) + + physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK) + physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK) + diff --git a/t/pt-summary/samples/hpaculi-002.txt b/t/pt-summary/samples/hpaculi-002.txt new file mode 100644 index 00000000..d893c0b6 --- /dev/null +++ b/t/pt-summary/samples/hpaculi-002.txt @@ -0,0 +1,354 @@ +Smart Array P410i in Slot 0 (Embedded) + Bus Interface: PCI + Slot: 0 + Serial Number: 50123456789ABCDE + Cache Serial Number: PACCQ9VY24Q4 + RAID 6 (ADG) Status: Disabled + Controller Status: OK + Chassis Slot: + Hardware Revision: Rev C + Firmware Version: 2.74 + Rebuild Priority: Medium + Expand Priority: Medium + Surface Scan Delay: 15 secs + Queue Depth: Automatic + Monitor and Performance Delay: 60 min + Elevator Sort: Enabled + Degraded Performance Optimization: Disabled + Inconsistency Repair Policy: Disabled + Wait for Cache Room: Disabled + Surface Analysis Inconsistency Notification: Disabled + Post Prompt Timeout: 0 secs + Cache Board Present: True + Cache Status: OK + Accelerator Ratio: 25% Read / 75% Write + Drive Write Cache: Disabled + Total Cache Size: 256 MB + No-Battery Write Cache: Disabled + Cache Backup Power Source: Batteries + Battery/Capacitor Count: 1 + Battery/Capacitor Status: OK + SATA NCQ Supported: True + + Array: A + Interface Type: SAS + Unused Space: 0 MB + Status: OK + + + + Logical Drive: 1 + Size: 410.1 GB + Fault Tolerance: RAID 1+0 + Heads: 255 + Sectors Per Track: 32 + Cylinders: 65535 + Stripe Size: 128 KB + Status: OK + Array Accelerator: Enabled + Unique Identifier: 600508B1001037383941424344450500 + Disk Name: /dev/cciss/c0d0 + Mount Points: /boot 101 MB + Logical Drive Label: A0050D9850123456789ABCDE8644 + Mirror Group 0: + physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK) + physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK) + physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS, 146 GB, OK) + Mirror Group 1: + physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS, 146 GB, OK) + physicaldrive 2I:1:5 (port 2I:box 1:bay 5, SAS, 146 GB, OK) + physicaldrive 2I:1:6 (port 2I:box 1:bay 6, SAS, 146 GB, OK) + + physicaldrive 1I:1:1 + Port: 1I + Box: 1 + Bay: 1 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 146 GB + Rotational Speed: 15000 + Firmware Revision: HPDD + Serial Number: 3TB150EA00009027YKMS + Model: HP EH0146FAWJB + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 1I:1:2 + Port: 1I + Box: 1 + Bay: 2 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 146 GB + Rotational Speed: 15000 + Firmware Revision: HPDD + Serial Number: 3TB14QET00009027WXL8 + Model: HP EH0146FAWJB + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 1I:1:3 + Port: 1I + Box: 1 + Bay: 3 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 146 GB + Rotational Speed: 15000 + Firmware Revision: HPDD + Serial Number: 3TB14RA100009027ZJYB + Model: HP EH0146FAWJB + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 1I:1:4 + Port: 1I + Box: 1 + Bay: 4 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 146 GB + Rotational Speed: 15000 + Firmware Revision: HPDD + Serial Number: 3TB12YKF00009027HME4 + Model: HP EH0146FAWJB + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2I:1:5 + Port: 2I + Box: 1 + Bay: 5 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 146 GB + Rotational Speed: 15000 + Firmware Revision: HPDD + Serial Number: 3TB14ZJQ00009027ZGHF + Model: HP EH0146FAWJB + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2I:1:6 + Port: 2I + Box: 1 + Bay: 6 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 146 GB + Rotational Speed: 15000 + Firmware Revision: HPDD + Serial Number: 3TB1340600009027YPU1 + Model: HP EH0146FAWJB + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + + +Smart Array P800 in Slot 1 + Bus Interface: PCI + Slot: 1 + Serial Number: PAFGF0T9SYP0D2 + Cache Serial Number: PA82B0A9SYRW9F + RAID 6 (ADG) Status: Enabled + Controller Status: OK + Chassis Slot: + Hardware Revision: Rev E + Firmware Version: 5.22 + Rebuild Priority: Medium + Expand Priority: Medium + Surface Scan Delay: 15 secs + Queue Depth: Automatic + Monitor and Performance Delay: 60 min + Elevator Sort: Enabled + Degraded Performance Optimization: Disabled + Inconsistency Repair Policy: Disabled + Post Prompt Timeout: 0 secs + Cache Board Present: True + Cache Status: OK + Accelerator Ratio: 25% Read / 75% Write + Drive Write Cache: Disabled + Total Cache Size: 512 MB + No-Battery Write Cache: Disabled + Cache Backup Power Source: Batteries + Battery/Capacitor Count: 2 + Battery/Capacitor Status: OK + SATA NCQ Supported: True + + Array: A + Interface Type: SAS + Unused Space: 0 MB + Status: OK + MultiDomain Status: OK + + + + Logical Drive: 1 + Size: 1.4 TB + Fault Tolerance: RAID 1+0 + Heads: 255 + Sectors Per Track: 32 + Cylinders: 65535 + Stripe Size: 128 KB + Status: OK + MultiDomain Status: OK + Array Accelerator: Enabled + Unique Identifier: 600508B1001054395359503044320000 + Disk Name: /dev/cciss/c1d0 + Mount Points: None + Logical Drive Label: A006EA79PAFGF0T9SYP0D2B18F + Mirror Group 0: + physicaldrive 2E:1:1 (port 2E:box 1:bay 1, SAS, 300 GB, OK) + physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SAS, 300 GB, OK) + physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SAS, 300 GB, OK) + physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SAS, 300 GB, OK) + physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SAS, 300 GB, OK) + Mirror Group 1: + physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SAS, 300 GB, OK) + physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SAS, 300 GB, OK) + physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SAS, 300 GB, OK) + physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SAS, 300 GB, OK) + physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SAS, 300 GB, OK) + + physicaldrive 2E:1:1 + Port: 2E + Box: 1 + Bay: 1 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 3SE1XVP000009039J108 + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:2 + Port: 2E + Box: 1 + Bay: 2 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 6SE02LCY00009029S3UP + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:3 + Port: 2E + Box: 1 + Bay: 3 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 3SE22NJJ00009039MCVE + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:4 + Port: 2E + Box: 1 + Bay: 4 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 6SE02HN200009029WUSC + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:5 + Port: 2E + Box: 1 + Bay: 5 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 6SE029XD00009032YXKQ + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:6 + Port: 2E + Box: 1 + Bay: 6 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 6SE02L9P00009029SZSC + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:7 + Port: 2E + Box: 1 + Bay: 7 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 3SE1YT3500009037LJS3 + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:8 + Port: 2E + Box: 1 + Bay: 8 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 3SE22SEB00009039LBR9 + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:9 + Port: 2E + Box: 1 + Bay: 9 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 6SE02NAA00009032S26R + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + physicaldrive 2E:1:10 + Port: 2E + Box: 1 + Bay: 10 + Status: OK + Drive Type: Data Drive + Interface Type: SAS + Size: 300 GB + Rotational Speed: 10000 + Firmware Revision: HPDD + Serial Number: 6SE02EQT00009032YZDJ + Model: HP EG0300FAWHV + PHY Count: 2 + PHY Transfer Rate: 3.0GBPS, Unknown + + diff --git a/t/pt-summary/samples/hpaculi-003.txt b/t/pt-summary/samples/hpaculi-003.txt new file mode 100644 index 00000000..37bfbe96 --- /dev/null +++ b/t/pt-summary/samples/hpaculi-003.txt @@ -0,0 +1,11 @@ +# hpacucli ctrl all show status + +Smart Array P410i in Slot 0 (Embedded) + Controller Status: OK + Cache Status: OK + Battery/Capacitor Status: OK + +Smart Array P800 in Slot 1 + Controller Status: OK + Cache Status: OK + Battery/Capacitor Status: OK diff --git a/t/pt-summary/samples/ip-s-link-003.txt b/t/pt-summary/samples/ip-s-link-003.txt new file mode 100644 index 00000000..691114b0 --- /dev/null +++ b/t/pt-summary/samples/ip-s-link-003.txt @@ -0,0 +1,24 @@ +1: lo: mtu 16436 qdisc noqueue state UNKNOWN + link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 + RX: bytes packets errors dropped overrun mcast + 24778168 312136 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 24778168 312136 0 0 0 0 +2: eth0: mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 + link/ether e8:9a:8f:88:b9:05 brd ff:ff:ff:ff:ff:ff + RX: bytes packets errors dropped overrun mcast + 0 0 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 0 0 0 0 0 0 +3: wlan0: mtu 1500 qdisc mq state DOWN qlen 1000 + link/ether 20:7c:8f:55:13:75 brd ff:ff:ff:ff:ff:ff + RX: bytes packets errors dropped overrun mcast + 0 0 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 0 0 0 0 0 0 +4: virbr0: mtu 1500 qdisc noqueue state DOWN + link/ether 32:1e:4e:9a:05:16 brd ff:ff:ff:ff:ff:ff + RX: bytes packets errors dropped overrun mcast + 0 0 0 0 0 0 + TX: bytes packets errors dropped carrier collsns + 0 0 0 0 0 0 diff --git a/t/pt-summary/samples/lspci-005.txt b/t/pt-summary/samples/lspci-005.txt new file mode 100644 index 00000000..f705c6f8 --- /dev/null +++ b/t/pt-summary/samples/lspci-005.txt @@ -0,0 +1,38 @@ +00:00.0 Host bridge: Intel Corporation 5520 I/O Hub to ESI Port (rev 13) +00:01.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 1 (rev 13) +00:02.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 2 (rev 13) +00:03.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 3 (rev 13) +00:07.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 7 (rev 13) +00:09.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 9 (rev 13) +00:13.0 PIC: Intel Corporation 5520/5500/X58 I/O Hub I/OxAPIC Interrupt Controller (rev 13) +00:14.0 PIC: Intel Corporation 5520/5500/X58 I/O Hub System Management Registers (rev 13) +00:14.1 PIC: Intel Corporation 5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers (rev 13) +00:14.2 PIC: Intel Corporation 5520/5500/X58 I/O Hub Control Status and RAS Registers (rev 13) +00:14.3 PIC: Intel Corporation 5520/5500/X58 I/O Hub Throttle Registers (rev 13) +00:16.0 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:16.1 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:16.2 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:16.3 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:16.4 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:16.5 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:16.6 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:16.7 System peripheral: Intel Corporation 5520/5500/X58 Chipset QuickData Technology Device (rev 13) +00:1a.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4 +00:1a.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5 +00:1a.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6 +00:1a.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2 +00:1d.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1 +00:1d.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2 +00:1d.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3 +00:1d.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1 +00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90) +00:1f.0 ISA bridge: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller +00:1f.2 SATA controller: Intel Corporation 82801JI (ICH10 Family) SATA AHCI Controller +00:1f.3 SMBus: Intel Corporation 82801JI (ICH10 Family) SMBus Controller +01:00.0 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02) +01:00.1 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02) +07:00.0 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02) +07:00.1 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02) +0d:00.0 SCSI storage controller: LSI Logic / Symbios Logic SAS1068E PCI-Express Fusion-MPT SAS (rev 04) +13:00.0 SCSI storage controller: LSI Logic / Symbios Logic SAS1068E PCI-Express Fusion-MPT SAS (rev 08) +1f:05.0 VGA compatible controller: ASPEED Technology, Inc. ASPEED Graphics Family (rev 10) diff --git a/t/pt-summary/samples/netstat-002.txt b/t/pt-summary/samples/netstat-002.txt new file mode 100644 index 00000000..c9e24536 --- /dev/null +++ b/t/pt-summary/samples/netstat-002.txt @@ -0,0 +1,1328 @@ +Active Internet connections (servers and established) +Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name +tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN 3487/nrpe +tcp 0 0 10.17.85.70:9989 0.0.0.0:* LISTEN 8394/perl +tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 6137/snmpd +tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 14469/mysqld +tcp 0 0 0.0.0.0:11212 0.0.0.0:* LISTEN 9000/memcached +tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 5719/portmap +tcp 0 0 0.0.0.0:850 0.0.0.0:* LISTEN 5756/rpc.statd +tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 8348/cupsd +tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 8747/sendmail: acce +tcp 0 0 10.17.85.70:3306 10.17.85.70:44812 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45791 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34777 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34265 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44813 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45534 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47070 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46302 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34520 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44814 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46813 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36315 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44815 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45276 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45788 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36314 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34266 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44808 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45275 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36317 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36103 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35335 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34269 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44809 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45530 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35334 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44810 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45273 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34271 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34783 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44811 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46808 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36100 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35844 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44804 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45527 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34769 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35793 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44805 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46806 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34256 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36362 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36106 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44806 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45269 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45525 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47061 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34515 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36361 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44807 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45012 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45268 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34770 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36104 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44800 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47059 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46291 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45779 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35855 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36309 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44801 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45010 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34516 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36110 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44802 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46801 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44803 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46032 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34262 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44828 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44829 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45006 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35272 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35016 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35858 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34248 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45261 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46541 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44830 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45005 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35857 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:54787 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45260 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44831 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35786 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35530 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36112 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46539 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45515 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44824 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36045 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34765 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47050 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46538 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46026 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45770 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44825 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35532 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45257 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44826 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45001 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35279 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35535 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34767 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44827 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41991 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46791 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46279 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44820 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35265 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36033 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:59963 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.17.85.70:44821 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34752 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45509 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47301 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44822 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34499 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35011 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35523 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45252 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44823 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47043 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45763 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47299 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44816 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:44995 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35871 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47042 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46530 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44817 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36036 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46785 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45505 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46017 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47297 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44818 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35869 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36295 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45248 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44819 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34758 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35270 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35612 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35577 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36131 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34553 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44844 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45055 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45311 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47103 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36088 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34808 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44845 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47102 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36347 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36129 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34299 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34811 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44846 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45053 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45565 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:52737 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35834 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35578 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36346 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:36128 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44847 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:44796 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.17.85.90:41779 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46076 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46844 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35325 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44840 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45051 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46843 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35878 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35836 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35580 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34812 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34300 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44841 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46842 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35583 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34815 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44842 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35326 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44843 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47096 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36139 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44836 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45047 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45559 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46839 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47095 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35824 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36394 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:42041 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44837 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45814 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47094 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36393 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44838 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46325 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34290 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35624 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36136 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44839 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45300 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36085 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35375 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44832 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:52495 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.17.85.70:44833 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44834 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46577 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46833 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:52493 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:35628 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35372 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44835 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47088 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35817 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34281 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47343 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45551 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47342 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45550 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:52496 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35819 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45293 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45805 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45037 TIME_WAIT - +tcp 0 0 10.17.85.70:54446 10.17.85.74:3306 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.17.85.104:52497 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:47340 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46316 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45036 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36077 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36333 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34029 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34285 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46827 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47083 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45291 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36076 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34284 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45802 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36335 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45545 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34286 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34030 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:58664 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34785 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47079 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34272 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36154 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45798 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46566 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46310 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41769 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34275 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45285 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46309 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46565 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46821 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41770 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34274 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36408 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35813 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35647 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46051 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.70:44848 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36158 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35812 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35815 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35645 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45281 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45793 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.74:60991 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:36326 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36156 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35993 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35907 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41810 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47261 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45725 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35905 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36417 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46492 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35994 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34202 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46235 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35485 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34461 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41813 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47002 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45466 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36422 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34972 TIME_WAIT - +tcp 0 0 10.17.85.70:44811 10.17.85.70:3306 TIME_WAIT - +tcp 0 0 10.17.85.70:44825 10.17.85.70:3306 TIME_WAIT - +tcp 0 0 10.17.85.70:44824 10.17.85.70:3306 TIME_WAIT - +tcp 0 0 10.17.85.70:44817 10.17.85.70:3306 TIME_WAIT - +tcp 0 0 10.17.85.70:44816 10.17.85.70:3306 TIME_WAIT - +tcp 0 0 10.17.85.70:44820 10.17.85.70:3306 TIME_WAIT - +tcp 0 0 10.17.85.70:44822 10.17.85.70:3306 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46233 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45465 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34463 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46232 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34974 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35396 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46231 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36171 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45462 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34448 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35658 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35216 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46741 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46997 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34707 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35401 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35986 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46483 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45715 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45971 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34197 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36431 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36175 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34452 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35662 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35406 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:42078 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47249 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36429 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35735 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36172 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47247 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45711 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45455 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35721 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35667 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36233 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45710 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46478 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35666 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45709 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46733 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35467 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36177 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36433 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47244 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46220 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:55363 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35725 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35724 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34956 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34700 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46729 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36181 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35470 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35412 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45191 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46983 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35931 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36187 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46214 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35456 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46725 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36441 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45444 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46468 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35202 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35928 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36440 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35423 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35205 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46210 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45698 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45442 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34948 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:57421 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45441 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45953 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41806 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36231 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36189 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34951 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45952 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36444 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34950 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35769 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34489 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45247 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35768 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34488 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35515 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35771 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36449 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41842 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45245 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47037 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35514 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35424 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:42099 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45244 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36285 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36199 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35687 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34493 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34237 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34236 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:44986 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:42101 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46010 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36197 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35775 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47289 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46265 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46009 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36286 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45240 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34481 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34993 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36459 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36017 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45239 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36016 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35946 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34995 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45749 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36274 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41851 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46771 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47027 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35764 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35694 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:44978 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46258 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34743 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:42110 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45233 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36204 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35766 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35510 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45744 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35497 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35955 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45742 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46510 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:54113 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34219 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47277 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45741 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46253 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34730 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46508 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41827 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45227 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41828 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45226 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34479 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45225 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35956 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35758 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35700 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34478 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47272 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46248 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45480 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45992 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45736 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36001 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34208 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47014 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:42089 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34467 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35491 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35449 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36003 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45989 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46500 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36261 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36223 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35711 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34981 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47011 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46243 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36478 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36004 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34471 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35965 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35709 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46497 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45985 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36006 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36476 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47264 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41839 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46687 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34905 TIME_WAIT - +tcp 0 1194 10.17.146.20:3306 10.36.34.68:36441 ESTABLISHED - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35929 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45406 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35714 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35416 TIME_WAIT - +tcp 0 717 10.17.146.20:3306 10.36.34.68:36440 ESTABLISHED - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34907 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35163 TIME_WAIT - +tcp 0 165 10.17.146.20:3306 10.36.34.68:36442 ESTABLISHED - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36189 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34141 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46426 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46170 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35676 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35679 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46168 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45912 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34910 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34654 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45143 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46167 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34897 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45654 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36176 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35920 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41882 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46421 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35155 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36233 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45908 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45652 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46932 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36232 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35922 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35976 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45395 TIME_WAIT - +tcp 0 11 10.17.146.20:3306 10.36.34.68:36437 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:36495 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36239 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35727 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35157 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45906 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36494 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35214 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:43166 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45649 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35981 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36183 TIME_WAIT - +tcp 0 1209 10.17.146.20:3306 10.36.34.68:36439 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46928 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46672 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36182 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47183 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35145 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36424 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36242 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34120 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45133 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34635 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36170 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46667 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35405 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34637 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46666 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45130 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34892 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45641 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36175 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35663 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34383 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45640 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35150 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:58298 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34625 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35649 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34881 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35905 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36251 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:58299 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34368 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35738 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35482 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36416 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45893 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47173 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35481 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35907 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:58297 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45635 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45123 TIME_WAIT - +tcp 0 1984 10.17.85.70:3306 10.17.85.90:42124 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34117 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36421 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36165 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36255 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36510 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:36164 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45633 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36509 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:36423 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35741 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34630 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36166 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36003 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34681 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35746 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34680 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34424 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45182 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35233 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45693 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46973 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:36000 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34682 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45180 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45692 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36221 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35709 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45691 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36518 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35452 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34940 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46458 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36517 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34687 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46713 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45945 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:49285 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:36004 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36516 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:39281 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45175 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34672 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35184 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36522 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:39280 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45174 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46454 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34675 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36521 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46197 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46965 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:39282 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.17.85.90:41915 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35957 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46195 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45426 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34167 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35245 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46449 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36524 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35702 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35756 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35500 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46704 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.72:38834 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:36531 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45935 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45423 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46959 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46958 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35435 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36273 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36529 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34155 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46445 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41890 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35178 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36272 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35946 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47212 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41891 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36535 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35949 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35767 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35692 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35436 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35510 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:48037 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45674 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:39279 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35951 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34415 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47209 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45417 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45673 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36532 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34657 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35259 TIME_WAIT - +tcp 0 11 10.17.146.20:3306 10.14.82.196:36539 ESTABLISHED - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41896 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35514 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36538 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:44134 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35427 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36537 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35682 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36024 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34405 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34661 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35941 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35429 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46435 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:58797 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34660 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36196 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36286 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35940 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35172 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46946 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47202 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46689 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45665 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36198 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35686 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47135 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45855 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46879 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36377 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36035 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:43473 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:47134 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45598 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34840 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45597 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47132 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46620 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34077 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45082 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36294 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35868 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36038 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:57557 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.17.85.104:52455 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46873 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:40918 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46360 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35870 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:52453 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46871 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35857 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34064 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36368 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34579 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35785 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36297 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:52456 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:36040 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:52457 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45075 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34581 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34069 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.14.82.196:35791 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35093 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35348 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35278 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46097 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46609 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35789 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34070 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:38665 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:36361 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36051 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47118 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46862 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36104 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45837 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46605 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36363 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45068 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35280 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47115 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46091 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41924 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36365 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35543 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35597 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35085 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35287 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45322 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:38668 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:36364 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35343 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35854 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46855 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46343 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36353 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45574 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46598 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41929 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36352 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45061 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45317 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34307 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35289 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46852 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35330 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46339 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45059 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46850 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45314 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34052 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36100 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35844 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35588 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34055 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34567 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46080 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36358 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35078 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34822 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35804 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35641 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36409 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36153 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34617 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45887 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45119 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35384 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36152 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46910 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46398 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35297 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36411 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35296 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34362 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36327 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35815 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34877 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36412 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36156 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35558 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35302 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34620 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41973 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45114 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35903 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36069 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:46582 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46905 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45113 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45881 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36158 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45368 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34097 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41976 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45623 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46647 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36074 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45878 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35305 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45621 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34866 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35378 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46643 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45107 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35380 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46642 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34359 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34615 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.90:41982 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45873 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:39378 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:45615 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45871 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35368 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35112 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36136 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36081 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36395 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34347 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45101 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45869 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46125 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34858 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36336 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35882 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36080 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47148 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.17.85.104:39382 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:47147 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.66:46891 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46379 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36140 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35372 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35116 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47146 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45098 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:39380 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35887 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34863 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35119 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35829 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34095 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.17.85.104:39381 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35886 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34862 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35572 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47144 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46888 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34592 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35616 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35322 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45606 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45350 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:39717 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:35619 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36131 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46885 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:39716 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.36.34.68:34338 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45348 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45604 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46884 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:47140 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35839 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45091 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:35838 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.14.82.196:36093 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:36391 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35367 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:46881 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45857 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:34854 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.68:35622 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.36.34.66:45344 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46472 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:40858 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46988 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46977 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46465 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35727 TIME_WAIT - +tcp 0 165 10.17.146.20:3306 10.17.85.86:48256 ESTABLISHED - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35725 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48002 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46982 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47494 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35720 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60567 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48024 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45979 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35733 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46494 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45982 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46480 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47504 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47253 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35739 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46484 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46742 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47766 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60583 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35751 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46504 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47275 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46507 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44219 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47021 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:43709 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:48044 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44223 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46510 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60587 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48037 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47269 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44213 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47271 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60584 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:54410 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:48056 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47544 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46011 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47035 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46010 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56494 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47805 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46268 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47551 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46782 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46001 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47537 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46768 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46512 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:59314 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46002 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46004 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60601 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47287 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:48055 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46006 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46024 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48074 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46026 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46282 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35780 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47565 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47564 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46796 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46284 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:54749 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46287 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48078 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35791 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47299 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44243 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46786 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46533 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:59127 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47044 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48068 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60618 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:51401 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44247 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47814 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47832 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35798 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35797 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47836 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46812 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:39918 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44224 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60639 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47824 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44225 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48082 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:34533 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47851 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48107 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46059 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46826 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:54267 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:60388 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:35811 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44284 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46829 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44286 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.92:48356 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46049 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46817 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35566 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44273 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48099 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46050 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46306 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60652 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46565 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56567 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47335 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47590 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48102 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:36840 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47097 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:37609 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47096 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46589 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:60652 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44269 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47089 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46064 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60670 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46323 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46835 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60669 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47602 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56289 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46069 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60411 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47095 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46582 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35591 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46344 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47371 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48139 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46603 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35845 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46093 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56604 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47631 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48142 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46094 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56338 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48129 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:35599 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46336 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47872 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:54546 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46339 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46595 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35853 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47874 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47364 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44054 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:35592 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60439 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47129 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35863 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46616 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35606 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47899 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47642 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48157 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46621 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47900 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47132 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45852 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35601 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47134 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47633 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44288 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60702 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47632 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:60445 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46355 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47635 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47891 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35613 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60699 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46613 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47637 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35867 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35611 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60698 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60441 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44294 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46358 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:49705 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:60455 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60711 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44344 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45865 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46377 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60710 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44345 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45864 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46632 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47403 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44347 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47146 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47914 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35874 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47151 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46639 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:32816 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:45857 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46625 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47648 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47136 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35629 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44338 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45859 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46883 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47906 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:54580 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:60715 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35626 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46884 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48164 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47654 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60471 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44328 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35638 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47672 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45880 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60725 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:35893 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46139 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60468 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35892 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47674 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60467 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47677 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60466 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46908 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47935 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:34607 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46910 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35903 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60478 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47152 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46899 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44322 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46898 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48181 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48180 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47924 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47156 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56612 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45879 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48183 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44326 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35640 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44327 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:54616 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.100:41850 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47432 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60486 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56667 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41848 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47434 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60484 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47693 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35906 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:40318 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.200:56671 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46927 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41852 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46414 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46158 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35904 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60480 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41843 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46913 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47936 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48192 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41841 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47171 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:58962 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46661 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41846 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47684 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41845 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46151 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46407 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:34676 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47961 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45913 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46425 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41835 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.100:34666 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47195 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48219 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46427 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:43082 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.100:34665 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47194 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41832 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46941 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46173 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41839 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46172 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:41838 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47455 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46943 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:38765 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46686 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46161 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:48960 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:48209 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35679 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:44353 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56384 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46418 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47442 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:34656 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46165 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47957 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:34663 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.85.70:3306 10.14.82.202:44357 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47959 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:34661 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47958 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48233 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.100:54362 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46699 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:40571 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47978 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48234 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:45930 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:54360 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46957 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60514 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:54355 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:48224 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56435 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47715 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.100:54352 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46949 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56438 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35689 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47974 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60520 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35703 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:53864 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:48248 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:45944 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:60534 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:47739 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46459 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48253 ESTABLISHED - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46973 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45948 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48255 ESTABLISHED - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48254 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.200:56429 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:58976 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:47216 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46194 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46706 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46453 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:45941 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:48245 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:60539 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.88:60538 ESTABLISHED 14469/mysqld +tcp 0 0 10.17.146.20:3306 10.17.85.86:46711 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.88:35704 TIME_WAIT - +tcp 0 0 10.17.146.20:3306 10.17.85.86:46198 TIME_WAIT - +tcp 0 0 10.17.85.70:3306 10.14.82.202:45671 ESTABLISHED 14469/mysqld +tcp 0 0 :::34570 :::* LISTEN 9064/java +tcp 0 0 :::34571 :::* LISTEN 9064/java +tcp 0 0 :::34572 :::* LISTEN 9064/java +tcp 0 0 :::34573 :::* LISTEN 9064/java +tcp 0 0 :::80 :::* LISTEN 8789/httpd +tcp 0 0 :::22 :::* LISTEN 8332/sshd +tcp 0 0 :::443 :::* LISTEN 8789/httpd +tcp 0 62448 ::ffff:208.43.215.4:22 ::ffff:74.86.244.122:39224 ESTABLISHED 16736/0 diff --git a/t/pt-summary/samples/proc_cpuinfo001.txt b/t/pt-summary/samples/proc_cpuinfo001.txt new file mode 100644 index 00000000..6fe57219 --- /dev/null +++ b/t/pt-summary/samples/proc_cpuinfo001.txt @@ -0,0 +1,57 @@ +processor : 0 +vendor_id : GenuineIntel +cpu family : 6 +model : 23 +model name : Genuine Intel(R) CPU U7300 @ 1.30GHz +stepping : 10 +cpu MHz : 1300.000 +cache size : 3072 KB +physical id : 0 +siblings : 2 +core id : 0 +cpu cores : 2 +apicid : 0 +initial apicid : 0 +fdiv_bug : no +hlt_bug : no +f00f_bug : no +coma_bug : no +fpu : yes +fpu_exception : yes +cpuid level : 13 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority +bogomips : 2678.10 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: + +processor : 1 +vendor_id : GenuineIntel +cpu family : 6 +model : 23 +model name : Genuine Intel(R) CPU U7300 @ 1.30GHz +stepping : 10 +cpu MHz : 1300.000 +cache size : 3072 KB +physical id : 0 +siblings : 2 +core id : 1 +cpu cores : 2 +apicid : 1 +initial apicid : 1 +fdiv_bug : no +hlt_bug : no +f00f_bug : no +coma_bug : no +fpu : yes +fpu_exception : yes +cpuid level : 13 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority +bogomips : 2677.92 +clflush size : 64 +cache_alignment : 64 +address sizes : 36 bits physical, 48 bits virtual +power management: diff --git a/t/pt-summary/samples/proc_cpuinfo001.txt.unq b/t/pt-summary/samples/proc_cpuinfo001.txt.unq new file mode 100644 index 00000000..14eefe28 --- /dev/null +++ b/t/pt-summary/samples/proc_cpuinfo001.txt.unq @@ -0,0 +1 @@ + 2 3072 KB diff --git a/t/pt-summary/samples/proc_cpuinfo002.txt b/t/pt-summary/samples/proc_cpuinfo002.txt new file mode 100644 index 00000000..a2616e08 --- /dev/null +++ b/t/pt-summary/samples/proc_cpuinfo002.txt @@ -0,0 +1,57 @@ +processor : 0 +vendor_id : GenuineIntel +cpu family : 6 +model : 28 +model name : Intel(R) Atom(TM) CPU N455 @ 1.66GHz +stepping : 10 +cpu MHz : 1000.000 +cache size : 512 KB +physical id : 0 +siblings : 2 +core id : 0 +cpu cores : 1 +apicid : 0 +initial apicid : 0 +fdiv_bug : no +hlt_bug : no +f00f_bug : no +coma_bug : no +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm movbe lahf_lm dts +bogomips : 3324.80 +clflush size : 64 +cache_alignment : 64 +address sizes : 32 bits physical, 48 bits virtual +power management: + +processor : 1 +vendor_id : GenuineIntel +cpu family : 6 +model : 28 +model name : Intel(R) Atom(TM) CPU N455 @ 1.66GHz +stepping : 10 +cpu MHz : 1000.000 +cache size : 512 KB +physical id : 0 +siblings : 2 +core id : 0 +cpu cores : 1 +apicid : 1 +initial apicid : 1 +fdiv_bug : no +hlt_bug : no +f00f_bug : no +coma_bug : no +fpu : yes +fpu_exception : yes +cpuid level : 10 +wp : yes +flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm movbe lahf_lm dts +bogomips : 3325.00 +clflush size : 64 +cache_alignment : 64 +address sizes : 32 bits physical, 48 bits virtual +power management: diff --git a/t/pt-summary/samples/proc_cpuinfo002.txt.unq b/t/pt-summary/samples/proc_cpuinfo002.txt.unq new file mode 100644 index 00000000..4e2ee8f7 --- /dev/null +++ b/t/pt-summary/samples/proc_cpuinfo002.txt.unq @@ -0,0 +1 @@ + 2 512 KB diff --git a/util/test-bash-functions b/util/test-bash-functions index 33840762..533265fd 100755 --- a/util/test-bash-functions +++ b/util/test-bash-functions @@ -136,6 +136,16 @@ skip() { fi } +# TODO unperlify +like() { + local got="$1" + local regex="$2" + local test_name=${3:-""} + test_command="$got =~ m<$regex>" + perl -e 'exit(scalar($ARGV[0] =~ m<^$ARGV[1]>msi ? 0 : 1))' "$got" "$regex" + result $? "$test_name" +} + no_diff() { local got=$1 local expected=$2