mariadb: upgrade 11.4.5 -> 11.4.6

This upgrade includes fix for CVE-2023-52971

Changelog:
https://mariadb.com/kb/en/mariadb-11-4-6-changelog/

refresh 0001-Add-missing-includes-cstdint-and-cstdio.patch

Droped 3871.patch and mm_malloc.patch as these are available in 11.4.6

Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Yogita Urade 2025-05-14 10:40:23 +05:30 committed by Khem Raj
parent 2c2d8f2959
commit 3e958fabe9
No known key found for this signature in database
GPG Key ID: BB053355919D3314
6 changed files with 16 additions and 80 deletions

View File

@ -17,17 +17,15 @@ SRC_URI = "https://archive.mariadb.org/${BP}/source/${BP}.tar.gz \
file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \
file://0001-aio_linux-Check-if-syscall-exists-before-using-it.patch \
file://ssize_t.patch \
file://mm_malloc.patch \
file://sys_futex.patch \
file://cross-compiling.patch \
file://0001-sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch \
file://lfs64.patch \
file://0001-Add-missing-includes-cstdint-and-cstdio.patch \
file://0001-Ensure-compatibility-with-ARMv9-by-updating-.arch-di.patch \
file://3871.patch \
file://riscv32.patch \
"
SRC_URI[sha256sum] = "ff6595f8c482f9921e39b97fa1122377a69f0dcbd92553c6b9032cbf0e9b5354"
SRC_URI[sha256sum] = "1b26c0bb2d025dbfac3b9852d2b7eafda56a171b67ac2e27831ec0414fb7df07"
UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/tags"

View File

@ -11,27 +11,14 @@ Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
.../rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h | 1 +
storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h | 1 +
.../rocksdb/rocksdb/table/block_based/data_block_hash_index.h | 1 +
storage/rocksdb/rocksdb/util/slice.cc | 1 +
storage/rocksdb/rocksdb/util/string_util.h | 1 +
5 files changed, 5 insertions(+)
storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h | 1 +
.../rocksdb/rocksdb/table/block_based/data_block_hash_index.h | 1 +
storage/rocksdb/rocksdb/util/slice.cc | 2 +-
storage/rocksdb/rocksdb/util/string_util.h | 1 +
4 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h b/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h
index 963c1d8e..73487edd 100644
--- a/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h
+++ b/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h
@@ -5,6 +5,7 @@
#pragma once
+#include <cstdint>
#include "rocksdb/rocksdb_namespace.h"
struct CompactionIterationStats {
diff --git a/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h b/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h
index c7f93b4c..3c2ab805 100644
index 7fb9d489..f7b4e6f0 100644
--- a/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h
+++ b/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h
@@ -8,6 +8,7 @@
@ -55,19 +42,20 @@ index f356395f..32152217 100644
#include <vector>
diff --git a/storage/rocksdb/rocksdb/util/slice.cc b/storage/rocksdb/rocksdb/util/slice.cc
index 6db11cc9..c26b6a21 100644
index 3c3656de..b18d7f5d 100644
--- a/storage/rocksdb/rocksdb/util/slice.cc
+++ b/storage/rocksdb/rocksdb/util/slice.cc
@@ -8,6 +8,7 @@
// found in the LICENSE file. See the AUTHORS file for names of contributors.
@@ -12,7 +12,7 @@
#include <stdio.h>
#include <algorithm>
-
+#include <cstdint>
#include "rocksdb/convenience.h"
#include "rocksdb/slice_transform.h"
#include "rocksdb/slice.h"
#include "util/string_util.h"
#include "rocksdb/utilities/object_registry.h"
diff --git a/storage/rocksdb/rocksdb/util/string_util.h b/storage/rocksdb/rocksdb/util/string_util.h
index a761be66..064d059f 100644
index 7794dbb0..b480177e 100644
--- a/storage/rocksdb/rocksdb/util/string_util.h
+++ b/storage/rocksdb/rocksdb/util/string_util.h
@@ -6,6 +6,7 @@
@ -78,3 +66,5 @@ index a761be66..064d059f 100644
#include <sstream>
#include <string>
#include <unordered_map>
--
2.40.0

View File

@ -1,29 +0,0 @@
From d6923ac0adc11a0364acd421316116190eedb508 Mon Sep 17 00:00:00 2001
From: Brad Smith <brad@comstyle.com>
Date: Fri, 7 Mar 2025 02:04:01 -0500
Subject: [PATCH] Fix building with Clang and GCC on RISC-V
Clang does not have the builtin __builtin_riscv_pause().
Upstream-Status: Backport [https://github.com/MariaDB/server/pull/3871]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
include/my_cpu.h | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
--- a/include/my_cpu.h
+++ b/include/my_cpu.h
@@ -97,7 +97,12 @@ static inline void MY_RELAX_CPU(void)
/* Changed from __ppc_get_timebase for musl and clang compatibility */
__builtin_ppc_get_timebase();
#elif defined __GNUC__ && defined __riscv
- __builtin_riscv_pause();
+ /* The GCC-only __builtin_riscv_pause() or the pause instruction is
+ encoded like a fence instruction with special parameters. On RISC-V
+ implementations that do not support arch=+zihintpause this
+ instruction could be interpreted as a more expensive memory fence;
+ it should not be an illegal instruction. */
+ __asm__ volatile(".long 0x0100000f" ::: "memory");
#elif defined __GNUC__
/* Mainly, prevent the compiler from optimizing away delay loops */
__asm__ __volatile__ ("":::"memory");

View File

@ -1,23 +0,0 @@
From 76e4c3e8d001eaaabd0fb34c136b81b82830c420 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 15 Jun 2021 22:48:07 -0700
Subject: [PATCH] mariadb: Fix build with clang/musl
Upstream-Status: Pending
---
storage/rocksdb/rocksdb/port/jemalloc_helper.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/storage/rocksdb/rocksdb/port/jemalloc_helper.h b/storage/rocksdb/rocksdb/port/jemalloc_helper.h
index f6f72f8c..b9657cf3 100644
--- a/storage/rocksdb/rocksdb/port/jemalloc_helper.h
+++ b/storage/rocksdb/rocksdb/port/jemalloc_helper.h
@@ -5,7 +5,7 @@
#pragma once
-#if defined(__clang__)
+#if defined(__clang__) && defined(__GLIBC__)
// glibc's `posix_memalign()` declaration specifies `throw()` while clang's
// declaration does not. There is a hack in clang to make its re-declaration
// compatible with glibc's if they are declared consecutively. That hack breaks