mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
app-benchmarks/filebench: add 1.5.0_alpha3_p20200220
update HOMEPAGE and SRC_URI with github repo add a snapshot after 1.5.0_alpha3 auto-completion/libtecla support removed in 1.5.0_alpha1 bug #729104 fixed in 1.5.0_alpha1 remove .la files patches : fix gcc-15 fix implicit function in configure fix an issue with randomization Closes: https://bugs.gentoo.org/729104 Closes: https://bugs.gentoo.org/906004 Closes: https://bugs.gentoo.org/943905 Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr> Part-of: https://github.com/gentoo/gentoo/pull/43620 Closes: https://github.com/gentoo/gentoo/pull/43620 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
committed by
Sam James
parent
34737ad1c2
commit
ef484b6b19
@@ -1 +1,2 @@
|
||||
DIST filebench-1.4.9.1.tar.gz 349535 BLAKE2B 774eab935fba422064c9c6a5c233b99545b639b4319cb9658b6555d087f1af0f59c29de57a5fef94c2256199f1c328d2309641785d8573832629fb4a28b2e716 SHA512 a6400aba4266fcf98e46c4824796a594adc5d5e7f9605f6e1ab01973ce448e27948991e453b186947a8d89f8603a69a3ba955edf2a1abccd2935196af7b6f0d1
|
||||
DIST filebench-1.5.0_alpha3_p20200220.tar.gz 255950 BLAKE2B 77df6388a982d045c27e4b14bd87371dd559c1b3e428e8a6934b3b6d4632831887440ae82c0e44c993b4870c9e198ead233779f8a7df5f02c2c2130eaa0f0e3f SHA512 96878a3c665b9e31d08806f49bf2a513f00751b833088d9470a94cfbac013d8d3d8fc68574e58531c6ab4bffa7fde88f6ccf6009667d70a1d8d586eb884d1dd8
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools
|
||||
|
||||
COMMIT_HASH="22620e602cbbebad90c0bd041896ebccf70dbf5f"
|
||||
DESCRIPTION="Filebench - A Model Based File System Workload Generator"
|
||||
HOMEPAGE="https://github.com/filebench/filebench"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/archive/${COMMIT_HASH}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${COMMIT_HASH}"
|
||||
|
||||
LICENSE="CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~riscv ~x86"
|
||||
|
||||
DEPEND="
|
||||
app-alternatives/lex
|
||||
app-alternatives/yacc
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# https://github.com/filebench/filebench/pull/143
|
||||
"${FILESDIR}"/${PN}-1.5.0_alpha3_add_suppress_asr.patch
|
||||
# https://github.com/filebench/filebench/pull/160 #906004
|
||||
"${FILESDIR}"/${PN}-1.5.0_alpha3_fix_implicit_syscall.patch
|
||||
# selected commits from https://github.com/filebench/filebench/pull/116 #943905
|
||||
"${FILESDIR}"/${PN}-1.5.0_alpha3_fix_gcc15.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
PR pending to fix an issue with randomization, see upstream #110
|
||||
https://github.com/filebench/filebench/pull/143.patch
|
||||
From 18c708a9771d9414fb3fa44bd916c05cdd43868c Mon Sep 17 00:00:00 2001
|
||||
From: Tony Mason <fsgeek@cs.ubc.ca>
|
||||
Date: Sat, 20 Jun 2020 20:39:23 +0000
|
||||
Subject: [PATCH] Add ASR suppression logic
|
||||
|
||||
--- a/parser_gram.y
|
||||
+++ b/parser_gram.y
|
||||
@@ -45,6 +45,7 @@
|
||||
#include <fcntl.h>
|
||||
#include <sys/mman.h>
|
||||
#include <sys/wait.h>
|
||||
+#include <syscall.h>
|
||||
#include "parsertypes.h"
|
||||
#include "filebench.h"
|
||||
#include "utils.h"
|
||||
@@ -1569,7 +1570,6 @@ parser_abort(int arg)
|
||||
static void
|
||||
master_mode(struct fbparams *fbparams) {
|
||||
int ret;
|
||||
-
|
||||
printf("Filebench Version %s\n", FILEBENCH_VERSION);
|
||||
|
||||
yyin = fopen(fbparams->fscriptname, "r");
|
||||
@@ -1620,6 +1620,66 @@ init_common()
|
||||
fb_set_rlimit();
|
||||
}
|
||||
|
||||
+static void suppress_asr(char *const argv[], char * const envp[])
|
||||
+{
|
||||
+#if defined(SYS_personality)
|
||||
+ unsigned index = 0;
|
||||
+ size_t space = 0;
|
||||
+ char **newenvp = (char **)malloc(space);
|
||||
+ char *detect_string = "FILEBENCH_ASR_REINVOKED";
|
||||
+ int current;
|
||||
+ unsigned long persona = (unsigned long)~0;
|
||||
+ const unsigned long asr_disabled = 0x0040000;
|
||||
+
|
||||
+ // Is this a reinvocation?
|
||||
+ for (index = 0; envp[index]; index++) {
|
||||
+ if (0 == strcmp(envp[index], detect_string)) {
|
||||
+ // Yes - no further checking.
|
||||
+ return;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ // check if ASR is already disabled
|
||||
+ current = (long) syscall(SYS_personality, persona);
|
||||
+ if (-1 != current) {
|
||||
+ persona = (unsigned long) current;
|
||||
+
|
||||
+ if (asr_disabled == (persona & asr_disabled)) { // ASR disabled
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ persona |= 0x0040000;
|
||||
+ errno = 0;
|
||||
+ current = (long) syscall(SYS_personality, persona);
|
||||
+
|
||||
+ if (-1 == current) {
|
||||
+ // failed - give up
|
||||
+ fprintf(stderr, "ASR disable failed - good luck\n");
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ space = (index + 2) * sizeof(char *); // + 1 null entry + 1 new entry
|
||||
+ if (NULL == newenvp) {
|
||||
+ fprintf(stderr, "Reinvocation after disable ASR malloc failed\n");
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ for (unsigned i = 0; i < index; i++) {
|
||||
+ newenvp[i] = envp[i];
|
||||
+ }
|
||||
+ newenvp[index] = detect_string;
|
||||
+ newenvp[index+1] = NULL;
|
||||
+
|
||||
+ if (-1 != current) {
|
||||
+ if (0 > execvpe(argv[0], argv, newenvp)) {
|
||||
+ fprintf(stderr, "execvpe failed (errno %d - %s)\n", errno, strerror(errno));
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+#endif // SYS_personality
|
||||
+
|
||||
+}
|
||||
+
|
||||
/*
|
||||
* Entry point for Filebench. Processes command line arguments. The -f option
|
||||
* will read in a workload file (the full name and extension must must be
|
||||
@@ -1635,11 +1695,13 @@ init_common()
|
||||
* supplied workload file, or enters interactive mode.
|
||||
*/
|
||||
int
|
||||
-main(int argc, char *argv[])
|
||||
+main(int argc, char *argv[], char *envp[])
|
||||
{
|
||||
struct fbparams fbparams;
|
||||
int mode;
|
||||
|
||||
+ suppress_asr(argv, envp);
|
||||
+
|
||||
/* parse_options() exits if detects wrong usage */
|
||||
mode = parse_options(argc, argv, &fbparams);
|
||||
|
||||
@@ -1651,7 +1713,7 @@ main(int argc, char *argv[])
|
||||
|
||||
init_common();
|
||||
|
||||
- if (mode == FB_MODE_MASTER)
|
||||
+ if (mode == FB_MODE_MASTER)
|
||||
master_mode(&fbparams);
|
||||
|
||||
if (mode == FB_MODE_WORKER)
|
||||
@@ -0,0 +1,496 @@
|
||||
PR pending, selected commits to fix compilation with gcc15
|
||||
fix unprototyped functions :
|
||||
https://github.com/filebench/filebench/pull/116/commits/07194b64f7a9c7c473896934339775ab54f1da78.patch
|
||||
remove bool occurences / bug #943905 :
|
||||
https://github.com/filebench/filebench/pull/116/commits/64a08cf7caa1beb1de078ab1099de0f7a1fed8ec.patch
|
||||
https://github.com/filebench/filebench/pull/116/commits/fd3565c371d87a5d6cdebcedac557a231aa4a85e.patch
|
||||
From 07194b64f7a9c7c473896934339775ab54f1da78 Mon Sep 17 00:00:00 2001
|
||||
From: Nathaniel Wesley Filardo <nwf@auristor.com>
|
||||
Date: Wed, 1 Nov 2017 17:50:59 -0400
|
||||
Subject: [PATCH] Make real prototypes in some places
|
||||
|
||||
--- a/aslr.c
|
||||
+++ b/aslr.c
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
#if defined(HAVE_SYS_PERSONALITY_H) && defined(HAVE_ADDR_NO_RANDOMIZE)
|
||||
void
|
||||
-linux_disable_aslr()
|
||||
+linux_disable_aslr(void)
|
||||
{
|
||||
int r;
|
||||
|
||||
@@ -34,7 +34,7 @@ linux_disable_aslr()
|
||||
}
|
||||
#else /* HAVE_SYS_PERSONALITY_H && HAVE_ADDR_NO_RANDOMIZE */
|
||||
void
|
||||
-other_disable_aslr()
|
||||
+other_disable_aslr(void)
|
||||
{
|
||||
filebench_log(LOG_INFO, "Per-process disabling of ASLR is not "
|
||||
"supported on this system. "
|
||||
--- a/aslr.h
|
||||
+++ b/aslr.h
|
||||
@@ -5,19 +5,19 @@
|
||||
|
||||
#if defined(HAVE_SYS_PERSONALITY_H) && defined(HAVE_ADDR_NO_RANDOMIZE)
|
||||
extern void
|
||||
-linux_disable_aslr();
|
||||
+linux_disable_aslr(void);
|
||||
|
||||
static inline void
|
||||
-disable_aslr()
|
||||
+disable_aslr(void)
|
||||
{
|
||||
return linux_disable_aslr();
|
||||
}
|
||||
#else /* HAVE_SYS_PERSONALITY_H && HAVE_ADDR_NO_RANDOMIZE */
|
||||
extern void
|
||||
-other_disable_aslr();
|
||||
+other_disable_aslr(void);
|
||||
|
||||
static inline void
|
||||
-disable_aslr() {
|
||||
+disable_aslr(void) {
|
||||
return other_disable_aslr();
|
||||
}
|
||||
#endif /* HAVE_SYS_PERSONALITY_H && HAVE_ADDR_NO_RANDOMIZE */
|
||||
--- a/cvars/cvar-erlang.c
|
||||
+++ b/cvars/cvar-erlang.c
|
||||
@@ -122,7 +122,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -155,7 +155,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar-exponential.c
|
||||
+++ b/cvars/cvar-exponential.c
|
||||
@@ -108,7 +108,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -135,7 +135,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar-gamma.c
|
||||
+++ b/cvars/cvar-gamma.c
|
||||
@@ -242,7 +242,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -274,7 +274,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar-lognormal.c
|
||||
+++ b/cvars/cvar-lognormal.c
|
||||
@@ -121,7 +121,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -154,7 +154,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar-normal.c
|
||||
+++ b/cvars/cvar-normal.c
|
||||
@@ -109,7 +109,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -142,7 +142,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar-triangular.c
|
||||
+++ b/cvars/cvar-triangular.c
|
||||
@@ -132,7 +132,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -169,7 +169,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar-uniform.c
|
||||
+++ b/cvars/cvar-uniform.c
|
||||
@@ -115,7 +115,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -147,7 +147,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar-weibull.c
|
||||
+++ b/cvars/cvar-weibull.c
|
||||
@@ -122,7 +122,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void *ptr))
|
||||
cvar_free(handle);
|
||||
}
|
||||
|
||||
-const char *cvar_usage()
|
||||
+const char *cvar_usage(void)
|
||||
{
|
||||
int offset;
|
||||
|
||||
@@ -155,7 +155,7 @@ const char *cvar_usage()
|
||||
return usage;
|
||||
}
|
||||
|
||||
-const char *cvar_version()
|
||||
+const char *cvar_version(void)
|
||||
{
|
||||
return VERSION;
|
||||
}
|
||||
--- a/cvars/cvar.h
|
||||
+++ b/cvars/cvar.h
|
||||
@@ -19,7 +19,7 @@
|
||||
* Return 0 on success and a non-zero error code on failure.
|
||||
*/
|
||||
|
||||
-int cvar_module_init();
|
||||
+int cvar_module_init(void);
|
||||
|
||||
/*
|
||||
* Allocate a new custom variable handle. A handle is subsequently used to
|
||||
@@ -84,7 +84,7 @@ void cvar_free_handle(void *cvar_handle, void (*cvar_free)(void *ptr));
|
||||
* to quit without invoking cvar_module_exit.
|
||||
*/
|
||||
|
||||
-void cvar_module_exit();
|
||||
+void cvar_module_exit(void);
|
||||
|
||||
/*
|
||||
* Show usage, including information on the list of parameters supported and the
|
||||
@@ -95,7 +95,7 @@ void cvar_module_exit();
|
||||
* Return a non-null, formatted string to be displayed on screen.
|
||||
*/
|
||||
|
||||
-const char *cvar_usage();
|
||||
+const char *cvar_usage(void);
|
||||
|
||||
/*
|
||||
* Show version.
|
||||
@@ -105,6 +105,6 @@ const char *cvar_usage();
|
||||
* Return a non-null version string.
|
||||
*/
|
||||
|
||||
-const char *cvar_version();
|
||||
+const char *cvar_version(void);
|
||||
|
||||
#endif /* _CVAR_H */
|
||||
--- a/fb_cvar.c
|
||||
+++ b/fb_cvar.c
|
||||
@@ -204,7 +204,7 @@ static char
|
||||
* Returns 0 on success and non-zero on error.
|
||||
*/
|
||||
int
|
||||
-init_cvar_libraries()
|
||||
+init_cvar_libraries(void)
|
||||
{
|
||||
int count;
|
||||
int ret = -1;
|
||||
@@ -425,7 +425,7 @@ get_cvar_value(cvar_t *cvar)
|
||||
* Return 0 on success and a non-zero error code on failure.
|
||||
*/
|
||||
int
|
||||
-revalidate_cvar_handles()
|
||||
+revalidate_cvar_handles(void)
|
||||
{
|
||||
cvar_t *t;
|
||||
cvar_library_t *cvar_lib;
|
||||
--- a/fb_cvar.h
|
||||
+++ b/fb_cvar.h
|
||||
@@ -59,7 +59,7 @@ typedef struct cvar_operations {
|
||||
int (*cvar_revalidate_handle)(void *cvar_handle);
|
||||
int (*cvar_next_value)(void *cvar_handle, double *value);
|
||||
void (*cvar_free_handle)(void *cvar_handle, void (*cvar_free)(void *ptr));
|
||||
- void (*cvar_module_exit)();
|
||||
+ void (*cvar_module_exit)(void);
|
||||
const char *(*cvar_usage)(void);
|
||||
const char *(*cvar_version)(void);
|
||||
} cvar_operations_t;
|
||||
@@ -78,9 +78,9 @@ extern cvar_library_t **cvar_libraries;
|
||||
|
||||
cvar_t * cvar_alloc(void);
|
||||
int init_cvar_library_info(const char *dirpath);
|
||||
-int init_cvar_libraries();
|
||||
+int init_cvar_libraries(void);
|
||||
int init_cvar_handle(cvar_t *cvar, const char *type, const char *parameters);
|
||||
double get_cvar_value(cvar_t *cvar);
|
||||
-int revalidate_cvar_handles();
|
||||
+int revalidate_cvar_handles(void);
|
||||
|
||||
#endif /* _FB_CVAR_H */
|
||||
--- a/fb_random.c
|
||||
+++ b/fb_random.c
|
||||
@@ -103,7 +103,7 @@ fb_random32(uint32_t *randp,
|
||||
* Same as filebench_randomno64, but for probability [0-1].
|
||||
*/
|
||||
static double
|
||||
-fb_random_probability()
|
||||
+fb_random_probability(void)
|
||||
{
|
||||
uint64_t randnum;
|
||||
|
||||
--- a/fileset.c
|
||||
+++ b/fileset.c
|
||||
@@ -1749,7 +1749,7 @@ fileset_checkraw(fileset_t *fileset)
|
||||
* fail.
|
||||
*/
|
||||
int
|
||||
-fileset_createsets()
|
||||
+fileset_createsets(void)
|
||||
{
|
||||
fileset_t *list;
|
||||
int ret = 0;
|
||||
--- a/fileset.h
|
||||
+++ b/fileset.h
|
||||
@@ -142,7 +142,7 @@ typedef struct fileset {
|
||||
pthread_mutex_t fs_histo_lock; /* lock for incr of histo */
|
||||
} fileset_t;
|
||||
|
||||
-int fileset_createsets();
|
||||
+int fileset_createsets(void);
|
||||
|
||||
void fileset_delete_all_filesets(void);
|
||||
int fileset_openfile(fb_fdesc_t *fd, fileset_t *fileset,
|
||||
--- a/flowop.h
|
||||
+++ b/flowop.h
|
||||
@@ -37,9 +37,9 @@ typedef struct flowop {
|
||||
struct flowop *fo_comp_fops; /* List of flowops in composite fo */
|
||||
var_t *fo_lvar_list; /* List of composite local vars */
|
||||
struct threadflow *fo_thread; /* Backpointer to thread */
|
||||
- int (*fo_func)(); /* Method */
|
||||
- int (*fo_init)(); /* Init Method */
|
||||
- void (*fo_destruct)(); /* Destructor Method */
|
||||
+ int (*fo_func)(threadflow_t *, struct flowop *); /* Method */
|
||||
+ int (*fo_init)(struct flowop *); /* Init Method */
|
||||
+ void (*fo_destruct)(struct flowop *); /* Destructor Method */
|
||||
int fo_type; /* Type */
|
||||
int fo_attrs; /* Flow op attribute */
|
||||
avd_t fo_filename; /* file/fileset name */
|
||||
@@ -118,9 +118,9 @@ typedef struct flowop_proto {
|
||||
int fl_type;
|
||||
int fl_attrs;
|
||||
char *fl_name;
|
||||
- int (*fl_init)();
|
||||
- int (*fl_func)();
|
||||
- void (*fl_destruct)();
|
||||
+ int (*fl_init)(flowop_t *);
|
||||
+ int (*fl_func)(threadflow_t *, flowop_t *);
|
||||
+ void (*fl_destruct)(flowop_t *);
|
||||
} flowop_proto_t;
|
||||
|
||||
extern struct flowstats controlstats;
|
||||
@@ -148,7 +148,7 @@ void flowop_printall(void);
|
||||
void flowop_init(int ismaster);
|
||||
|
||||
/* Local file system specific */
|
||||
-void fb_lfs_funcvecinit();
|
||||
-void fb_lfs_newflowops();
|
||||
+void fb_lfs_funcvecinit(void);
|
||||
+void fb_lfs_newflowops(void);
|
||||
|
||||
#endif /* _FB_FLOWOP_H */
|
||||
--- a/parser_gram.y
|
||||
+++ b/parser_gram.y
|
||||
@@ -69,7 +69,7 @@ static attr_t *alloc_attr(void);
|
||||
static attr_t *alloc_lvar_attr(var_t *var);
|
||||
static attr_t *get_attr(cmd_t *cmd, int64_t name);
|
||||
static void get_attr_lvars(cmd_t *cmd, flowop_t *flowop);
|
||||
-static list_t *alloc_list();
|
||||
+static list_t *alloc_list(void);
|
||||
static probtabent_t *alloc_probtabent(void);
|
||||
static void add_lvar_to_list(var_t *newlvar, var_t **lvar_list);
|
||||
|
||||
@@ -1619,7 +1619,7 @@ master_mode(struct fbparams *fbparams) {
|
||||
}
|
||||
|
||||
static void
|
||||
-init_common()
|
||||
+init_common(void)
|
||||
{
|
||||
disable_aslr();
|
||||
my_pid = getpid();
|
||||
@@ -3117,7 +3117,7 @@ get_attr_lvars(cmd_t *cmd, flowop_t *flowop)
|
||||
* returns a pointer to it. On failure, returns NULL.
|
||||
*/
|
||||
static list_t *
|
||||
-alloc_list()
|
||||
+alloc_list(void)
|
||||
{
|
||||
list_t *list;
|
||||
|
||||
--- a/procflow.c
|
||||
+++ b/procflow.c
|
||||
@@ -560,7 +560,7 @@ procflow_cleanup(procflow_t *procflow)
|
||||
* in which case it returns -1.
|
||||
*/
|
||||
static int
|
||||
-procflow_allstarted()
|
||||
+procflow_allstarted(void)
|
||||
{
|
||||
procflow_t *procflow = filebench_shm->shm_procflowlist;
|
||||
int running_procs = 0;
|
||||
@@ -787,7 +787,7 @@ procflow_define(char *name, avd_t instances)
|
||||
* system.
|
||||
*/
|
||||
void
|
||||
-proc_create()
|
||||
+proc_create(void)
|
||||
{
|
||||
filebench_shm->shm_1st_err = 0;
|
||||
filebench_shm->shm_f_abort = FILEBENCH_OK;
|
||||
@@ -828,7 +828,7 @@ proc_create()
|
||||
* It does not exit the filebench program though.
|
||||
*/
|
||||
void
|
||||
-proc_shutdown()
|
||||
+proc_shutdown(void)
|
||||
{
|
||||
filebench_log(LOG_INFO, "Shutting down processes");
|
||||
procflow_shutdown();
|
||||
From 64a08cf7caa1beb1de078ab1099de0f7a1fed8ec Mon Sep 17 00:00:00 2001
|
||||
From: Marc Dionne <marc.dionne@auristor.com>
|
||||
Date: Mon, 13 Jan 2025 15:12:37 -0400
|
||||
Subject: [PATCH] vars: Avoid using keyword "bool" as an argument name
|
||||
|
||||
With gcc 15, "bool" is a restricted keyword that can't be used as
|
||||
an argument name.
|
||||
|
||||
Signed-off-by: Marc Dionne <marc.dionne@auristor.com>
|
||||
--- a/vars.c
|
||||
+++ b/vars.c
|
||||
@@ -417,7 +417,7 @@ var_find_alloc(char *name)
|
||||
}
|
||||
|
||||
int
|
||||
-var_assign_boolean(char *name, boolean_t bool)
|
||||
+var_assign_boolean(char *name, boolean_t val)
|
||||
{
|
||||
var_t *var;
|
||||
|
||||
@@ -427,7 +427,7 @@ var_assign_boolean(char *name, boolean_t bool)
|
||||
return -1;
|
||||
}
|
||||
|
||||
- VAR_SET_BOOL(var, bool);
|
||||
+ VAR_SET_BOOL(var, val);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -786,7 +786,7 @@ var_lvar_assign_var(char *name, char *src_name)
|
||||
}
|
||||
|
||||
var_t *
|
||||
-var_lvar_assign_boolean(char *name, boolean_t bool)
|
||||
+var_lvar_assign_boolean(char *name, boolean_t val)
|
||||
{
|
||||
var_t *var;
|
||||
|
||||
@@ -797,7 +797,7 @@ var_lvar_assign_boolean(char *name, boolean_t bool)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
- VAR_SET_BOOL(var, bool);
|
||||
+ VAR_SET_BOOL(var, val);
|
||||
|
||||
return var;
|
||||
}
|
||||
From fd3565c371d87a5d6cdebcedac557a231aa4a85e Mon Sep 17 00:00:00 2001
|
||||
From: Nathaniel Wesley Filardo <nwf@auristor.com>
|
||||
Date: Wed, 1 Nov 2017 23:46:20 -0400
|
||||
Subject: [PATCH] vars.h: don't use bool keyword as variable
|
||||
|
||||
--- a/vars.h
|
||||
+++ b/vars.h
|
||||
@@ -160,13 +160,13 @@ typedef struct var {
|
||||
(vp)->var_type = VAR_UNKNOWN; \
|
||||
}
|
||||
|
||||
-avd_t avd_bool_alloc(boolean_t bool);
|
||||
+avd_t avd_bool_alloc(boolean_t boolval);
|
||||
avd_t avd_int_alloc(uint64_t integer);
|
||||
avd_t avd_dbl_alloc(double integer);
|
||||
avd_t avd_str_alloc(char *string);
|
||||
avd_t avd_var_alloc(char *varname);
|
||||
|
||||
-int var_assign_boolean(char *name, boolean_t bool);
|
||||
+int var_assign_boolean(char *name, boolean_t boolval);
|
||||
int var_assign_integer(char *name, uint64_t integer);
|
||||
int var_assign_double(char *name, double dbl);
|
||||
int var_assign_string(char *name, char *string);
|
||||
@@ -0,0 +1,22 @@
|
||||
PR pending / bug #906004
|
||||
https://github.com/filebench/filebench/pull/160.patch
|
||||
From bee9657493f66432a20d1e9e02132da5819b6133 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Tue, 20 Dec 2022 10:11:08 +0100
|
||||
Subject: [PATCH] configure.ac: Improve C99 compatibility of HAVE_IOPRIO check
|
||||
|
||||
Include <unistd.h> to obtain a declaration of the syscall function.
|
||||
Implicit function declarations are likely to be rejected by future
|
||||
compilers by default.
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -370,7 +370,8 @@ AC_TRY_COMPILE([
|
||||
# check for I/O priority system calls
|
||||
AC_MSG_CHECKING(for I/O priority system calls)
|
||||
AC_TRY_COMPILE([
|
||||
- #include <syscall.h>],
|
||||
+ #include <syscall.h>
|
||||
+ #include <unistd.h>],
|
||||
[(void)syscall(__NR_ioprio_set, 0, 0, 0);
|
||||
],[
|
||||
AC_DEFINE(HAVE_IOPRIO, 1, [ Define if you have I/O priority syscalls. ])
|
||||
@@ -6,6 +6,7 @@
|
||||
<flag name="auto-completion">Enable command-line autocompletion using <pkg>dev-libs/libtecla</pkg></flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="sourceforge">filebench</remote-id>
|
||||
<remote-id type="sourceforge">filebench</remote-id><!-- old -->
|
||||
<remote-id type="github">filebench/filebench</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
||||
Reference in New Issue
Block a user