mirror of
https://codeberg.org/anoncontributorxmr/monero.git
synced 2024-11-30 03:03:17 +00:00
Merge pull request #8706
f456b3f
Demote large pages warning to mdebug (SChernykh)480b050
RandomX: print VM allocation warnings only once (SChernykh)
This commit is contained in:
commit
057a77a09f
1 changed files with 15 additions and 4 deletions
|
@ -43,6 +43,9 @@
|
||||||
|
|
||||||
#define RX_LOGCAT "randomx"
|
#define RX_LOGCAT "randomx"
|
||||||
|
|
||||||
|
// Report large page allocation failures as debug messages
|
||||||
|
#define alloc_err_msg(x) mdebug(RX_LOGCAT, x);
|
||||||
|
|
||||||
static CTHR_RWLOCK_TYPE main_dataset_lock = CTHR_RWLOCK_INIT;
|
static CTHR_RWLOCK_TYPE main_dataset_lock = CTHR_RWLOCK_INIT;
|
||||||
static CTHR_RWLOCK_TYPE main_cache_lock = CTHR_RWLOCK_INIT;
|
static CTHR_RWLOCK_TYPE main_cache_lock = CTHR_RWLOCK_INIT;
|
||||||
|
|
||||||
|
@ -212,7 +215,7 @@ static void rx_alloc_dataset(randomx_flags flags, randomx_dataset** dataset, int
|
||||||
|
|
||||||
*dataset = randomx_alloc_dataset((flags | RANDOMX_FLAG_LARGE_PAGES) & ~disabled_flags());
|
*dataset = randomx_alloc_dataset((flags | RANDOMX_FLAG_LARGE_PAGES) & ~disabled_flags());
|
||||||
if (!*dataset) {
|
if (!*dataset) {
|
||||||
mwarning(RX_LOGCAT, "Couldn't allocate RandomX dataset using large pages");
|
alloc_err_msg("Couldn't allocate RandomX dataset using large pages");
|
||||||
*dataset = randomx_alloc_dataset(flags & ~disabled_flags());
|
*dataset = randomx_alloc_dataset(flags & ~disabled_flags());
|
||||||
if (!*dataset) {
|
if (!*dataset) {
|
||||||
merror(RX_LOGCAT, "Couldn't allocate RandomX dataset");
|
merror(RX_LOGCAT, "Couldn't allocate RandomX dataset");
|
||||||
|
@ -228,7 +231,7 @@ static void rx_alloc_cache(randomx_flags flags, randomx_cache** cache)
|
||||||
|
|
||||||
*cache = randomx_alloc_cache((flags | RANDOMX_FLAG_LARGE_PAGES) & ~disabled_flags());
|
*cache = randomx_alloc_cache((flags | RANDOMX_FLAG_LARGE_PAGES) & ~disabled_flags());
|
||||||
if (!*cache) {
|
if (!*cache) {
|
||||||
mwarning(RX_LOGCAT, "Couldn't allocate RandomX cache using large pages");
|
alloc_err_msg("Couldn't allocate RandomX cache using large pages");
|
||||||
*cache = randomx_alloc_cache(flags & ~disabled_flags());
|
*cache = randomx_alloc_cache(flags & ~disabled_flags());
|
||||||
if (!*cache) local_abort("Couldn't allocate RandomX cache");
|
if (!*cache) local_abort("Couldn't allocate RandomX cache");
|
||||||
}
|
}
|
||||||
|
@ -246,7 +249,11 @@ static void rx_init_full_vm(randomx_flags flags, randomx_vm** vm)
|
||||||
|
|
||||||
*vm = randomx_create_vm((flags | RANDOMX_FLAG_LARGE_PAGES | RANDOMX_FLAG_FULL_MEM) & ~disabled_flags(), NULL, main_dataset);
|
*vm = randomx_create_vm((flags | RANDOMX_FLAG_LARGE_PAGES | RANDOMX_FLAG_FULL_MEM) & ~disabled_flags(), NULL, main_dataset);
|
||||||
if (!*vm) {
|
if (!*vm) {
|
||||||
mwarning(RX_LOGCAT, "Couldn't allocate RandomX full VM using large pages");
|
static int shown = 0;
|
||||||
|
if (!shown) {
|
||||||
|
shown = 1;
|
||||||
|
alloc_err_msg("Couldn't allocate RandomX full VM using large pages (will print only once)");
|
||||||
|
}
|
||||||
*vm = randomx_create_vm((flags | RANDOMX_FLAG_FULL_MEM) & ~disabled_flags(), NULL, main_dataset);
|
*vm = randomx_create_vm((flags | RANDOMX_FLAG_FULL_MEM) & ~disabled_flags(), NULL, main_dataset);
|
||||||
if (!*vm) {
|
if (!*vm) {
|
||||||
merror(RX_LOGCAT, "Couldn't allocate RandomX full VM");
|
merror(RX_LOGCAT, "Couldn't allocate RandomX full VM");
|
||||||
|
@ -269,7 +276,11 @@ static void rx_init_light_vm(randomx_flags flags, randomx_vm** vm, randomx_cache
|
||||||
|
|
||||||
*vm = randomx_create_vm((flags | RANDOMX_FLAG_LARGE_PAGES) & ~disabled_flags(), cache, NULL);
|
*vm = randomx_create_vm((flags | RANDOMX_FLAG_LARGE_PAGES) & ~disabled_flags(), cache, NULL);
|
||||||
if (!*vm) {
|
if (!*vm) {
|
||||||
mwarning(RX_LOGCAT, "Couldn't allocate RandomX light VM using large pages");
|
static int shown = 0;
|
||||||
|
if (!shown) {
|
||||||
|
shown = 1;
|
||||||
|
alloc_err_msg("Couldn't allocate RandomX light VM using large pages (will print only once)");
|
||||||
|
}
|
||||||
*vm = randomx_create_vm(flags & ~disabled_flags(), cache, NULL);
|
*vm = randomx_create_vm(flags & ~disabled_flags(), cache, NULL);
|
||||||
if (!*vm) local_abort("Couldn't allocate RandomX light VM");
|
if (!*vm) local_abort("Couldn't allocate RandomX light VM");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue