+--- ceph-17.2.2/src/os/bluestore/BlueStore.cc.orig 2022-07-21 19:29:33.000000000 +0200
++++ ceph-17.2.2/src/os/bluestore/BlueStore.cc 2022-08-23 16:55:10.753944515 +0200
+@@ -18583,7 +18583,7 @@ int BlueStore::__restore_allocator(Alloc
+ uint64_t extent_count = 0;
+ uint64_t extents_bytes_left = file_size - (header_size + trailer_size + sizeof(crc));
+ while (extents_bytes_left) {
+- int req_bytes = std::min(extents_bytes_left, sizeof(buffer));
++ uint64_t req_bytes = std::min<uint64_t>(extents_bytes_left, sizeof(buffer));
+ int read_bytes = bluefs->read(p_handle.get(), offset, req_bytes, nullptr, (char*)buffer);
+ if (read_bytes != req_bytes) {
+ derr << "Failed bluefs->read()::read_bytes=" << read_bytes << ", req_bytes=" << req_bytes << dendl;
+--- ceph-17.2.2/src/rgw/store/dbstore/sqlite/sqliteDB.cc.orig 2022-07-21 19:29:33.000000000 +0200
++++ ceph-17.2.2/src/rgw/store/dbstore/sqlite/sqliteDB.cc 2022-08-24 06:15:01.162110603 +0200
+@@ -514,8 +514,10 @@ static int list_lc_head(const DoutPrefix
+
+ op.lc_head.index = (const char*)sqlite3_column_text(stmt, LCHeadIndex);
+ op.lc_head.head.marker = (const char*)sqlite3_column_text(stmt, LCHeadMarker);
+-
+- SQL_DECODE_BLOB_PARAM(dpp, stmt, LCHeadStartDate, op.lc_head.head.start_date, sdb);
++
++ { int64_t start_date;
++ SQL_DECODE_BLOB_PARAM(dpp, stmt, LCHeadStartDate, start_date, sdb);
++ op.lc_head.head.start_date = start_date; }
+
+ return 0;
+ }
+@@ -2773,7 +2775,8 @@ int SQLInsertLCHead::Bind(const DoutPref
+ SQL_BIND_TEXT(dpp, stmt, index, params->op.lc_head.head.marker.c_str(), sdb);
+
+ SQL_BIND_INDEX(dpp, stmt, index, p_params.op.lc_head.start_date.c_str(), sdb);
+- SQL_ENCODE_BLOB_PARAM(dpp, stmt, index, params->op.lc_head.head.start_date, sdb);
++ { int64_t start_date = params->op.lc_head.head.start_date;
++ SQL_ENCODE_BLOB_PARAM(dpp, stmt, index, start_date, sdb); }
+
+ out:
+ return rc;
+--- ceph-17.2.3/src/seastar/src/core/file.cc.orig 2021-12-19 23:02:10.000000000 +0100
++++ ceph-17.2.3/src/seastar/src/core/file.cc 2022-08-28 09:19:17.258501014 +0200
+@@ -313,7 +313,7 @@ posix_file_impl::close() noexcept {
+
+ future<uint64_t>
+ blockdev_file_impl::size(void) noexcept {
+- return engine()._thread_pool->submit<syscall_result_extra<size_t>>([this] {
++ return engine()._thread_pool->submit<syscall_result_extra<uint64_t>>([this] {
+ uint64_t size;
+ int ret = ::ioctl(_fd, BLKGETSIZE64, &size);
+ return wrap_syscall(ret, size);
+@@ -908,7 +908,7 @@ append_challenged_posix_file_impl::trunc
+
+ future<uint64_t>
+ append_challenged_posix_file_impl::size() noexcept {
+- return make_ready_future<size_t>(_logical_size);
++ return make_ready_future<uint64_t>(_logical_size);
+ }
+
+ future<>
+@@ -996,7 +996,7 @@ make_file_impl(int fd, file_open_options
+ engine().fstatfs(fd).then([fd, st_dev] (struct statfs sfs) {
+ internal::fs_info fsi;
+ fsi.block_size = sfs.f_bsize;
+- switch (sfs.f_type) {
++ switch (static_cast<unsigned>(sfs.f_type)) {
+ case 0x58465342: /* XFS */
+ dioattr da;
+ if (::ioctl(fd, XFS_IOC_DIOINFO, &da) == 0) {
+--- ceph-17.2.3/src/seastar/src/core/fstream.cc.orig 2021-12-19 23:02:10.000000000 +0100
++++ ceph-17.2.3/src/seastar/src/core/fstream.cc 2022-08-28 09:22:32.072057177 +0200
+@@ -419,7 +419,7 @@ private:
+ if ((buf.size() & (_file.disk_write_dma_alignment() - 1)) != 0) {
+ // If buf size isn't aligned, copy its content into a new aligned buf.
+ // This should only happen when the user calls output_stream::flush().
+- auto tmp = allocate_buffer(align_up(buf.size(), _file.disk_write_dma_alignment()));
++ auto tmp = allocate_buffer(align_up<uint64_t>(buf.size(), _file.disk_write_dma_alignment()));
+ ::memcpy(tmp.get_write(), buf.get(), buf.size());
+ ::memset(tmp.get_write() + buf.size(), 0, tmp.size() - buf.size());
+ buf = std::move(tmp);