------- Comment From i...@de.ibm.com 2022-11-22 04:52 EDT------- As a comprehensive test plan I would suggest the following:
* Run zlib-ng testsuite against Ubuntu zlib. This is possible since https://github.com/zlib-ng/zlib- ng/commit/e63f36b1cf615a81e2cfa2d97fc54a5f493c9c19, the testsuite is quite comprehensive. * Run pyzlib testsuite - https://github.com/iii-i/pyzlib. It stresses some DFLTCC-related corner cases, might be useful for CRC-32 as well. * Do a large transfer with rsync -z. Copying locally is enough. * Do a stress-ng run, e.g. stress-ng --zlib --timeout 60s. This needs to be run 4 times: - On a >=z15 machine. - On a >=z15 machine with DFLTCC=0 environment variable. - On a <=z14 machine (no DFLTCC). - On a <=zEC12 machine (no vgfma at runtime). -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to zlib in Ubuntu. https://bugs.launchpad.net/bugs/1982583 Title: Fix for zlib CRC32 optimization for s390x Status in Ubuntu on IBM z Systems: In Progress Status in zlib package in Ubuntu: In Progress Status in zlib source package in Jammy: Incomplete Status in zlib source package in Kinetic: Incomplete Bug description: SRU Justification: ------------------ [ Impact ] * There were two issues identified in the current zlib CRC32 optimization for s390x implementation: * 1) s390_crc32_vx() signature mismatch which causes a warning * 2) '-DS390_CRC32_VX' was not added to SFLAGS which results in vectorization being enabled only in the static library. * The fixes are quite small and affect each only one line: * 1) by using unsigned longs instead of uint32_t in s390_crc32_vx declaration * 2) by add line 'SFLAGS="$SFLAGS -DS390_CRC32_VX"' [ Test Plan ] * An affected Ubuntu release ([20.04], 22.04 and 22.10) installed on a z15/LinuxONE III or newer system is needed. * Then it's possible to test the updated package with the help of a small test program (in C) that checks for s390_crc32_vx() signature mismatches. * The bug reporter has a set of s390x-specific tests that will be executed. * Test will be done by IBM. [ Where problems could occur ] * The fixes are each limited to one line, hence there are not many issues to expect, other than: * Typos (e.g. in the flags), mixing of CFLAGS and SFLAGS, * in case the changed data type in s390_crc32_vx is causing issues inside of s390_crc32_vx or in other parts of the code. * Structural and syntactical issues can be identified with a test build that was done for all affected Ubuntu releases and for all major archs: https://launchpad.net/~fheimes/+archive/ubuntu/lp1990379+lp1982583 [ Other Info ] * This bug (LP#1982583) is solved in combination with LP#1990379, so that only one package update is needed. However, LP#1990379 also affects Focal, but this bug only Jammy and Kinetic. * To fix LP#1990379 also for focal the debdiff mentioned there is needed, too. __________ 'zlib CRC32 optimization for s390x works only in a static library' I've discovered two issues in lp1932010-ibm-z-add-vectorized- crc32-implementation.patch: 1) s390_crc32_vx() signature mismatch, resulting in a warning. 2) -DS390_CRC32_VX is not added to SFLAGS, resulting in vectorization being enabled only in the static library. I've attached the updated patch. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-z-systems/+bug/1982583/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp