mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
dbginfo.sh: add ethtool output
This patch adds ethtool commands for network interfaces. Especially the offload settings are important. Signed-off-by: Ursula Braun <ubraun@linux.ibm.com> Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
committed by
Jan Höppner
parent
36292cb166
commit
e6a3b18104
+46
-10
@@ -173,6 +173,9 @@ readonly OUTPUT_FILE_LSOF="${WORKPATH}open_files.out"
|
||||
# File that includes content of OSA OAT
|
||||
readonly OUTPUT_FILE_OSAOAT="${WORKPATH}osa_oat"
|
||||
|
||||
# File that includes content of Ethtool commands
|
||||
readonly OUTPUT_FILE_ETHTOOL="${WORKPATH}ethtool.out"
|
||||
|
||||
# File that includes the output of journalctl
|
||||
readonly OUTPUT_FILE_JOURNALCTL="${WORKPATH}journalctl.out"
|
||||
|
||||
@@ -192,7 +195,7 @@ readonly OUTPUT_FILE_NVME="${WORKPATH}nvme.out"
|
||||
readonly MOUNT_POINT_DEBUGFS="/sys/kernel/debug"
|
||||
|
||||
# The amount of steps running the whole collections
|
||||
readonly COLLECTION_COUNT=12
|
||||
readonly COLLECTION_COUNT=13
|
||||
|
||||
# The kernel version (e.g. '2' from 2.6.32 or '3' from 3.2.1)
|
||||
readonly KERNEL_VERSION=$(uname -r 2>/dev/null | cut -d'.' -f1)
|
||||
@@ -752,6 +755,37 @@ collect_osaoat() {
|
||||
pr_log_stdout " "
|
||||
}
|
||||
|
||||
########################################
|
||||
collect_ethtool() {
|
||||
local network_devices
|
||||
local network_device
|
||||
|
||||
network_devices=$(ls /sys/class/net 2>/dev/null)
|
||||
if which ethtool >/dev/null 2>&1; then
|
||||
if test -n "${network_devices}"; then
|
||||
pr_syslog_stdout "8 of ${COLLECTION_COUNT}: Collecting ethtool output"
|
||||
for network_device in ${network_devices}; do
|
||||
call_run_command "ethtool ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -k ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -a ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -c ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -g ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -i ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -l ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -P ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -S ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
call_run_command "ethtool -T ${network_device}" "${OUTPUT_FILE_ETHTOOL}"
|
||||
done
|
||||
else
|
||||
pr_syslog_stdout "8 of ${COLLECTION_COUNT}: Collecting ethtool output skipped - no devices"
|
||||
fi
|
||||
else
|
||||
pr_syslog_stdout "8 of ${COLLECTION_COUNT}: Collecting ethtool output skipped - not available"
|
||||
fi
|
||||
|
||||
pr_log_stdout " "
|
||||
}
|
||||
|
||||
########################################
|
||||
# OpenVSwitch
|
||||
collect_ovs() {
|
||||
@@ -768,7 +802,7 @@ collect_ovs() {
|
||||
:ovsdb-client dump\
|
||||
"
|
||||
if test -n "${br_list}"; then
|
||||
pr_syslog_stdout "8 of ${COLLECTION_COUNT}: Collecting OpenVSwitch output"
|
||||
pr_syslog_stdout "9 of ${COLLECTION_COUNT}: Collecting OpenVSwitch output"
|
||||
IFS=:
|
||||
for ovscmd in ${ovscmds}; do
|
||||
IFS=${ifs_orig} call_run_command "${ovscmd}" "${OUTPUT_FILE_OVS}.out"
|
||||
@@ -787,7 +821,7 @@ collect_ovs() {
|
||||
IFS="${ifs_orig}"
|
||||
done
|
||||
else
|
||||
pr_syslog_stdout "8 of ${COLLECTION_COUNT}: Collecting OpenVSwitch output skipped"
|
||||
pr_syslog_stdout "9 of ${COLLECTION_COUNT}: Collecting OpenVSwitch output skipped"
|
||||
fi
|
||||
|
||||
pr_log_stdout " "
|
||||
@@ -800,12 +834,12 @@ collect_domain_xml() {
|
||||
|
||||
domain_list=$(virsh list --all --name)
|
||||
if test -n "${domain_list}"; then
|
||||
pr_syslog_stdout "9 of ${COLLECTION_COUNT}: Collecting domain xml files"
|
||||
pr_syslog_stdout "10 of ${COLLECTION_COUNT}: Collecting domain xml files"
|
||||
for domain in ${domain_list}; do
|
||||
call_run_command "virsh dumpxml ${domain}" "${OUTPUT_FILE_XML}_${domain}.xml"
|
||||
done
|
||||
else
|
||||
pr_syslog_stdout "9 of ${COLLECTION_COUNT}: Collecting domain xml files skipped"
|
||||
pr_syslog_stdout "10 of ${COLLECTION_COUNT}: Collecting domain xml files skipped"
|
||||
fi
|
||||
|
||||
pr_log_stdout " "
|
||||
@@ -819,23 +853,23 @@ collect_docker() {
|
||||
# call docker inspect for all containers
|
||||
item_list=$(docker ps -qa)
|
||||
if test -n "${item_list}"; then
|
||||
pr_syslog_stdout "10a of ${COLLECTION_COUNT}: Collecting docker container output"
|
||||
pr_syslog_stdout "11a of ${COLLECTION_COUNT}: Collecting docker container output"
|
||||
for item in ${item_list}; do
|
||||
call_run_command "docker inspect ${item}" "${OUTPUT_FILE_DOCKER}"
|
||||
done
|
||||
else
|
||||
pr_syslog_stdout "10a of ${COLLECTION_COUNT}: Collecting docker container output skipped"
|
||||
pr_syslog_stdout "11a of ${COLLECTION_COUNT}: Collecting docker container output skipped"
|
||||
fi
|
||||
|
||||
# call docker inspect for all networks
|
||||
item_list=$(docker network ls -q)
|
||||
if test -n "${item_list}"; then
|
||||
pr_syslog_stdout "10b of ${COLLECTION_COUNT}: Collecting docker network output"
|
||||
pr_syslog_stdout "11b of ${COLLECTION_COUNT}: Collecting docker network output"
|
||||
for item in ${item_list}; do
|
||||
call_run_command "docker network inspect ${item}" "${OUTPUT_FILE_DOCKER}"
|
||||
done
|
||||
else
|
||||
pr_syslog_stdout "10b of ${COLLECTION_COUNT}: Collecting docker network output skipped"
|
||||
pr_syslog_stdout "11b of ${COLLECTION_COUNT}: Collecting docker network output skipped"
|
||||
fi
|
||||
|
||||
pr_log_stdout " "
|
||||
@@ -845,7 +879,7 @@ collect_docker() {
|
||||
collect_nvme() {
|
||||
local NVME
|
||||
|
||||
pr_syslog_stdout "11 of ${COLLECTION_COUNT}: Collecting nvme output"
|
||||
pr_syslog_stdout "12 of ${COLLECTION_COUNT}: Collecting nvme output"
|
||||
call_run_command "nvme list" "${OUTPUT_FILE_NVME}"
|
||||
|
||||
for NVME in /dev/nvme[0-9]*; do
|
||||
@@ -1152,6 +1186,8 @@ collect_configfiles
|
||||
|
||||
collect_osaoat
|
||||
|
||||
collect_ethtool
|
||||
|
||||
collect_ovs
|
||||
|
||||
collect_domain_xml
|
||||
|
||||
Reference in New Issue
Block a user