Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package supportutils for openSUSE:Factory checked in at 2021-03-16 15:43:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/supportutils (Old) and /work/SRC/openSUSE:Factory/.supportutils.new.2401 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "supportutils" Tue Mar 16 15:43:23 2021 rev:20 rq:878390 version:3.1.14 Changes: -------- --- /work/SRC/openSUSE:Factory/supportutils/supportutils.changes 2021-03-08 15:15:37.817865185 +0100 +++ /work/SRC/openSUSE:Factory/.supportutils.new.2401/supportutils.changes 2021-03-16 15:44:28.225043524 +0100 @@ -1,0 +2,7 @@ +Thu Mar 11 18:12:31 UTC 2021 - [email protected] + +- Fixed mismatched taint flags (bsc#1178491) +- Removed redundant fdisk code that can cause timeout issues (bsc#1181679) +- Supportconfig processes -f without hanging (bsc#1182904) + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ supportutils-3.1.14.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/supportutils-3.1.14/bin/supportconfig new/supportutils-3.1.14/bin/supportconfig --- old/supportutils-3.1.14/bin/supportconfig 2021-03-02 22:40:17.752003805 +0100 +++ new/supportutils-3.1.14/bin/supportconfig 2021-03-11 19:11:06.227835618 +0100 @@ -1,7 +1,7 @@ #!/bin/bash -SVER='3.1.11-1' -SDATE='2021 02 16' +SVER='3.1.11-4' +SDATE='2021 03 11' ############################################################################## # supportconfig - Gathers system troubleshooting information for SUSE Support @@ -33,7 +33,7 @@ # along with this program; if not, see <http://www.gnu.org/licenses/>. # # Authors/Contributors: -# Jason Record ([email protected]) +# Jason Record <[email protected]> # ############################################################################## @@ -91,7 +91,7 @@ echo " -b Screen buffer mode" echo " -c Disables curl checks to SUSE update servers" echo " -d Exclude detailed disk info and scans" - echo " -f From directory. Don't collect report files, just use files in that" + echo " -f From directory. Don't collect report files, just use the directory or files in that" echo " directory." echo " -g Use gzip instead of the default xz compression" echo " -i <keyword list>" @@ -244,12 +244,13 @@ log_cmd $OF 'free -k' timed_log_cmd $OF 'df -h' || IO_DELAYS=1 (( $IO_DELAYS )) || log_cmd $OF 'df -i' - conf_files $OF '/proc/sys/kernel/tainted' - TAINT=$(cat /proc/sys/kernel/tainted) + TAINT_SRC='/proc/sys/kernel/tainted' + conf_files $OF $TAINT_SRC + TAINT=$(cat $TAINT_SRC) TAINTED=0 - if [ ${#TAINT} -gt 1 ]; then + if (( ${#TAINT} > 1 )); then TAINTED=1 - elif [ ${TAINT} -gt 0 ]; then + elif (( ${TAINT} > 0 )); then TAINTED=1 fi if (( TAINTED )); then @@ -257,57 +258,69 @@ # Refer to /usr/src/linux/include/linux/kernel.h and /usr/src/linux/kernel/panic.c (print_tainted function) TAINT_STRING="" - # common to all versions - test $((TAINT & 1)) -ne 0 && TAINT_STRING="${TAINT_STRING}P" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 2)) -ne 0 && TAINT_STRING="${TAINT_STRING}F" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 4)) -ne 0 && TAINT_STRING="${TAINT_STRING}S" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 8)) -ne 0 && TAINT_STRING="${TAINT_STRING}R" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 16)) -ne 0 && TAINT_STRING="${TAINT_STRING}M" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 32)) -ne 0 && TAINT_STRING="${TAINT_STRING}B" || TAINT_STRING="${TAINT_STRING} " + # common to all versions SLES15 and higher + test $((TAINT & 1)) -ne 0 && TAINT_STRING="${TAINT_STRING}P" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 2)) -ne 0 && TAINT_STRING="${TAINT_STRING}F" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 4)) -ne 0 && TAINT_STRING="${TAINT_STRING}S" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 8)) -ne 0 && TAINT_STRING="${TAINT_STRING}R" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 16)) -ne 0 && TAINT_STRING="${TAINT_STRING}M" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 32)) -ne 0 && TAINT_STRING="${TAINT_STRING}B" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 64)) -ne 0 && TAINT_STRING="${TAINT_STRING}U" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 128)) -ne 0 && TAINT_STRING="${TAINT_STRING}D" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 256)) -ne 0 && TAINT_STRING="${TAINT_STRING}A" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 512)) -ne 0 && TAINT_STRING="${TAINT_STRING}W" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 1024)) -ne 0 && TAINT_STRING="${TAINT_STRING}C" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 2048)) -ne 0 && TAINT_STRING="${TAINT_STRING}I" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 4096)) -ne 0 && TAINT_STRING="${TAINT_STRING}O" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 8192)) -ne 0 && TAINT_STRING="${TAINT_STRING}E" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 16384)) -ne 0 && TAINT_STRING="${TAINT_STRING}L" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 32768)) -ne 0 && TAINT_STRING="${TAINT_STRING}K" || TAINT_STRING="${TAINT_STRING} " case $SLES_VER in - 15*|999) - test $((TAINT & 64)) -ne 0 && TAINT_STRING="${TAINT_STRING}U" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 128)) -ne 0 && TAINT_STRING="${TAINT_STRING}D" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 256)) -ne 0 && TAINT_STRING="${TAINT_STRING}A" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 512)) -ne 0 && TAINT_STRING="${TAINT_STRING}W" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 1024)) -ne 0 && TAINT_STRING="${TAINT_STRING}C" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 2048)) -ne 0 && TAINT_STRING="${TAINT_STRING}I" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 4096)) -ne 0 && TAINT_STRING="${TAINT_STRING}O" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 8192)) -ne 0 && TAINT_STRING="${TAINT_STRING}E" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 16384)) -ne 0 && TAINT_STRING="${TAINT_STRING}L" || TAINT_STRING="${TAINT_STRING} " - test $((TAINT & 32768)) -ne 0 && TAINT_STRING="${TAINT_STRING}K" || TAINT_STRING="${TAINT_STRING} " + 150|151) test $((TAINT & 65536)) -ne 0 && TAINT_STRING="${TAINT_STRING}H" || TAINT_STRING="${TAINT_STRING} " test $((TAINT & 1073741824)) -ne 0 && TAINT_STRING="${TAINT_STRING}N" || TAINT_STRING="${TAINT_STRING} " test $((TAINT & 2147483648)) -ne 0 && TAINT_STRING="${TAINT_STRING}X" || TAINT_STRING="${TAINT_STRING} " ;; + 15*|999) + test $((TAINT & 65536)) -ne 0 && TAINT_STRING="${TAINT_STRING}X" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 131072)) -ne 0 && TAINT_STRING="${TAINT_STRING}T" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 262144)) -ne 0 && TAINT_STRING="${TAINT_STRING}H" || TAINT_STRING="${TAINT_STRING} " + test $((TAINT & 2147483648)) -ne 0 && TAINT_STRING="${TAINT_STRING}N" || TAINT_STRING="${TAINT_STRING} " + ;; esac log_write $OF "Kernel Status -- Tainted: $TAINT_STRING" - # common to all versions - test $((TAINT & 1)) -ne 0 && log_write $OF " TAINT: (P) Proprietary module has been loaded" - test $((TAINT & 2)) -ne 0 && log_write $OF " TAINT: (F) Module was forcibly loaded" - test $((TAINT & 4)) -ne 0 && log_write $OF " TAINT: (S) SMP with CPUs not designed for SMP" - test $((TAINT & 8)) -ne 0 && log_write $OF " TAINT: (R) Module was forcibly unloaded" - test $((TAINT & 16)) -ne 0 && log_write $OF " TAINT: (M) Machine check exception" - test $((TAINT & 32)) -ne 0 && log_write $OF " TAINT: (B) System has hit bad_page" + # common to all versions SLES15 and higher + test $((TAINT & 1)) -ne 0 && log_write $OF " TAINT: (P) Proprietary module has been loaded" + test $((TAINT & 2)) -ne 0 && log_write $OF " TAINT: (F) Module was forcibly loaded" + test $((TAINT & 4)) -ne 0 && log_write $OF " TAINT: (S) SMP with CPUs not designed for SMP" + test $((TAINT & 8)) -ne 0 && log_write $OF " TAINT: (R) Module was forcibly unloaded" + test $((TAINT & 16)) -ne 0 && log_write $OF " TAINT: (M) Machine check exception" + test $((TAINT & 32)) -ne 0 && log_write $OF " TAINT: (B) System has hit bad_page" + test $((TAINT & 64)) -ne 0 && log_write $OF " TAINT: (U) Userspace-defined problems" + test $((TAINT & 128)) -ne 0 && log_write $OF " TAINT: (D) Kernel has oopsed before" + test $((TAINT & 256)) -ne 0 && log_write $OF " TAINT: (A) ACPI table overridden" + test $((TAINT & 512)) -ne 0 && log_write $OF " TAINT: (W) Taint on warning" + test $((TAINT & 1024)) -ne 0 && log_write $OF " TAINT: (C) Modules from drivers/staging are loaded" + test $((TAINT & 2048)) -ne 0 && log_write $OF " TAINT: (I) Working around severe firmware bug" + test $((TAINT & 4096)) -ne 0 && log_write $OF " TAINT: (O) Out-of-tree module has been loaded" + test $((TAINT & 8192)) -ne 0 && log_write $OF " TAINT: (E) Unsigned module has been loaded" + test $((TAINT & 16384)) -ne 0 && log_write $OF " TAINT: (L) A soft lockup has previously occurred" + test $((TAINT & 32768)) -ne 0 && log_write $OF " TAINT: (K) Kernel has been live patched" case $SLES_VER in - 15*|999) - test $((TAINT & 64)) -ne 0 && log_write $OF " TAINT: (U) Userspace-defined problems" - test $((TAINT & 128)) -ne 0 && log_write $OF " TAINT: (D) Kernel has oopsed before" - test $((TAINT & 256)) -ne 0 && log_write $OF " TAINT: (A) ACPI table overridden" - test $((TAINT & 512)) -ne 0 && log_write $OF " TAINT: (W) Taint on warning" - test $((TAINT & 1024)) -ne 0 && log_write $OF " TAINT: (C) Modules from drivers/staging are loaded" - test $((TAINT & 2048)) -ne 0 && log_write $OF " TAINT: (I) Working around severe firmware bug" - test $((TAINT & 4096)) -ne 0 && log_write $OF " TAINT: (O) Out-of-tree module has been loaded" - test $((TAINT & 8192)) -ne 0 && log_write $OF " TAINT: (E) Unsigned module has been loaded" - test $((TAINT & 16384)) -ne 0 && log_write $OF " TAINT: (L) A soft lockup has previously occurred" - test $((TAINT & 32768)) -ne 0 && log_write $OF " TAINT: (K) Kernel has been live patched" + 150|151) test $((TAINT & 65536)) -ne 0 && log_write $OF " TAINT: (H) System restored from unsafe hibernate snapshot image" test $((TAINT & 1073741824)) -ne 0 && log_write $OF " TAINT: (N) Unsupported modules loaded" test $((TAINT & 2147483648)) -ne 0 && log_write $OF " TAINT: (X) Modules with external support loaded" ;; + 15*|999) + test $((TAINT & 65536)) -ne 0 && log_write $OF " TAINT: (X) Modules with external support loaded" + test $((TAINT & 131072)) -ne 0 && log_write $OF " TAINT: (T) Kernel built with randstruct plugin" + test $((TAINT & 262144)) -ne 0 && log_write $OF " TAINT: (H) System restored from unsafe hibernate snapshot image" + test $((TAINT & 2147483648)) -ne 0 && log_write $OF " TAINT: (N) Unsupported modules loaded" + ;; esac log_write $OF @@ -1808,10 +1821,9 @@ printlog "Disk I/O..." test $OPTION_DISK -eq 0 && { echolog Excluded; return 1; } OF=fs-diskio.txt - local DISK_IO_DELAYS=0 addHeaderFile $OF - timed_log_cmd $OF 'fdisk -l 2>/dev/null | grep Disk' || DISK_IO_DELAYS=1 conf_files $OF /proc/partitions /etc/fstab + log_cmd $OF "lsblk -o 'NAME,KNAME,MAJ:MIN,FSTYPE,LABEL,RO,RM,MODEL,SIZE,OWNER,GROUP,MODE,ALIGNMENT,MIN-IO,OPT-IO,PHY-SEC,LOG-SEC,ROTA,SCHED,MOUNTPOINT,DISC-ALN,DISC-GRAN,DISC-MAX,DISC-ZERO'" [[ -x /usr/bin/findmnt ]] && log_cmd $OF "findmnt" log_cmd $OF "mount" conf_files $OF /proc/mounts /etc/mtab @@ -1878,7 +1890,6 @@ log_write $OF "#---------------------------------------------------#" log_cmd $OF 'lsscsi' log_cmd $OF 'lsscsi -H' - (( $DISK_IO_DELAYS )) || log_cmd $OF "lsblk -o 'NAME,KNAME,MAJ:MIN,FSTYPE,LABEL,RO,RM,MODEL,SIZE,OWNER,GROUP,MODE,ALIGNMENT,MIN-IO,OPT-IO,PHY-SEC,LOG-SEC,ROTA,SCHED,MOUNTPOINT,DISC-ALN,DISC-GRAN,DISC-MAX,DISC-ZERO'" if log_cmd $OF 'scsiinfo -l' then FILES=$(scsiinfo -l) @@ -1927,20 +1938,20 @@ [[ -x /usr/bin/findmnt ]] && log_cmd $OF "findmnt" || log_cmd $OF "mount" (( $IO_DELAYS )) || log_cmd $OF "df -h" log_cmd $OF "modinfo btrfs" - for DEVICE in $(btrfs filesystem show | awk 'NF{ print $NF }' | grep ^/) - #TODO For multi-device btrfs filesysems only use one device - do - for FILESYS in $(findmnt -S $DEVICE --types btrfs --list --output target --first-only --noheadings) - do - log_cmd $OF "btrfs filesystem usage $FILESYS" - log_cmd $OF "btrfs scrub status $FILESYS" - log_cmd $OF "btrfs balance status -v $FILESYS" - log_cmd $OF "btrfs subvolume get-default $FILESYS" - log_cmd $OF "btrfs subvolume list $FILESYS" + for DEVICE in $(btrfs filesystem show | awk 'NF{ print $NF }' | grep ^/) + #TODO For multi-device btrfs filesysems only use one device + do + for FILESYS in $(findmnt -S $DEVICE --types btrfs --list --output target --first-only --noheadings) + do + log_cmd $OF "btrfs filesystem usage $FILESYS" + log_cmd $OF "btrfs scrub status $FILESYS" + log_cmd $OF "btrfs balance status -v $FILESYS" + log_cmd $OF "btrfs subvolume get-default $FILESYS" + log_cmd $OF "btrfs subvolume list $FILESYS" log_cmd $OF "btrfs qgroup show -prce $FILESYS" log_cmd $OF "btrfs device stats $FILESYS" - done - done + done + done if rpm_verify $OF snapper; then log_cmd $OF "snapper list-configs" @@ -4185,38 +4196,56 @@ test -z "$NOTFOUND" && BASE="${BASE}_%u" #add UID if not present already fi -if [ -n "$FROM_DIRECTORY" ]; then - VAR_OPTION_LOG_DIRS=$FROM_DIRECTORY - BASE=$(ls -t $FROM_DIRECTORY | grep nts | head -n1) +if [[ -n "$FROM_DIRECTORY" ]]; then + if [[ -s ${FROM_DIRECTORY}/${BASIC_ENVF} ]]; then + VAR_OPTION_LOG_DIRS=$(dirname ${FROM_DIRECTORY} 2>/dev/null) + BASE=$(basename ${FROM_DIRECTORY} 2>/dev/null) + else + VAR_OPTION_LOG_DIRS=$FROM_DIRECTORY + TBASE=$(ls -1td ${FROM_DIRECTORY}/*/ 2>/dev/null | egrep 'scc_|nts_' | head -n1) + BASE=$(basename $TBASE 2>/dev/null) + fi fi for LOG in $VAR_OPTION_LOG_DIRS do # If a full path was not assigned, the cwd will be prepended to the LOG path VALID_LOG=$(echo $LOG | grep '^/') - if [ -z "$VALID_LOG" ]; then + if [[ -z "$VALID_LOG" ]]; then VALID_LOG=$(echo $LOG | grep '^\./') CURRENT_PATH="$(pwd)" - if [ -n "$VALID_LOG" ]; then + if [[ -n "$VALID_LOG" ]]; then LOG="${CURRENT_PATH}/${LOG:2}" else LOG="${CURRENT_PATH}/${LOG}" fi fi - # Create the paths normalize_base - [ $USE_SAVED_LOGS_ONLY -eq 0 ] && check_log_dir - LOG=${LOG}/${BASE} - if mkdir -p $LOG &>/dev/null; then - unset LOGERROR - break + # Create the paths + if (( USE_SAVED_LOGS_ONLY )); then + if [[ -n $BASE ]]; then + LOG=${LOG}/${BASE} + else + echo "ERROR: Missing or invalid supportconfig directory in -f $LOG" + LOGERROR=1 + fi else - echo "ERROR: Cannot create $LOG" - LOGERROR=1 + check_log_dir + LOG=${LOG}/${BASE} + if mkdir -p $LOG &>/dev/null; then + unset LOGERROR + break + else + echo "ERROR: Cannot create $LOG" + LOGERROR=1 + fi fi done -test $LOGERROR && { echo; exit_code 3; } +if (( $LOGERROR )); then + echo + exit_code 3 +fi export LOG if [ "$USE_SAVED_LOGS_ONLY" != "1" ]; then diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/supportutils-3.1.14/man/supportconfig.8 new/supportutils-3.1.14/man/supportconfig.8 --- old/supportutils-3.1.14/man/supportconfig.8 2021-02-16 21:15:23.213026680 +0100 +++ new/supportutils-3.1.14/man/supportconfig.8 2021-03-09 19:17:30.984547422 +0100 @@ -1,4 +1,4 @@ -.TH SUPPORTCONFIG 8 "16 Feb 2021" "supportutils" "Support Utilities Manual" +.TH SUPPORTCONFIG 8 "09 Mar 2021" "supportutils" "Support Utilities Manual" .SH NAME supportconfig - Gathers system troubleshooting information .SH SYNOPSIS @@ -133,7 +133,7 @@ Exclude detailed disk information and scans. Disks are still scanned, but this switch attempts to minimize the disk scans. .TP \fB\-f\fR \fIdirectory\fR -From directory. Don't collect report files, just use files in that directory. +From directory. Don't collect report files, just use files in that directory. This option is most often used in connection with -t <target_directory> and the YaST support module. If a regular directory is used, supportconfig looks for the most recent supportconfig archive directory and uses it. If a valid supportconfig directory is specified, it is used. .TP \fB\-g\fR Use gzip instead of the default bzip2 compression. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/supportutils-3.1.14/spec/supportutils.changes new/supportutils-3.1.14/spec/supportutils.changes --- old/supportutils-3.1.14/spec/supportutils.changes 2021-03-03 16:38:08.919469787 +0100 +++ new/supportutils-3.1.14/spec/supportutils.changes 2021-03-11 19:13:37.583641400 +0100 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Thu Mar 11 18:12:31 UTC 2021 - [email protected] + +- Fixed mismatched taint flags (bsc#1178491) +- Removed redundant fdisk code that can cause timeout issues (bsc#1181679) +- Supportconfig processes -f without hanging (bsc#1182904) + +------------------------------------------------------------------- Wed Mar 3 14:12:42 UTC 2021 - Thorsten Kukuk <[email protected]> - Remove net-tools from requires, it does not contain any tool
