Skip to content

OOM during unifont font loading #47

Description

@gioyous-it
----- Minosoft Crash Report -----
// //TODO: What the hell is causing this?

-- General information --
    Time: 2026-08-28 15:17:21 (1787923041)
    Thread: RenderingPool#0
    Notes: -/-

-- Stacktrace --
    java.lang.Exception: Exception in rendering: 14
    	at de.bixilon.minosoft.gui.rendering.RenderLoader$load$$inlined$runAsync$default$2.run(RenderUtil.kt:39)
    	at de.bixilon.kutil.concurrent.pool.ThreadPoolExecutor.execute(ThreadPoolExecutor.kt:26)
    	at de.bixilon.kutil.concurrent.pool.threads.ThreadPoolThread.loop(ThreadPoolThread.kt:49)
    	at de.bixilon.kutil.concurrent.pool.threads.ThreadPoolThread.run(ThreadPoolThread.kt:31)
    Caused by: java.lang.OutOfMemoryError: Cannot reserve 4194304 bytes of direct buffer memory (allocated: 863774982, limit: 864026624)
    	at java.base/java.nio.Bits.reserveMemory(Bits.java:188)
    	at java.base/java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:109)
    	at java.base/java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:367)
    	at de.bixilon.minosoft.gui.rendering.system.base.texture.data.buffer.RGBA8Buffer.<init>(RGBA8Buffer.kt:33)
    	at de.bixilon.minosoft.gui.rendering.system.base.texture.data.buffer.RGBA8Buffer.<init>(RGBA8Buffer.kt)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnifontTexture.<init>(UnifontTexture.kt:37)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnifontRasterizer.createTexture(UnifontRasterizer.kt:60)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnifontRasterizer.forceAdd(UnifontRasterizer.kt:50)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnifontRasterizer.add(UnifontRasterizer.kt:38)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnihexFontType$Companion.load(UnihexFontType.kt:75)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnihexFontType$Companion.load(UnihexFontType.kt:66)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnihexFontType$Companion.build(UnihexFontType.kt:49)
    	at de.bixilon.minosoft.gui.rendering.font.types.unicode.unihex.UnihexFontType$Companion.build(UnihexFontType.kt:42)
    	at de.bixilon.minosoft.gui.rendering.font.loader.FontLoader.load$lambda$1(FontLoader.kt:51)
    	at de.bixilon.kutil.concurrent.worker.unconditional.UnconditionalWorker.run(UnconditionalWorker.kt:62)
    	at de.bixilon.kutil.concurrent.worker.unconditional.UnconditionalWorker.work(UnconditionalWorker.kt:96)
    	at de.bixilon.minosoft.gui.rendering.font.loader.FontLoader.load(FontLoader.kt:54)
    	at de.bixilon.minosoft.gui.rendering.font.manager.FontManager.load(FontManager.kt:55)
    	at de.bixilon.minosoft.gui.rendering.font.types.ReferenceFontType.build(ReferenceFontType.kt:28)
    	at de.bixilon.minosoft.gui.rendering.font.loader.FontLoader.load$lambda$1(FontLoader.kt:51)
    	at de.bixilon.kutil.concurrent.worker.unconditional.UnconditionalWorker.run(UnconditionalWorker.kt:62)
    	at de.bixilon.kutil.concurrent.worker.unconditional.UnconditionalWorker.work(UnconditionalWorker.kt:96)
    	at de.bixilon.minosoft.gui.rendering.font.loader.FontLoader.load(FontLoader.kt:54)
    	at de.bixilon.minosoft.gui.rendering.font.manager.FontManager.load(FontManager.kt:55)
    	at de.bixilon.minosoft.gui.rendering.font.manager.FontManager$Companion.create(FontManager.kt:67)
    	at de.bixilon.minosoft.gui.rendering.RenderLoader$load$$inlined$runAsync$default$2.run(RenderUtil.kt:65)
    	... 3 more
    

-- Runtime details --
    Start arguments: []
    JVM flags: []
    Environment: {KDE_SESSION_UID=1000, XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session1, MANAGERPIDFDID=5680, KONSOLE_DBUS_ACTIVATION_COOKIE=/lUfmMW7g5jZpfFZlX/rNg69WspZiSy2s6t7puEDeEU=, KDE_APPLICATIONS_AS_SCOPE=1, LC_TIME=it_IT.UTF-8, XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0, IM_CONFIG_ENTRY=profile, _JAVA_AWT_WM_NONREPARENTING=1, XKB_DEFAULT_VARIANT=scn, PATH=/home/sortino/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/sortino/.local/bin:/home/sortino/.local/bin, LESSCLOSE=/usr/bin/lesspipe %s %s, LOGNAME=sortino, XDG_MENU_PREFIX=plasma-, LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.swp=00;90:*.tmp=00;90:*.dpkg-dist=00;90:*.dpkg-old=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:, XDG_CONFIG_DIRS=/home/sortino/.config/kdedefaults:/etc/xdg:/usr/share/kubuntu-default-settings/kf5-settings, WAYLAND_DISPLAY=wayland-0, SSH_ASKPASS=/usr/bin/ksshaskpass, XAUTHORITY=/run/user/1000/xauth_lDMOOE, LC_PAPER=it_IT.UTF-8, LC_MEASUREMENT=it_IT.UTF-8, XDG_SESSION_ID=3, SSH_ASKPASS_REQUIRE=prefer, KONSOLE_DBUS_WINDOW=/Windows/1, QT_ACCESSIBILITY=1, XKB_DEFAULT_LAYOUT=it, XDG_SEAT=seat0, XDG_VTNR=2, XDG_SESSION_DESKTOP=KDE, DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus, LC_TELEPHONE=it_IT.UTF-8, INVOCATION_ID=3a5d10e8266f40fabcc090a2d7053c84, LC_ADDRESS=it_IT.UTF-8, SHLVL=1, ICEAUTHORITY=/run/user/1000/iceauth_oQswkj, XDG_DATA_DIRS=/home/sortino/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:/var/lib/snapd/desktop, SHELL=/bin/bash, XDG_SESSION_CLASS=user, COLORTERM=truecolor, SESSION_MANAGER=local/gioyous-it:@/tmp/.ICE-unix/3045,unix/gioyous-it:/tmp/.ICE-unix/3045, LC_IDENTIFICATION=it_IT.UTF-8, DISPLAY=:0, HOME=/home/sortino, MEMORY_PRESSURE_WATCH=/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/session.slice/plasma-plasmashell.service/memory.pressure, COLORFGBG=15;0, XDG_CURRENT_DESKTOP=KDE, DEBUGINFOD_URLS=https://debuginfod.ubuntu.com , TERM=xterm-256color, KONSOLE_DBUS_SESSION=/Sessions/1, KDE_SESSION_VERSION=6, LC_NUMERIC=it_IT.UTF-8, LC_NAME=it_IT.UTF-8, GTK_RC_FILES=/etc/gtk/gtkrc:/home/sortino/.gtkrc:/home/sortino/.config/gtkrc, LANG=en_US.UTF-8, LESSOPEN=| /usr/bin/lesspipe %s, PROFILEHOME=, WINDOWID=110413210307280, GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:/home/sortino/.gtkrc-2.0:/home/sortino/.config/gtkrc-2.0, KONSOLE_VERSION=251203, LANGUAGE=, QT_WAYLAND_RECONNECT=1, MEMORY_PRESSURE_WRITE=c29tZSAyMDAwMDAgMjAwMDAwMAA=, SYSTEMD_EXEC_PID=3093, OPENROUTER_API_KEY=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, XDG_RUNTIME_DIR=/run/user/1000, KONSOLE_DBUS_SERVICE=:1.70, XKB_DEFAULT_MODEL=pc105, SSH_AUTH_SOCK=/run/user/1000/openssh_agent, PAM_KWALLET5_LOGIN=/run/user/1000/kwallet5.socket, GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1, MANAGERPID=2718, DESKTOP_SESSION=plasma, USER=sortino, KDE_FULL_SESSION=true, XDG_SESSION_TYPE=wayland, LC_MONETARY=it_IT.UTF-8, PWD=/home/sortino, _=/usr/bin/java, JOURNAL_STREAM=10:22181, SHELL_SESSION_ID=bd704eeedec84c658320e51ee72f8d84}
    Home path: /home/sortino/.local/share/minosoft
    Profiles path: /home/sortino/.config/minosoft

-- System information --
    Operating system: Linux: Ubuntu 64bit
    Platform os: linux
    Platform architecture: amd64
    Java: 26.0.1+8-2-26.04.2-Ubuntu 64bit
    Memory: 3.2 GiB
    Processor: 2x AMD 3020e with Radeon Graphics

-- Graphic Cards --
    #0
        Name: Picasso/Raven 2 [Radeon Vega Series / Radeon Vega Mobile Series]
        Device id: 0x15d8
        VRam: 0
        Vendor: Advanced Micro Devices, Inc. [AMD/ATI] (0x1002)
        Version info: Rev:	df

-- Sessions --
    #0
        Id: 3
        Version: 1.8.9
        Account: gioyous
        Address: forums.hypixel.net
        Brand: unknown
        Events: 46
        State: DISCONNECTED
        Network state: null
        Compression threshold: -1
        Encrypted: false
        Was connected: true
        Rendering: true
        Error: de.bixilon.minosoft.protocol.network.network.client.netty.exceptions.PacketHandleException
    #1
        Id: 14
        Version: 1.20.4
        Account: gioyous
        Address: alt3.6b6t.org
        Brand: unknown
        Events: 18
        State: DISCONNECTED
        Network state: null
        Compression threshold: null
        Encrypted: null
        Was connected: false
        Rendering: true
        Error: java.lang.OutOfMemoryError: Cannot reserve 4194304 bytes of direct buffer memory (allocated: 863774982, limit: 864026624)
    #2
        Id: 5
        Version: 1.20.4
        Account: gioyous
        Address: play.boholmc.net
        Brand: unknown
        Events: 47
        State: DISCONNECTED
        Network state: null
        Compression threshold: -1
        Encrypted: false
        Was connected: true
        Rendering: true
        Error: io.netty.handler.codec.EncoderException: PacketEncoder must produce at least one message.
    #3
        Id: 6
        Version: 1.20.4
        Account: gioyous
        Address: play.boholmc.net
        Brand: unknown
        Events: 47
        State: DISCONNECTED
        Network state: null
        Compression threshold: -1
        Encrypted: false
        Was connected: true
        Rendering: true
        Error: io.netty.handler.codec.EncoderException: PacketEncoder must produce at least one message.
    #4
        Id: 7
        Version: 1.20.4
        Account: gioyous
        Address: play.boholmc.net
        Brand: unknown
        Events: 47
        State: DISCONNECTED
        Network state: null
        Compression threshold: -1
        Encrypted: false
        Was connected: true
        Rendering: true
        Error: io.netty.handler.codec.EncoderException: PacketEncoder must produce at least one message.

-- Properties --
    Version name: 7c82b9516d
    Stable: false

-- Git --
    Commit: 7c82b9516dec505bf8affe2e70751855aa857bb8
    Branch: master
    Dirty: false

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions