Description of problem: Ceph CRC is not optimized for IBM Z (s390x arch). This fix solves high CPU consumption. We speedup ceph by implementing CRC using IBM Z hardware features. The PR for ceph https://github.com/ceph/ceph/pull/56224 has to be backported. fio -ioengine=libaio -direct=1 -name=test -group_reporting=1 -runtime=180 -time_based -iodepth=8 -bs=128K -rw=write -numjobs=8 -size=3G ceph_crc32c_sctp: Samples: 1M of event 'cycles:P', Event count (approx.): 2211775104000 Overhead Command Shared Object Symbol 19.58% tp_osd_tp ceph-osd [.] ceph_crc32c_sctp 18.78% msgr-worker-1 ceph-osd [.] ceph_crc32c_sctp 5.88% msgr-worker-1 [kernel.kallsyms] [k] raw_copy_to_user_key 3.48% tp_osd_tp libc.so.6 [.] memcpy 3.04% tp_osd_tp libc.so.6 [.] _int_malloc 2.20% tp_osd_tp [kernel.kallsyms] [k] cpumsf_pmu_enable 1.19% tp_osd_tp libc.so.6 [.] malloc 1.13% tp_osd_tp libc.so.6 [.] malloc_consolidate s390x HW crc32: Samples: 874K of event 'cycles:P', Event count (approx.): 1138476612000 Overhead Command Shared Object Symbol 8.58% msgr-worker-1 [kernel.kallsyms] [k] raw_copy_to_user_key 5.27% tp_osd_tp libc.so.6 [.] memcpy 4.70% tp_osd_tp libc.so.6 [.] _int_malloc 3.03% tp_osd_tp [kernel.kallsyms] [k] cpumsf_pmu_enable 1.97% tp_osd_tp ceph-osd [.] crc32_le_vgfm_generic 1.75% tp_osd_tp libc.so.6 [.] malloc_consolidate 1.72% tp_osd_tp libc.so.6 [.] malloc 1.64% msgr-worker-1 ceph-osd [.] crc32_le_vgfm_generic Version-Release number of selected component (if applicable): 8.0 9.0 How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info: https://tracker.ceph.com/issues/64952 https://github.com/ceph/ceph/pull/56224
Please specify the severity of this bug. Severity is defined here: https://bugzilla.redhat.com/page.cgi?id=fields.html#bug_severity.