ceph-17.2.1 GA

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
This commit is contained in:
Kaleb S. KEITHLEY 2022-06-23 17:13:37 -04:00
parent 4425090d12
commit 0434611ff3
5 changed files with 62 additions and 106 deletions

View File

@ -1,10 +1,43 @@
--- ceph-17.1.0/cmake/modules/CheckCxxAtomic.cmake.orig 2022-03-07 15:01:49.809505648 -0500
+++ ceph-17.1.0/cmake/modules/CheckCxxAtomic.cmake 2022-03-09 12:47:31.018446185 -0500
@@ -21,6 +21,7 @@
--- ceph-17.2.0-359-gb2fe9ec8/cmake/modules/CheckCxxAtomic.cmake.orig 2022-06-03 08:45:32.341075140 -0400
+++ ceph-17.2.0-359-gb2fe9ec8/cmake/modules/CheckCxxAtomic.cmake 2022-06-03 08:46:47.195775813 -0400
@@ -10,8 +10,9 @@
check_cxx_source_compiles("
#include <atomic>
#include <cstdint>
+#include <cstddef>
-#if defined(__s390x__) || defined(__mips__)
+#if defined(__SIZEOF_INT128__)
// Boost needs 16-byte atomics for tagged pointers.
// These are implemented via inline instructions on the platform
// if 16-byte alignment can be proven, and are delegated to libatomic
@@ -21,13 +22,27 @@
// We specifically test access via an otherwise unknown pointer here
// to ensure we get the most complex case. If this access can be
// done without libatomic, then all accesses can be done.
+bool atomic16(std::atomic<unsigned __int128> *ptr) __attribute__ ((used));
bool atomic16(std::atomic<unsigned __int128> *ptr)
-bool atomic16(std::atomic<unsigned __int128> *ptr)
+struct tagged_ptr {
+ int* ptr;
+ std::size_t tag;
+};
+
+void atomic16(std::atomic<tagged_ptr> *ptr) __attribute__ ((used));
+void atomic16(std::atomic<tagged_ptr> *ptr)
{
return *ptr != 0;
- return *ptr != 0;
+ tagged_ptr p{nullptr, 1};
+ ptr->store(p);
+ tagged_ptr f = ptr->load();
+ tagged_ptr new_tag{nullptr, 0};
+ ptr->compare_exchange_strong(f, new_tag);
}
#endif
int main() {
+#if defined(__SIZEOF_INT128__)
+ std::atomic<tagged_ptr> ptr;
+ atomic16(&ptr);
+#endif
std::atomic<uint8_t> w1;
std::atomic<uint16_t> w2;
std::atomic<uint32_t> w4;

View File

@ -1,11 +0,0 @@
--- ceph-17.2.0/src/rgw/CMakeLists.txt.orig 2022-04-28 13:44:40.547580835 -0400
+++ ceph-17.2.0/src/rgw/CMakeLists.txt 2022-04-28 13:45:05.040153926 -0400
@@ -4,7 +4,7 @@
endif()
if(WITH_RADOSGW_SELECT_PARQUET)
- set(ARROW_LIBRARIES Arrow::Parquet)
+ set(ARROW_LIBRARIES Arrow::Arrow Arrow::Parquet)
add_definitions(-D_ARROW_EXIST)
message("-- arrow is installed, radosgw/s3select-op is able to process parquet objects")
endif(WITH_RADOSGW_SELECT_PARQUET)

View File

@ -1,79 +0,0 @@
--- ceph-17.2.0/src/kv/RocksDBStore.cc.orig 2022-05-19 10:02:04.949165746 -0400
+++ ceph-17.2.0/src/kv/RocksDBStore.cc 2022-05-19 11:04:30.647668997 -0400
@@ -1353,9 +1353,7 @@
const string& key_prefix)
{
uint64_t size = 0;
- uint8_t flags =
- //rocksdb::DB::INCLUDE_MEMTABLES | // do not include memtables...
- rocksdb::DB::INCLUDE_FILES;
+ // uint8_t flags = SizeApproximationFlags::INCLUDE_FILES;
auto p_iter = cf_handles.find(prefix);
if (p_iter != cf_handles.end()) {
for (auto cf : p_iter->second.handles) {
@@ -1363,14 +1361,14 @@
string start = key_prefix + string(1, '\x00');
string limit = key_prefix + string("\xff\xff\xff\xff");
rocksdb::Range r(start, limit);
- db->GetApproximateSizes(cf, &r, 1, &s, flags);
+ db->GetApproximateSizes(cf, &r, 1, &s);
size += s;
}
} else {
string start = combine_strings(prefix , key_prefix);
string limit = combine_strings(prefix , key_prefix + "\xff\xff\xff\xff");
rocksdb::Range r(start, limit);
- db->GetApproximateSizes(default_cf, &r, 1, &size, flags);
+ db->GetApproximateSizes(default_cf, &r, 1, &size);
}
return size;
}
--- ceph-17.2.0/src/kv/rocksdb_cache/BinnedLRUCache.cc.orig 2022-05-19 14:13:10.079111406 -0400
+++ ceph-17.2.0/src/kv/rocksdb_cache/BinnedLRUCache.cc 2022-05-19 14:13:38.023627506 -0400
@@ -570,7 +570,7 @@
#endif // !__SANITIZE_ADDRESS__
}
-#if (ROCKSDB_MAJOR >= 6 && ROCKSDB_MINOR >= 22)
+#if (ROCKSDB_MAJOR >= 7 || (ROCKSDB_MAJOR == 6 && ROCKSDB_MINOR >= 22))
DeleterFn BinnedLRUCache::GetDeleter(Handle* handle) const
{
return reinterpret_cast<const BinnedLRUHandle*>(handle)->deleter;
--- ceph-17.2.0/src/kv/rocksdb_cache/BinnedLRUCache.h.orig 2022-05-19 13:09:33.549473929 -0400
+++ ceph-17.2.0/src/kv/rocksdb_cache/BinnedLRUCache.h 2022-05-19 13:10:26.990543898 -0400
@@ -327,7 +327,7 @@
virtual size_t GetCharge(Handle* handle) const override;
virtual uint32_t GetHash(Handle* handle) const override;
virtual void DisownData() override;
-#if (ROCKSDB_MAJOR >= 6 && ROCKSDB_MINOR >= 22)
+#if (ROCKSDB_MAJOR >= 7 || (ROCKSDB_MAJOR == 6 && ROCKSDB_MINOR >= 22))
virtual DeleterFn GetDeleter(Handle* handle) const override;
#endif
// Retrieves number of elements in LRU, for unit test purpose only
--- ceph-17.2.0/src/kv/rocksdb_cache/ShardedCache.cc.orig 2022-05-19 14:14:49.379391874 -0400
+++ ceph-17.2.0/src/kv/rocksdb_cache/ShardedCache.cc 2022-05-19 14:15:09.797038318 -0400
@@ -109,7 +109,7 @@
return usage;
}
-#if (ROCKSDB_MAJOR >= 6 && ROCKSDB_MINOR >= 22)
+#if (ROCKSDB_MAJOR >= 7 || (ROCKSDB_MAJOR == 6 && ROCKSDB_MINOR >= 22))
DeleterFn ShardedCache::GetDeleter(Handle* handle) const
{
uint32_t hash = GetHash(handle);
--- ceph-17.2.0/src/kv/rocksdb_cache/ShardedCache.h.orig 2022-05-19 14:13:53.251363817 -0400
+++ ceph-17.2.0/src/kv/rocksdb_cache/ShardedCache.h 2022-05-19 14:14:29.749731795 -0400
@@ -83,11 +83,11 @@
virtual size_t GetUsage(rocksdb::Cache::Handle* handle) const override;
virtual size_t GetPinnedUsage() const override;
virtual size_t GetCharge(Handle* handle) const = 0;
-#if (ROCKSDB_MAJOR >= 6 && ROCKSDB_MINOR >= 22)
+#if (ROCKSDB_MAJOR >= 7 || (ROCKSDB_MAJOR == 6 && ROCKSDB_MINOR >= 22))
virtual DeleterFn GetDeleter(Handle* handle) const override;
#endif
virtual void DisownData() override = 0;
-#if (ROCKSDB_MAJOR >= 6 && ROCKSDB_MINOR >= 22)
+#if (ROCKSDB_MAJOR >= 7 || (ROCKSDB_MAJOR == 6 && ROCKSDB_MINOR >= 22))
virtual void ApplyToAllEntries(
const std::function<void(const rocksdb::Slice& key, void* value, size_t charge,
DeleterFn deleter)>& callback,

View File

@ -36,7 +36,6 @@
%bcond_without rbd_rwl_cache
%else
%bcond_with rbd_rwl_cache
%global _system_pmdk 1
%endif
%if 0%{?fedora} || 0%{?rhel}
%ifarch s390x %{arm64}
@ -148,12 +147,19 @@
%endif
%endif
%if 0%{with seastar}
# disable -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1, as gcc-toolset-{9,10}-annobin
# do not provide gcc-annobin.so anymore, despite that they provide annobin.so. but
# redhat-rpm-config still passes -fplugin=gcc-annobin to the compiler.
%undefine _annotated_build
%endif
#################################################################################
# main package definition
#################################################################################
Name: ceph
Version: 17.2.0
Release: 7%{?dist}
Version: 17.2.1
Release: 1%{?dist}
%if 0%{?fedora} || 0%{?rhel}
Epoch: 2
%endif
@ -182,8 +188,6 @@ Patch0017: 0017-gcc-12-omnibus.patch
Patch0018: 0018-src-rgw-store-dbstore-CMakeLists.txt.patch
Patch0019: 0019-cmake-modules-CheckCxxAtomic.cmake.patch
Patch0020: 0020-src-arrow-cpp-cmake_modules-ThirdpartyToolchain.cmake.patch
Patch0021: 0021-src-rgw-CMakeLists.txt.patch
Patch0022: 0022-src-kv-RocksDBStore.cc.patch
# ceph 14.0.1 does not support 32-bit architectures, bugs #1727788, #1727787
ExcludeArch: i686 armv7hl
%if 0%{?suse_version}
@ -286,7 +290,6 @@ BuildRequires: hostname
BuildRequires: jq
BuildRequires: libuuid-devel
BuildRequires: python%{python3_pkgversion}-bcrypt
BuildRequires: python%{python3_pkgversion}-nose
BuildRequires: python%{python3_pkgversion}-pecan
BuildRequires: python%{python3_pkgversion}-requests
BuildRequires: python%{python3_pkgversion}-dateutil
@ -297,7 +300,11 @@ BuildRequires: socat
%if 0%{with zbd}
BuildRequires: libzbd-devel
%endif
%if 0%{?suse_version}
BuildRequires: libthrift-devel >= 0.13.0
%else
BuildRequires: thrift-devel >= 0.13.0
%endif
BuildRequires: re2-devel
%if 0%{with jaeger}
BuildRequires: bison
@ -358,6 +365,7 @@ BuildRequires: libbz2-devel
BuildRequires: mozilla-nss-devel
BuildRequires: keyutils-devel
BuildRequires: libopenssl-devel
BuildRequires: ninja
BuildRequires: lsb-release
BuildRequires: openldap2-devel
#BuildRequires: krb5
@ -379,6 +387,7 @@ BuildRequires: nss-devel
BuildRequires: keyutils-libs-devel
BuildRequires: libibverbs-devel
BuildRequires: librdmacm-devel
BuildRequires: ninja-build
BuildRequires: openldap-devel
#BuildRequires: krb5-devel
BuildRequires: openssl-devel
@ -710,6 +719,7 @@ Group: System/Filesystems
%endif
Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release}
Requires: python%{python3_pkgversion}-asyncssh
Requires: python%{python3_pkgversion}-natsort
Requires: cephadm = %{_epoch_prefix}%{version}-%{release}
%if 0%{?suse_version}
Requires: openssh
@ -1599,8 +1609,7 @@ exit 0
%if ! 0%{?suse_version}
%postun -n cephadm
userdel -r cephadm || true
exit 0
[ $1 -ne 0 ] || userdel cephadm || :
%endif
%files -n cephadm
@ -1608,7 +1617,7 @@ exit 0
%{_mandir}/man8/cephadm.8*
%attr(0700,cephadm,cephadm) %dir %{_sharedstatedir}/cephadm
%attr(0700,cephadm,cephadm) %dir %{_sharedstatedir}/cephadm/.ssh
%attr(0600,cephadm,cephadm) %{_sharedstatedir}/cephadm/.ssh/authorized_keys
%config(noreplace) %attr(0600,cephadm,cephadm) %{_sharedstatedir}/cephadm/.ssh/authorized_keys
%files common
%dir %{_docdir}/ceph
@ -1757,6 +1766,7 @@ fi
%dir %{_datadir}/ceph/mgr
%{_datadir}/ceph/mgr/mgr_module.*
%{_datadir}/ceph/mgr/mgr_util.*
%{_datadir}/ceph/mgr/object_format.*
%{_unitdir}/ceph-mgr@.service
%{_unitdir}/ceph-mgr.target
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/mgr
@ -2570,6 +2580,9 @@ exit 0
%config %{_sysconfdir}/prometheus/ceph/ceph_default_alerts.yml
%changelog
* Thu Jun 23 2022 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 2:17.2.1-1
- ceph-17.2.1 GA
* Fri Jun 17 2022 Robert-André Mauchin <zebob.m@gmail.com> - 2:17.2.0-7
- Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191,
CVE-2022-29526, CVE-2022-30629

View File

@ -1 +1 @@
SHA512 (ceph-17.2.0.tar.gz) = 70b96e709f153f16069bec8346ea73812d699eaab91a012351d02addb3fd176b84fce32c3dae84fdf91d0ffe49f2bb258410b47caeee81d81a672b4dbd04cc7e
SHA512 (ceph-17.2.1.tar.gz) = cb88a3feff67ce41c575cb6c0067a32de51fcbf36d8f9f7273cccd54a3413ee890f473e83fcc1429a86b858b05c412fca8b2cfc24871c5adf612e3d224227cf0