Accepting request 975721 from devel:libraries:c_c++

- Update to release 5.3.0
  * Added the thread.idle mallctl which hints that the calling
    thread will be idle for a nontrivial period of time.
  * Allow small size classes to be the maximum size class to
    cache in the thread-specific cache, through the
    opt.[lg_]tcache_max option.
  * Make the behavior of realloc(ptr, 0) configurable with
    opt.zero_realloc.
  * Support C++17 over-aligned allocation.
  * Add the thread.peak mallctl for approximate per-thread peak
    memory tracking.
  * Add high resolution timestamp support for profiling.
- Drop use-volatile-to-workaround-buffer-overflow-false-pos.patch
  (merged)

OBS-URL: https://build.opensuse.org/request/show/975721
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/jemalloc?expand=0&rev=36
This commit is contained in:
Dominique Leuenberger 2022-05-10 13:11:18 +00:00 committed by Git OBS Bridge
commit b5de0bda9d
5 changed files with 22 additions and 78 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:34330e5ce276099e2e8950d9335db5a875689a4c6a56751ef3b1d8c537f887f6
size 554279

BIN
jemalloc-5.3.0.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,21 @@
-------------------------------------------------------------------
Fri May 6 20:53:16 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
- Update to release 5.3.0
* Added the thread.idle mallctl which hints that the calling
thread will be idle for a nontrivial period of time.
* Allow small size classes to be the maximum size class to
cache in the thread-specific cache, through the
opt.[lg_]tcache_max option.
* Make the behavior of realloc(ptr, 0) configurable with
opt.zero_realloc.
* Support C++17 over-aligned allocation.
* Add the thread.peak mallctl for approximate per-thread peak
memory tracking.
* Add high resolution timestamp support for profiling.
- Drop use-volatile-to-workaround-buffer-overflow-false-pos.patch
(merged)
-------------------------------------------------------------------
Tue Apr 12 20:20:55 UTC 2022 - Martin Liška <mliska@suse.cz>

View File

@ -18,14 +18,13 @@
%define lname libjemalloc2
Name: jemalloc
Version: 5.2.1
Version: 5.3.0
Release: 0
Summary: General-purpose scalable concurrent malloc implementation
License: BSD-2-Clause
Group: Development/Libraries/C and C++
URL: http://jemalloc.net/
Source: https://github.com/jemalloc/jemalloc/releases/download/%version/jemalloc-%version.tar.bz2
Patch0: use-volatile-to-workaround-buffer-overflow-false-pos.patch
BuildRequires: docbook-xsl-stylesheets
BuildRequires: libxslt
BuildRequires: pkgconfig

View File

@ -1,73 +0,0 @@
From ed5fc14b28ca62a6ba57b65adf557e1ef09037f0 Mon Sep 17 00:00:00 2001
From: Qi Wang <interwq@gwu.edu>
Date: Wed, 23 Mar 2022 16:31:40 -0700
Subject: [PATCH] Use volatile to workaround buffer overflow false positives.
In test/integration/rallocx, full usable size is checked which may confuse
overflow detection.
---
test/integration/rallocx.c | 26 +++++++++++++++++++++-----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/test/integration/rallocx.c b/test/integration/rallocx.c
index d4a48fce..68b8f381 100644
--- a/test/integration/rallocx.c
+++ b/test/integration/rallocx.c
@@ -41,7 +41,11 @@ get_large_size(size_t ind) {
}
TEST_BEGIN(test_grow_and_shrink) {
- void *p, *q;
+ /*
+ * Use volatile to workaround buffer overflow false positives
+ * (-D_FORTIFY_SOURCE=3).
+ */
+ void *volatile p, *volatile q;
size_t tsz;
#define NCYCLES 3
unsigned i, j;
@@ -85,9 +89,13 @@ TEST_BEGIN(test_grow_and_shrink) {
TEST_END
static bool
-validate_fill(const void *p, uint8_t c, size_t offset, size_t len) {
+validate_fill(void *p, uint8_t c, size_t offset, size_t len) {
bool ret = false;
- const uint8_t *buf = (const uint8_t *)p;
+ /*
+ * Use volatile to workaround buffer overflow false positives
+ * (-D_FORTIFY_SOURCE=3).
+ */
+ uint8_t *volatile buf = (uint8_t *)p;
size_t i;
for (i = 0; i < len; i++) {
@@ -104,7 +112,11 @@ validate_fill(const void *p, uint8_t c, size_t offset, size_t len) {
}
TEST_BEGIN(test_zero) {
- void *p, *q;
+ /*
+ * Use volatile to workaround buffer overflow false positives
+ * (-D_FORTIFY_SOURCE=3).
+ */
+ void *volatile p, *volatile q;
size_t psz, qsz, i, j;
size_t start_sizes[] = {1, 3*1024, 63*1024, 4095*1024};
#define FILL_BYTE 0xaaU
@@ -205,7 +217,11 @@ TEST_BEGIN(test_align_enum) {
TEST_END
TEST_BEGIN(test_lg_align_and_zero) {
- void *p, *q;
+ /*
+ * Use volatile to workaround buffer overflow false positives
+ * (-D_FORTIFY_SOURCE=3).
+ */
+ void *volatile p, *volatile q;
unsigned lg_align;
size_t sz;
#define MAX_LG_ALIGN 25
--
2.35.1