diff --git a/0001-src-common-crc32c_intel_fast.patch b/0001-src-common-crc32c_intel_fast.patch new file mode 100644 index 0000000..0ec5e86 --- /dev/null +++ b/0001-src-common-crc32c_intel_fast.patch @@ -0,0 +1,125 @@ +--- ceph-15.1.0/src/common/crc32c_intel_fast_asm.s.orig 2020-03-04 14:37:33.431024436 -0500 ++++ ceph-15.1.0/src/common/crc32c_intel_fast_asm.s 2020-03-04 15:11:22.859388783 -0500 +@@ -40,6 +40,7 @@ + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + ++ + ; crcB3 MACRO to implement crc32 on 3 %%bSize-byte blocks + %macro crcB3 3 + %define %%bSize %1 ; 1/3 of buffer size +@@ -672,3 +673,22 @@ + ; inform linker that this doesn't require executable stack + section .note.GNU-stack noalloc noexec nowrite progbits + %endif ++ ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++ ++SECTION .note.gnu.property align=8 noexec ; section number 22, const ++ ++ db 04H, 00H, 00H, 00H, 20H, 00H, 00H, 00H ; 0000 _ .... ... ++ db 05H, 00H, 00H, 00H, 47H, 4EH, 55H, 00H ; 0008 _ ....GNU. ++ db 00H, 00H, 00H, 0C0H, 04H, 00H, 00H, 00H ; 0010 _ ........ ++ db 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ; 0018 _ ........ ++ db 01H, 00H, 00H, 0C0H, 04H, 00H, 00H, 00H ; 0020 _ ........ ++ db 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ; 0028 _ ........ ++ db 04H, 00H, 00H, 00H, 10H, 00H, 00H, 00H ; 0030 _ ........ ++ db 05H, 00H, 00H, 00H, 47H, 4EH, 55H, 00H ; 0038 _ ....GNU. ++ db 02H, 00H, 00H, 0C0H, 04H, 00H, 00H, 00H ; 0040 _ ........ ++ db 03H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ; 0048 _ ........ ++ ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +--- ceph-15.1.0/src/common/crc32c_intel_fast_zero_asm.s.orig 2020-03-04 15:13:06.577071783 -0500 ++++ ceph-15.1.0/src/common/crc32c_intel_fast_zero_asm.s 2020-03-04 15:13:49.873356953 -0500 +@@ -654,3 +654,22 @@ + ; inform linker that this doesn't require executable stack + section .note.GNU-stack noalloc noexec nowrite progbits + %endif ++ ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++ ++SECTION .note.gnu.property align=8 noexec ; section number 22, const ++ ++ db 04H, 00H, 00H, 00H, 20H, 00H, 00H, 00H ; 0000 _ .... ... ++ db 05H, 00H, 00H, 00H, 47H, 4EH, 55H, 00H ; 0008 _ ....GNU. ++ db 00H, 00H, 00H, 0C0H, 04H, 00H, 00H, 00H ; 0010 _ ........ ++ db 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ; 0018 _ ........ ++ db 01H, 00H, 00H, 0C0H, 04H, 00H, 00H, 00H ; 0020 _ ........ ++ db 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ; 0028 _ ........ ++ db 04H, 00H, 00H, 00H, 10H, 00H, 00H, 00H ; 0030 _ ........ ++ db 05H, 00H, 00H, 00H, 47H, 4EH, 55H, 00H ; 0038 _ ....GNU. ++ db 02H, 00H, 00H, 0C0H, 04H, 00H, 00H, 00H ; 0040 _ ........ ++ db 03H, 00H, 00H, 00H, 00H, 00H, 00H, 00H ; 0048 _ ........ ++ ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +diff --git a/cmake/modules/BuildBoost.cmake b/cmake/modules/BuildBoost.cmake +index 2e92132366..3cb1e3d958 100644 +--- a/cmake/modules/BuildBoost.cmake ++++ b/cmake/modules/BuildBoost.cmake +@@ -62,7 +62,7 @@ function(do_build_boost version) + else() + list(APPEND boost_features "address-model=32") + endif() +- set(BOOST_CXXFLAGS "-fPIC -w") # check on arm, etc <---XXX ++ set(BOOST_CXXFLAGS "-fPIC -w -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -ftemplate-depth-1024 -fno-new-ttp-matching -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free") # check on arm, etc <---XXX + list(APPEND boost_features "cxxflags=${BOOST_CXXFLAGS}") + + set(boost_with_libs) +--- ceph-15.1.0/src/yasm-wrapper.orig 2020-03-09 12:57:37.603837466 -0400 ++++ ceph-15.1.0/src/yasm-wrapper 2020-03-09 13:02:31.496796609 -0400 +@@ -1,10 +1,11 @@ +-#!/bin/sh -e ++#!/bin/sh + + # libtool and yasm do not get along. + # filter out any crap that libtool feeds us that yasm does not understand. + #echo $0: got $* + new="" + touch="" ++object="" + while [ -n "$*" ]; do + case "$1" in + -f ) +@@ -29,6 +30,12 @@ + touch="$1" + shift + ;; ++ -o ) ++ shift ++ object="$1" ++ new="$new -o $1" ++ shift ++ ;; + * ) + new="$new $1" + shift +@@ -39,6 +46,25 @@ + #echo $0: yasm $new + yasm $new + ++INDEXOFNOTEGNUPROPLINE=$(readelf -S -W ${object} | grep ".note.gnu.property") ++ ++if [ -n "${INDEXOFNOTEGNUPROPLINE}" ]; then ++ ++ STARTOFSECTHDRLINE=$(readelf -h ${object} | grep "Start of section headers:") ++ SIZEOFSECTHDRLINE=$(readelf -h ${object} | grep "Size of section headers:") ++ ++ STARTOFSECTHDR=$(echo ${STARTOFSECTHDRLINE} | cut -d ' ' -f 5) ++ SIZEOFSECTHDR=$(echo ${SIZEOFSECTHDRLINE} | cut -d ' ' -f 5) ++ INDEXOFNOTEGNUPROPFRAG=$(echo ${INDEXOFNOTEGNUPROPLINE} | cut -d '.' -f 1) ++ ++ INDEXOFNOTEGNUPROP=$(echo ${INDEXOFNOTEGNUPROPFRAG} | grep -Eo "[[:digit:]]+") ++ ++ OFFSET=$(( ${STARTOFSECTHDR} + 4 + ( ${SIZEOFSECTHDR} * ${INDEXOFNOTEGNUPROP} ) )) ++ ++ printf '\x07' | dd of=${object} bs=1 seek=${OFFSET} count=1 conv=notrunc &> /dev/null ++ ++fi ++ + [ -n "$touch" ] && touch $touch + + true diff --git a/ceph.spec b/ceph.spec index 52ba475..3a72030 100644 --- a/ceph.spec +++ b/ceph.spec @@ -109,7 +109,7 @@ ################################################################################# Name: ceph Version: 15.1.0 -Release: 2%{?dist} +Release: 3%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 %endif @@ -126,6 +126,7 @@ Group: System/Filesystems %endif URL: http://ceph.com/ Source0: %{?_remote_tarball_prefix}ceph-%{version}.tar.gz +Patch0001: 0001-src-common-crc32c_intel_fast.patch Patch0002: 0002-src-common-CMakeLists.txt.patch Patch0003: 0003-src-common-bitstr.h.patch Patch0004: 0004-src-test-rgw-test_rgw_reshart_wait.cc.patch @@ -2293,6 +2294,9 @@ exit 0 %endif %changelog +* Thu Mar 5 2020 Kaleb S. KEITHLEY - 2:15.1.0-3 +- ceph 15.1.0, rhbz#1809799 + * Thu Feb 20 2020 Kaleb S. KEITHLEY - 2:15.1.0-2 - ceph 15.1.0, fmt, rhbz#1805422