Files
s390-tools/CHANGELOG.md
Steffen Maier d8c630e5f4 zfcpdbf: warn about ambiguous payload records with dup reqid & payarea
Function get_payload_records() reading from disk, blindly adds payload
record (junks) to a list in a 2-stage hierarchical hash keyed with
request ID and PAY area.

On adapter offline/online, zfcp resets the request ID to re-start with 1.
Hence it's not a unique foreign key in the lifetime of the PAY area.

The last payload record (junks) read for the same request ID and PAY area
is the one printed as named PAY field in the tool output.
This is not necessarily the chronologically last record due to PAY area
wrapping.

With this workaround, we:
* warn on reading PAY records if ambiguous entries occurred,
* print additional PAY timestamps which the user can compare
  with the actual trace record timestamps to determine if they are close
  enough to indicate a match.

We only found this by accident because we kept "short" "payload" being a
built-in part of some actual trace record types in areas HBA, SAN, SCSI.
For above cases, the full PAYload did not match the
built-in "short" "payload".

While at it, also add a comment that PAY output can also be wrong
in another case when junks of multi-part PAY records are missing due
to PAY area wrapping.

Below is an abbreviated example output with this workaround:

Loading trace records ...(this might take a while)
Warning: Ambiguous PAYload records. reqid:0000000000000037 area:san_res

...

Timestamp      : 2017-07-07-18:01:34:574827
Area           : SAN
...
Tag            : fssct_1
Request ID     : 0x0000000000000037
Destination ID : 0x00fffffc
SAN req short  : 01000000 fc020000 01720ffc 00000000
                 00000008
SAN req length : 20

Timestamp      : 2017-07-07-18:01:34:619310         ------------------+
Area           : SAN                                                  |
...                                                                   |
Tag            : fsscth2                                              |
Request ID     : 0x0000000000000037                                   |
Destination ID : 0x00fffffc                                           |
SAN resp short : 01000000 fc020000 80020000 00000000                  |
                 00671a07 00000000 c05076ff d6801850                  |
                 00671a7e 00000000 c05076ff d6801968                  |
SAN resp length: 16384                                                |
Payload time   : 2017-07-07-18:16:17:165708          <== does not match
San resp info  : 01000000 fc020000 80020000 00000000 <== wrong
                 4a49424d 20202020 20323936 34202020 <== wrong
                 20202020 20202020 20303230 30303030 <== wrong
                 30303745 43383720 20504348 49443a20 <== wrong
                 30313938 204e5049 5620556c 7049643a <== wrong
                 20303536 30303330 30202020 00000000 <== wrong
                 00000000 00000000 00000000 00000000 <== wrong
                 ...                                 <== wrong

...

Timestamp      : 2017-07-07-18:16:17:165713
Area           : SAN
...
Tag            : fsscth2
Request ID     : 0x0000000000000037             <== same reqid & pay "area"
Destination ID : 0x00fffffc
SAN resp short : 01000000 fc020000 80020000 00000000
                 4a49424d 20202020 20323936 34202020
                 20202020 20202020 20303230 30303030
SAN resp length: 273
Payload time   : 2017-07-07-18:16:17:165708          <== 2nd & last, match
                                                         close to Timestamp
San resp info  : 01000000 fc020000 80020000 00000000
                 4a49424d 20202020 20323936 34202020
                 20202020 20202020 20303230 30303030
                 30303745 43383720 20504348 49443a20
                 30313938 204e5049 5620556c 7049643a
                 20303536 30303330 30202020 00000000
                 00000000 00000000 00000000 00000000
                 ...

Signed-off-by: Steffen Maier <maier@linux.vnet.ibm.com>
Reviewed-by: Jens Remus <jremus@linux.ibm.com>
Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
2019-05-21 14:16:53 +02:00

7.5 KiB

Release history for s390-tools (MIT version)

  • v2.8.1 (xxxx-xx-xx)

For Linux kernel version: 5.xx

Changes of existing tools:

  • lszfcp: New command line option to show module parameters
  • lszfcp: Sdev attributes for scsi_disk, block, integrity, queue, iosched
  • lszfcp: Add new output marker for non-good SCSI devices (luns)
  • lszfcp: Add new output marker for non-good fc_rports
  • lszfcp: Clean up whitespace (mixed indentation, trailing)
  • lschp: Add support for specifying a CHPID

Bug Fixes:

  • lszfcp: Allow to show zfcp_units without associated SCSI device
  • lszfcp: Attribute details for: css, zfcp_port, zfcp_unit
  • lszfcp: Allow to also enumerate FCP device that have never been online
  • lszfcp: Fix error message if no zfcp-attached SCSI device found
  • lszfcp: Fix to show defunct FCP devices again
  • lszfcp: Fix to show non-good target ports again
  • lszfcp: Fix missing block & sg device output without CONFIG_SYSFS_DEPRECATED
  • lszfcp: New command line option for extended output format
  • zfcpdbf: Warn about ambiguous payload records with dup reqid & payarea
  • v2.8.0 (2019-02-15)

For Linux kernel version: 4.20

Changes of existing tools:

  • Switch to using /run directory instead of the legacy /var/run
  • zkey: Add --pbkdf pbkdf2 to generated cryptsetup luksFormat command
  • zdsfs: Add online VTOC refresh
  • pkey: Support autoloading kernel pkey module

Bug Fixes:

  • zkey: Avoid EPERM on key change if user is not owner of key file
  • cpumf/cpumf_helper: Always return list reference for --sfb-size
  • v2.7.1 (2018-12-13)

For Linux kernel version: 4.19

Changes of existing tools:

  • zkey: Enhance file read/write error handling
  • cmsfs-fuse: Write more than a single line in linefeed mode
  • zpcictl: Add warning for unsupported operations
  • zipl: Use the BLS "title" field as the IPL section name

Bug Fixes:

  • cmsfs-fuse: Fix iconv buffer aliasing
  • cmsfs-fuse: Fix memory leak in cmsfs_rename()
  • fdasd: Fix possible integer overflow
  • fdasd: Fix resource leak in fdasd_parse_conffile()
  • zdev: Fix memory leak in misc_readlink()
  • dasdinfo: Display error messages on stderr
  • zkey: Include /sbin into PATH when executing commands
  • Makefile: Fix parallel build
  • GCC8 warning fixes across the board for: cmsfs-fuse, dasdinfo, dasdview, dump2tar, fdasd, hmcdrvfs, hyptop, ip_watcher, libvmdump, libvtoc, lsqeth, lszcrypt, qethqoat, zdev, zdsfs, zgetdump, zipl, zpcictl
  • v2.7.0 (2018-10-31)

For Linux kernel version: 4.19

Add new tool:

  • zcryptctl: Add zcryptctl for multiple zcrypt node management
  • zpcictl: Add zpcictl for reporting defective PCI devices

Changes of existing tools:

  • qethqoat: Add OSA-Express7S support
  • lszcrypt: Add support for alternative zcrypt device drivers
  • zfcpdump: Add install script for zfcpdump
  • zipl: Make zipl work with XFS by using the FIEMAP mapping ioctl

Bug Fixes:

  • lstape: Fix output with SCSI lin_tape and multiple paths to same unit
  • lstape: Fix output without SCSI generic (sg)
  • lsluns: Fix to prevent error messages if there are non-zfcp SCSI devices
  • lstape: Fix to prevent error messages if there are non-zfcp SCSI devices
  • lstape: Fix description of --type and filter for channel tapes
  • lstape: Fix SCSI output description in man page
  • lstape: Fix SCSI HBA CCW device bus-ID e.g. for virtio-scsi-ccw
  • Direct --help and --version output to stdout for several tools
  • osasnmpd: Start without real OSA devices
  • v2.6.0 (2018-08-10)

For Linux kernel version: 4.18

Add new tool:

  • zkey: Add zkey-cryptsetup tool Changes of existing tools:
  • netboot: add BOOTIF support

Bug Fixes:

  • mon_procd: fix parsing of /proc//stat
  • netboot: Include compressed kernel modules in initramfs
  • netboot: Send client architecture and handle path prefix
  • v2.5.0 (2018-06-08)

For Linux kernel version: 4.17

Changes of existing tools:

  • zdev: Add support for reading firmware configuration files
  • zipl: Add BootLoaderSpec support
  • scripts: Add script to switch zipl config to a BootLoaderSpec setup

Bug Fixes:

  • lsluns: Print a message if no adapter or port exists
  • v2.4.0 (2018-05-07)

For Linux kernel version: 4.16

Changes of existing tools:

  • dbginfo: Gather nvme related data
  • zipl: Rewrite helper script in C
  • libutil: Add function util_strstrip
  • libvmcp: Introduce libvmcp
  • zipl: Extend DASD stand-alone dumpers to drop zero pages
  • zgetdump: Add verbose option
  • zgetdump: Add 'Dump file size' field for zgetdump -i output
  • cpumf: Add IBM z14 ZR1 to the CPU Measurement Facility model list
  • zkey: Add build dependency to OpenSSL (libcrypto)
  • zkey: Add keystore implementation

Bug Fixes:

  • hmcdrvfs: fix parsing of link count >= 1000
  • zgetdump: Avoid Segfault on processing dumps with memory limit
  • chreipl: correct fcp reipl sysfs write sequence
  • udev: Replace WAIT_FOR with TEST keyword
  • v2.3.0 (2018-01-30)

    For Linux kernel version: 4.15

    Changes of existing tools:

    • lscpumf: Add support for IBM z14 hardware counters
    • libdasd: Introduce libdasd and use for dasd tools
    • zipl: Always build and link without PIE

    Bug Fixes:

    • zgetdump: Fix handling of DASD multi-volume dump for partitions above 4 GB
    • zdev: Fix zdev dracut module aborting on unknown root device
  • v2.2.0 (2017-12-07)

    For Linux kernel version: 4.14

    Removed tools:

    • lsmem/chmem: Moved to util-linux >= 2.30

    Changes of existing tools:

    • lszcrypt: Add CEX6S support
    • cpuplugd/mon_tools: Improve systemctl start error handling
    • systemd: Install also the unit configuration files

    Bug Fixes:

    • build process: Fix parallel build for libutil
    • cpi: Add missing Install section to service unit
    • lsluns: Do not scan (all) if filters match nothing
    • lsluns: Enhance usage statement and man page
    • zdev: Use correct path to vmcp binary
    • ziomon: Re-add missing line in ziomon_fcpconf
    • ziomon: Fix non-zero return code in ziomon_util
    • zipl: Remove invalid dasdview command line option
  • v2.1.0 (2017-09-25)

    For Linux kernel version: 4.13

    Added new tools:

    • netboot: Scripts for building a PXE-style netboot image for KVM
    • 90-cpi.rules/cpictl: New udev rule to update CPI when KVM is used

    Changes of existing tools:

    • lsqeth/zdev: Add VNIC Characteristics support

    Bug Fixes:

    • chzcrypt: Corrected handling of insufficient permissions
    • cpacfstats: Add size setting to perf event
    • fdasd: Skip partition check with the force option
    • ttyrun: Fix deprecated BindTo usage in ttyrun-getty@.service.in
    • lszcrypt: Fix core dump caused by stack overwrite
    • lszcrypt: Fix random domain printout when no config available
    • zdev: Fix segfault with unknown qeth attribute
    • zdev: Fix IPv6 NDP proxy description
    • zdev: Fix zdev dracut module temp file location
    • zkey: Correctly detect abbreviated commands
    • zkey: Validate XTS key: ignore domain and card
    • zkey: Use octal values instead of S_IRWX* constants
    • zkey: Properly set umask to prohibit permissions to group and others
    • zkey: Add -ldl to LDLIBS (not LDFLAGS)
    • znetconf: Re-add missing line in lsznet.raw
    • Fix several gcc 7 warnings
  • v2.0.0 (2017-08-21)

    • Publish package under the MIT license with the same contents as the already available s390-tools-1.39.0

Previous releases of s390-tools can be found on the IBM Developer Works web pages: