Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Raspberry Pi 5 error: <jemalloc>: Unsupported system page size #223

Closed
openoms opened this issue Jan 2, 2024 · 6 comments
Closed

Raspberry Pi 5 error: <jemalloc>: Unsupported system page size #223

openoms opened this issue Jan 2, 2024 · 6 comments

Comments

@openoms
Copy link

openoms commented Jan 2, 2024

Running Fulcrum v1.9.7 fails on a new Raspberry Pi 5 with the latest Raspberry OS based on Debian 12:

uname -a
Linux raspberrypi 6.1.0-rpi4-rpi-2712 #1 SMP PREEMPT Debian 1:6.1.54-1+rpt2 (2023-10-05) aarch64 GNU/Linux

The error:

sudo -u fulcrum ./Fulcrum /home/fulcrum/.fulcrum/fulcrum.conf
<jemalloc>: Unsupported system page size
<jemalloc>: Unsupported system page size
<jemalloc>: Unsupported system page size
terminate called without an active exception
Aborted

My config:

datadir = /home/fulcrum/.fulcrum/db
bitcoind = 127.0.0.1:8332
rpcuser = raspibolt
rpcpassword = xxxxxxxxxxx
# RPi optimizations
# avoid 'bitcoind request timed out'
bitcoind_timeout = 600
# reduce load (4 cores only)
bitcoind_clients = 1
worker_threads = 1
db_mem=1024
# for 4GB RAM
db_max_open_files=200
fast-sync = 1024
# server connections
# disable peer discovery and public server options
peering = false
announce = false
tcp = 0.0.0.0:50021
# ssl via nginx

Discussed here: raspiblitz/raspiblitz#4346

the PAGE_SIZE:

₿ getconf PAGE_SIZE
16384

jemalloc might not be available in this kernel. Could it be disabled until there is a better solution?
Example in Home Assistant: https://www.home-assistant.io/installation/alternative#optimizations

@cculianu
Copy link
Owner

cculianu commented Jan 2, 2024

You may have to build from source yourself. Or google if there is some env var to disable it. I’m not at computer now — cannot google.

@openoms
Copy link
Author

openoms commented Jan 2, 2024

First will try to build on a newer version of the Raspberry OS as got report of it working with using
kernel=kernel8.img in the /boot/config.txt on :

linux raspibolt 6.1.0-rpi7-rpi-2712 #1 SMP PREEMPT Debian 1:6.1.63-1+rpt1 (2023-11-24) aarch64 GNU/Linux

https://t.me/raspibolt/23065

@openoms
Copy link
Author

openoms commented Jan 2, 2024

Found that it is actually the higher PAGE_SIZE which causes the error.The The default on the RPi5 is :

getconf PAGE_SIZE
16384

using:
kernel=kernel8.img in the /boot/config.txt
changes it back to:

getconf PAGE_SIZE
4096

and Fulcrum runs fine.

So the question is if we could make the jemalloc work with the 16k PAGE_SIZE ?

@cculianu
Copy link
Owner

cculianu commented Jan 2, 2024

Not sure about that -- why not open an issue with the jemalloc repo (they're on github too).

@openoms
Copy link
Author

openoms commented Jan 3, 2024

jemalloc is already on this growing list: raspberrypi/bookworm-feedback#107

Closing this as it will not be solved in this repo, but let it serve as a reference point for others experiencing the same.

The solution is to place the line:

kernel=kernel8.img

in the beginning of /boot/config.txt

and restart the RPi.

@openoms openoms closed this as completed Jan 3, 2024
@cculianu
Copy link
Owner

cculianu commented Jan 3, 2024

Thanks yeah. It really is an issue with them and outside the scope/control I have in Fulcrum. Thanks for posting the issue and finding the solution thought!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants