Skip to content
This repository has been archived by the owner on Mar 5, 2024. It is now read-only.

Yuzu running on Nintendo Switch (solved) #911

Closed
theofficialgman opened this issue Feb 5, 2023 · 21 comments
Closed

Yuzu running on Nintendo Switch (solved) #911

theofficialgman opened this issue Feb 5, 2023 · 21 comments
Labels
arm64 Issues specific to AArch64 CPU bug Something isn't working

Comments

@theofficialgman
Copy link

yuzu Version

1329

Description

attempt to run any game (tested some homebrew and mario odyssey). crashes immediatly before the game window even shows up

Reproduction Certainty

Always

System Information

ystem:    Host: garrett-usb Kernel: 4.9.140-l4t aarch64 bits: 32 gcc: 7.3.1 Desktop: Budgie 10.5 (Gtk 3.22.30)
           Distro: Ubuntu 18.04.6 LTS
Machine:   No /sys/class/dmi; using dmidecode: no smbios data. Old system?
CPU:       Quad core ARMv8 rev 1 (v8l) (-MCP-)  bmips:  arch: ARM
           clock speeds: max: 2091 MHz 1: 2091 MHz 2: 2091 MHz 3: 2091 MHz 4: 2091 MHz
Graphics:  Card: Failed to Detect Video Card!
           Display Server: x11 (X.Org 1.19.6 ) driver: nvidia Resolution: [email protected]
           OpenGL: renderer: NVIDIA Tegra X1 (nvgpu)/integrated version: 4.6.0 NVIDIA 32.3.1 Direct Render: Yes
Network:   Card: Broadcom and subsidiaries BCM4356 802.11ac Wireless Network Adapter
           driver: brcmfmac bus-ID: 01:00.0
           IF: wlp1s0 state: down mac: 98:b6:e9:84:b1:07
Drives:    HDD Total Size: NA (-)
           ID-1: model: N/A
Info:      Processes: 329 Uptime: 12:53 Memory: 1873.7/3990.0MB Init: systemd runlevel: 5 Gcc sys: 7.5.0
           Client: Shell (bash 4.4.201) inxi: 2.3.56

Logs and Backtraces

yuzu_log.txt

output when run via terminal

Unhandled SIGSEGV at pc 0x0000005594c040dc
/app/bin/yuzu-launcher: line 25:    13 Segmentation fault      (core dumped) prlimit --nofile=8192 yuzu "$@"

Remarks

No response

@theofficialgman theofficialgman added the bug Something isn't working label Feb 5, 2023
@liushuyu
Copy link
Collaborator

liushuyu commented Feb 5, 2023

attempt to run any game (tested some homebrew and mario odyssey). crashes immediatly before the game window even shows up

Sorry, our arm64 build is currently very experimental. Please go to the settings, change the graphics API to Vulkan, and try again.

@liushuyu liushuyu added investigating Currently under investigation arm64 Issues specific to AArch64 CPU labels Feb 5, 2023
@theofficialgman
Copy link
Author

It already was on vulkan. And changing it to opengl just states that yuzu wasn't compiled with opengl support

@liushuyu
Copy link
Collaborator

liushuyu commented Feb 5, 2023

It already was on vulkan. And changing it to opengl just states that yuzu wasn't compiled with opengl support

I see. Then it must be a device-specific issue. We have tested several games on an Apple M1 device (running Asahi Linux).

It seems like your device is an NVIDIA Tegra X1. Is this a developer board, or is this a consumer electronic (like modified Switch running Linux?)

@liushuyu
Copy link
Collaborator

liushuyu commented Feb 5, 2023

here is a backtrace
backtrace.txt

We will investigate this. Which game were you trying to run when you got this backtrace?

@theofficialgman
Copy link
Author

that was mario odyssey (version 1.0)

@liamwhite
Copy link
Contributor

If you could get me directions on how to reproduce this from scratch on a Switch, I'd be happy to look into it.

@theofficialgman
Copy link
Author

theofficialgman commented Feb 5, 2023

If you could get me directions on how to reproduce this from scratch on a Switch, I'd be happy to look into it.

@liamwhite
step one, you need either an unpatched switch or a patched switch with a modchip capable of booting into hekate

then follow our guide on how to install L4T 5.0.0 linux https://wiki.switchroot.org/en/Linux/Ubuntu-Install-Guide

after you follow that you should be able to boot into L4T Ubuntu Bionic. You are probably going to want a keyboard/mouse when docked though it isn't strictly necessary. Once you get into the OS and setup your user, go to your applications list (top left) and search for "L4T Megascript", it is a pre-installed GUI to help install common programs.

Run it and once you get to the main GUI install any application. On first run it will run some commands (installs a custom org.freedesktop.Platform.GL.nvidia-tegra-32-3-1 flatpak runtime made by myself) to get nvidia GPU driver support in flatpak. You will likely get a few popups on first install (I suggest just using our Auto Updater script) asking if you want to remove Snaps from the gnome software center which you should do.

After your selected script is run and the megascript says goodby, now is a good time to reboot. You should then be able to use the gnome software center (just called 'software' in the apps list) to install any apt or flatpak packages from flathub.

if you need any help with any of that feel free to ping me @theofficialgman in the Switchroot Discord which you can find linked in the guide

@liamwhite
Copy link
Contributor

The cause is that the system runs out of memory and can't map 4GB here: https://github.com/yuzu-emu/yuzu/blob/master/src/common/virtual_buffer.cpp#L22

This happens before the logging backend initializes so it ends up being a completely invisible failure.

@theofficialgman
Copy link
Author

ah, well that would happen on a system with only 4GB of ram for sure.
I added a large swapfie to get pass that and now get these errors when running the homebrew or odyssey

are these missing vulkan extensions in core of a version or not?

[   1.385682] Input <Info> input_common/drivers/udp_client.cpp:UDPClient:139: Udp Initialization started
[   1.385721] Input <Info> input_common/drivers/udp_client.cpp:StartCommunication:331: Starting communication with UDP input server on 127.0.0.1:26760
[   1.443769] Input <Info> input_common/drivers/joycon.cpp:Joycons:22: Joycon driver Initialization started
[   1.831543] Frontend <Info> yuzu/main.cpp:GMainWindow:354: yuzu Version: yuzu 1329
[   1.831547] Frontend <Info> yuzu/main.cpp:LogRuntimes:244: Qt Compile: 5.15.8 Runtime: 5.15.8
[   1.831550] Frontend <Info> yuzu/main.cpp:GMainWindow:375: Host CPU Threads: 4
[   1.840811] Frontend <Info> yuzu/main.cpp:GMainWindow:376: Host OS: KDE Flatpak runtime
[   1.840832] Frontend <Info> yuzu/main.cpp:GMainWindow:377: Host RAM: 3.90 GiB
[   1.840834] Frontend <Info> yuzu/main.cpp:GMainWindow:379: Host Swap: 5.00 GiB
[   2.988572] Frontend <Warning> yuzu/main.cpp:SetupPrepareForSleep:1412: QDBusConnection system bus is not connected
[   7.819830] Service.Audio <Info> audio_core/sink/sink_details.cpp:GetOutputSinkDetails:84: Auto-selecting the sdl2 backend
[   7.853899] Service.Audio <Info> audio_core/sink/sink_details.cpp:GetOutputSinkDetails:84: Auto-selecting the sdl2 backend
[  21.423417] Config <Info> common/settings.cpp:LogSettings:40: yuzu Configuration:
[  21.423460] Config <Info> common/settings.cpp:operator():33: Controls_UseDockedMode: true
[  21.423466] Config <Info> common/settings.cpp:operator():33: System_RngSeed: 0
[  21.423468] Config <Info> common/settings.cpp:operator():33: System_DeviceName: Yuzu
[  21.423470] Config <Info> common/settings.cpp:operator():33: System_CurrentUser: 0
[  21.423472] Config <Info> common/settings.cpp:operator():33: System_LanguageIndex: 1
[  21.423474] Config <Info> common/settings.cpp:operator():33: System_RegionIndex: 1
[  21.423476] Config <Info> common/settings.cpp:operator():33: System_TimeZoneIndex: 0
[  21.423477] Config <Info> common/settings.cpp:operator():33: Core_UseMultiCore: true
[  21.423482] Config <Info> common/settings.cpp:operator():33: CPU_Accuracy: 0
[  21.423484] Config <Info> common/settings.cpp:operator():33: Renderer_UseResolutionScaling: 2
[  21.423486] Config <Info> common/settings.cpp:operator():33: Renderer_ScalingFilter: 1
[  21.423487] Config <Info> common/settings.cpp:operator():33: Renderer_FSRSlider: 25
[  21.423489] Config <Info> common/settings.cpp:operator():33: Renderer_AntiAliasing: 0
[  21.423490] Config <Info> common/settings.cpp:operator():33: Renderer_UseSpeedLimit: true
[  21.423492] Config <Info> common/settings.cpp:operator():33: Renderer_SpeedLimit: 100
[  21.423493] Config <Info> common/settings.cpp:operator():33: Renderer_UseDiskShaderCache: true
[  21.423495] Config <Info> common/settings.cpp:operator():33: Renderer_GPUAccuracyLevel: 1
[  21.423497] Config <Info> common/settings.cpp:operator():33: Renderer_UseAsynchronousGpuEmulation: true
[  21.423499] Config <Info> common/settings.cpp:operator():33: Renderer_NvdecEmulation: 2
[  21.423500] Config <Info> common/settings.cpp:operator():33: Renderer_AccelerateASTC: true
[  21.423502] Config <Info> common/settings.cpp:operator():33: Renderer_UseVsync: true
[  21.423503] Config <Info> common/settings.cpp:operator():33: Renderer_ShaderBackend: 0
[  21.423505] Config <Info> common/settings.cpp:operator():33: Renderer_UseAsynchronousShaders: false
[  21.423507] Config <Info> common/settings.cpp:operator():33: Renderer_AnisotropicFilteringLevel: 0
[  21.423510] Config <Info> common/settings.cpp:operator():33: Audio_OutputEngine: auto
[  21.423512] Config <Info> common/settings.cpp:operator():33: Audio_OutputDevice: auto
[  21.423514] Config <Info> common/settings.cpp:operator():33: Audio_InputDevice: auto
[  21.423515] Config <Info> common/settings.cpp:operator():33: DataStorage_UseVirtualSd: true
[  21.423520] Config <Info> common/settings.cpp:operator():37: DataStorage_CacheDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/cache/yuzu
[  21.423522] Config <Info> common/settings.cpp:operator():37: DataStorage_ConfigDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/config/yuzu
[  21.423524] Config <Info> common/settings.cpp:operator():37: DataStorage_LoadDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/data/yuzu/load
[  21.423526] Config <Info> common/settings.cpp:operator():37: DataStorage_NANDDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/data/yuzu/nand
[  21.423528] Config <Info> common/settings.cpp:operator():37: DataStorage_SDMCDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/data/yuzu/sdmc
[  21.423530] Config <Info> common/settings.cpp:operator():33: Debugging_ProgramArgs: 
[  21.423531] Config <Info> common/settings.cpp:operator():33: Debugging_GDBStub: false
[  21.423532] Config <Info> common/settings.cpp:operator():33: Input_EnableMotion: true
[  21.423534] Config <Info> common/settings.cpp:operator():33: Input_EnableVibration: true
[  21.423535] Config <Info> common/settings.cpp:operator():33: Input_EnableRawInput: false
[  22.785392] Frontend <Info> yuzu/main.cpp:BootGame:1662: yuzu starting...
[  22.855620] Config <Info> common/settings.cpp:LogSettings:40: yuzu Configuration:
[  22.855645] Config <Info> common/settings.cpp:operator():33: Controls_UseDockedMode: true
[  22.855648] Config <Info> common/settings.cpp:operator():33: System_RngSeed: 0
[  22.855650] Config <Info> common/settings.cpp:operator():33: System_DeviceName: Yuzu
[  22.855652] Config <Info> common/settings.cpp:operator():33: System_CurrentUser: 0
[  22.855654] Config <Info> common/settings.cpp:operator():33: System_LanguageIndex: 1
[  22.855656] Config <Info> common/settings.cpp:operator():33: System_RegionIndex: 1
[  22.855657] Config <Info> common/settings.cpp:operator():33: System_TimeZoneIndex: 0
[  22.855662] Config <Info> common/settings.cpp:operator():33: Core_UseMultiCore: true
[  22.855665] Config <Info> common/settings.cpp:operator():33: CPU_Accuracy: 0
[  22.855667] Config <Info> common/settings.cpp:operator():33: Renderer_UseResolutionScaling: 2
[  22.855669] Config <Info> common/settings.cpp:operator():33: Renderer_ScalingFilter: 1
[  22.855670] Config <Info> common/settings.cpp:operator():33: Renderer_FSRSlider: 25
[  22.855672] Config <Info> common/settings.cpp:operator():33: Renderer_AntiAliasing: 0
[  22.855673] Config <Info> common/settings.cpp:operator():33: Renderer_UseSpeedLimit: true
[  22.855675] Config <Info> common/settings.cpp:operator():33: Renderer_SpeedLimit: 100
[  22.855678] Config <Info> common/settings.cpp:operator():33: Renderer_UseDiskShaderCache: true
[  22.855680] Config <Info> common/settings.cpp:operator():33: Renderer_GPUAccuracyLevel: 1
[  22.855681] Config <Info> common/settings.cpp:operator():33: Renderer_UseAsynchronousGpuEmulation: true
[  22.855683] Config <Info> common/settings.cpp:operator():33: Renderer_NvdecEmulation: 2
[  22.855684] Config <Info> common/settings.cpp:operator():33: Renderer_AccelerateASTC: true
[  22.855685] Config <Info> common/settings.cpp:operator():33: Renderer_UseVsync: true
[  22.855687] Config <Info> common/settings.cpp:operator():33: Renderer_ShaderBackend: 0
[  22.855688] Config <Info> common/settings.cpp:operator():33: Renderer_UseAsynchronousShaders: false
[  22.855691] Config <Info> common/settings.cpp:operator():33: Renderer_AnisotropicFilteringLevel: 0
[  22.855693] Config <Info> common/settings.cpp:operator():33: Audio_OutputEngine: auto
[  22.855694] Config <Info> common/settings.cpp:operator():33: Audio_OutputDevice: auto
[  22.855695] Config <Info> common/settings.cpp:operator():33: Audio_InputDevice: auto
[  22.855696] Config <Info> common/settings.cpp:operator():33: DataStorage_UseVirtualSd: true
[  22.855700] Config <Info> common/settings.cpp:operator():37: DataStorage_CacheDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/cache/yuzu
[  22.855703] Config <Info> common/settings.cpp:operator():37: DataStorage_ConfigDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/config/yuzu
[  22.855704] Config <Info> common/settings.cpp:operator():37: DataStorage_LoadDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/data/yuzu/load
[  22.855707] Config <Info> common/settings.cpp:operator():37: DataStorage_NANDDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/data/yuzu/nand
[  22.855709] Config <Info> common/settings.cpp:operator():37: DataStorage_SDMCDir: /home/garrett/.var/app/org.yuzu_emu.yuzu/data/yuzu/sdmc
[  22.855711] Config <Info> common/settings.cpp:operator():33: Debugging_ProgramArgs: 
[  22.855712] Config <Info> common/settings.cpp:operator():33: Debugging_GDBStub: false
[  22.855714] Config <Info> common/settings.cpp:operator():33: Input_EnableMotion: true
[  22.855715] Config <Info> common/settings.cpp:operator():33: Input_EnableVibration: true
[  22.855716] Config <Info> common/settings.cpp:operator():33: Input_EnableRawInput: false
[  24.431042] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_extended_dynamic_state
[  24.431059] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_extended_dynamic_state2
[  24.431061] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_extended_dynamic_state3
[  24.431063] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_line_rasterization
[  24.431066] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_vertex_input_dynamic_state
[  24.431073] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:681: Missing required extension VK_EXT_robustness2
[  24.431082] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature customBorderColors
[  24.431085] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature extendedDynamicState
[  24.431087] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature indexTypeUint8
[  24.431089] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature primitiveTopologyListRestart
[  24.431091] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature provokingVertexLast
[  24.431092] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature transformFeedback
[  24.431094] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature uniformBufferStandardLayout
[  24.431096] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature vertexInputDynamicState
[  24.431100] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature hostQueryReset
[  24.431102] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature nullDescriptor
[  24.431103] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature robustBufferAccess2
[  24.431105] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature robustImageAccess2
[  24.431107] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature shaderDemoteToHelperInvocation
[  24.431109] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature timelineSemaphore
[  24.654934] Render.Vulkan <Error> video_core/renderer_vulkan/renderer_vulkan.cpp:RendererVulkan:106: Vulkan initialization failed with error: VK_ERROR_INCOMPATIBLE_DRIVER
[  24.701760] HW.GPU <Error> video_core/video_core.cpp:CreateGPU:57: Failed to initialize GPU: Vulkan initialization error VK_ERROR_INCOMPATIBLE_DRIVER
[  24.827038] Core <Critical> core/core.cpp:Load:278: Failed to initialize system (Error 5)!
[  25.424584] WebService <Error> web_service/web_backend.cpp:GenericRequest:120: POST to https://api.yuzu-emu.org/telemetry returned error status code: 400

@liamwhite
Copy link
Contributor

VK_EXT_robustness2 (nullDescriptor, robustBufferAccess2, robustImageAccess2) is not in core in any version
hostQueryReset is core in 1.2, or provided by VK_EXT_host_query_reset
shaderDemoteToHelperInvocation is core in 1.3, or provided by VK_EXT_shader_demote_to_helper_invocation
timelineSemaphore is core in 1.2, or provided by VK_KHR_timeline_semaphore

These are available in all desktop Vulkan drivers

@liamwhite
Copy link
Contributor

liamwhite commented Feb 5, 2023

Support for timelineSemaphore can be loaded with https://github.com/KhronosGroup/Vulkan-ExtensionLayer , stuff will probably work without the other ones but timelineSemaphore is absolutely mandatory

@theofficialgman
Copy link
Author

theofficialgman commented Feb 5, 2023

ok, I installed a fresh image and updated to the tegra BSP 32.7.3 (latest) which has vulkan 1.2. We don't use this by defaut (use 32.3.1 with only vulkan 1.1) because of artifacting and performance regressions that nvidia seems unable to fix but were not an issue on 32.3.1.

the two driver versions reports: https://vulkan.gpuinfo.org/compare.php?reports=18930,15757

still getting errors on launch from the other missing extensions

[   0.145176] Input <Info> input_common/drivers/udp_client.cpp:UDPClient:139: Udp Initialization started
[   0.145200] Input <Info> input_common/drivers/udp_client.cpp:StartCommunication:331: Starting communication with UDP input server on 127.0.0.1:26760
[   0.194985] Input <Info> input_common/drivers/joycon.cpp:Joycons:22: Joycon driver Initialization started
[   0.331575] Frontend <Info> yuzu/main.cpp:GMainWindow:354: yuzu Version: yuzu 1329
[   0.331581] Frontend <Info> yuzu/main.cpp:LogRuntimes:244: Qt Compile: 5.15.8 Runtime: 5.15.8
[   0.331583] Frontend <Info> yuzu/main.cpp:GMainWindow:375: Host CPU Threads: 4
[   0.331649] Frontend <Info> yuzu/main.cpp:GMainWindow:376: Host OS: KDE Flatpak runtime
[   0.331667] Frontend <Info> yuzu/main.cpp:GMainWindow:377: Host RAM: 3.90 GiB
[   0.331670] Frontend <Info> yuzu/main.cpp:GMainWindow:379: Host Swap: 5.00 GiB
[   0.575764] Frontend <Warning> yuzu/main.cpp:SetupPrepareForSleep:1412: QDBusConnection system bus is not connected
[   3.065526] Frontend <Info> yuzu/main.cpp:BootGame:1662: yuzu starting...
[   3.099498] Config <Info> common/settings.cpp:LogSettings:40: yuzu Configuration:
[   3.099529] Config <Info> common/settings.cpp:operator():33: Controls_UseDockedMode: true
[   3.099532] Config <Info> common/settings.cpp:operator():33: System_RngSeed: 0
[   3.099534] Config <Info> common/settings.cpp:operator():33: System_DeviceName: Yuzu
[   3.099535] Config <Info> common/settings.cpp:operator():33: System_CurrentUser: 0
[   3.099537] Config <Info> common/settings.cpp:operator():33: System_LanguageIndex: 1
[   3.099539] Config <Info> common/settings.cpp:operator():33: System_RegionIndex: 1
[   3.099540] Config <Info> common/settings.cpp:operator():33: System_TimeZoneIndex: 0
[   3.099543] Config <Info> common/settings.cpp:operator():33: Core_UseMultiCore: true
[   3.099546] Config <Info> common/settings.cpp:operator():33: CPU_Accuracy: 0
[   3.099548] Config <Info> common/settings.cpp:operator():33: Renderer_UseResolutionScaling: 2
[   3.099550] Config <Info> common/settings.cpp:operator():33: Renderer_ScalingFilter: 1
[   3.099565] Config <Info> common/settings.cpp:operator():33: Renderer_FSRSlider: 25
[   3.099567] Config <Info> common/settings.cpp:operator():33: Renderer_AntiAliasing: 0
[   3.099569] Config <Info> common/settings.cpp:operator():33: Renderer_UseSpeedLimit: true
[   3.099611] Config <Info> common/settings.cpp:operator():33: Renderer_SpeedLimit: 100
[   3.099618] Config <Info> common/settings.cpp:operator():33: Renderer_UseDiskShaderCache: true
[   3.099620] Config <Info> common/settings.cpp:operator():33: Renderer_GPUAccuracyLevel: 1
[   3.099622] Config <Info> common/settings.cpp:operator():33: Renderer_UseAsynchronousGpuEmulation: true
[   3.099624] Config <Info> common/settings.cpp:operator():33: Renderer_NvdecEmulation: 2
[   3.099626] Config <Info> common/settings.cpp:operator():33: Renderer_AccelerateASTC: true
[   3.099627] Config <Info> common/settings.cpp:operator():33: Renderer_UseVsync: true
[   3.099630] Config <Info> common/settings.cpp:operator():33: Renderer_ShaderBackend: 0
[   3.099631] Config <Info> common/settings.cpp:operator():33: Renderer_UseAsynchronousShaders: false
[   3.099634] Config <Info> common/settings.cpp:operator():33: Renderer_AnisotropicFilteringLevel: 0
[   3.099635] Config <Info> common/settings.cpp:operator():33: Audio_OutputEngine: auto
[   3.099637] Config <Info> common/settings.cpp:operator():33: Audio_OutputDevice: auto
[   3.099638] Config <Info> common/settings.cpp:operator():33: Audio_InputDevice: auto
[   3.099640] Config <Info> common/settings.cpp:operator():33: DataStorage_UseVirtualSd: true
[   3.099645] Config <Info> common/settings.cpp:operator():37: DataStorage_CacheDir: /home/gman/.var/app/org.yuzu_emu.yuzu/cache/yuzu
[   3.099648] Config <Info> common/settings.cpp:operator():37: DataStorage_ConfigDir: /home/gman/.var/app/org.yuzu_emu.yuzu/config/yuzu
[   3.099650] Config <Info> common/settings.cpp:operator():37: DataStorage_LoadDir: /home/gman/.var/app/org.yuzu_emu.yuzu/data/yuzu/load
[   3.099652] Config <Info> common/settings.cpp:operator():37: DataStorage_NANDDir: /home/gman/.var/app/org.yuzu_emu.yuzu/data/yuzu/nand
[   3.099654] Config <Info> common/settings.cpp:operator():37: DataStorage_SDMCDir: /home/gman/.var/app/org.yuzu_emu.yuzu/data/yuzu/sdmc
[   3.099656] Config <Info> common/settings.cpp:operator():33: Debugging_ProgramArgs: 
[   3.099658] Config <Info> common/settings.cpp:operator():33: Debugging_GDBStub: false
[   3.099660] Config <Info> common/settings.cpp:operator():33: Input_EnableMotion: true
[   3.099662] Config <Info> common/settings.cpp:operator():33: Input_EnableVibration: true
[   3.099664] Config <Info> common/settings.cpp:operator():33: Input_EnableRawInput: false
[   3.292676] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_extended_dynamic_state
[   3.292694] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_extended_dynamic_state2
[   3.292697] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_extended_dynamic_state3
[   3.292699] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:680: Device doesn't support extension VK_EXT_vertex_input_dynamic_state
[   3.292707] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:681: Missing required extension VK_EXT_robustness2
[   3.292715] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature customBorderColors
[   3.292717] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature extendedDynamicState
[   3.292719] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature primitiveTopologyListRestart
[   3.292721] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature provokingVertexLast
[   3.292723] Render.Vulkan <Info> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:747: Device doesn't support feature vertexInputDynamicState
[   3.292726] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature nullDescriptor
[   3.292728] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature robustBufferAccess2
[   3.292730] Render.Vulkan <Error> video_core/vulkan_common/vulkan_device.cpp:GetSuitability:748: Missing required feature robustImageAccess2
[   3.294969] Render.Vulkan <Error> video_core/renderer_vulkan/renderer_vulkan.cpp:RendererVulkan:106: Vulkan initialization failed with error: VK_ERROR_INCOMPATIBLE_DRIVER
[   3.295055] HW.GPU <Error> video_core/video_core.cpp:CreateGPU:57: Failed to initialize GPU: Vulkan initialization error VK_ERROR_INCOMPATIBLE_DRIVER
[   3.295077] Core <Critical> core/core.cpp:Load:278: Failed to initialize system (Error 5)!
[   3.662967] WebService <Error> web_service/web_backend.cpp:GenericRequest:120: POST to https://api.yuzu-emu.org/telemetry returned error status code: 400

@liamwhite
Copy link
Contributor

If you compile yuzu yourself and comment out the checks for the robustness2 features (nullDescriptor, robustBufferAccess2, robustImageAccess2) you should be able to run things - these are mostly intended to ensure that faulty guest accesses don't crash the host.

@theofficialgman
Copy link
Author

I am trying to build the flatpak but am unfortunatly running into a change that I guess hasn't affected your builds yet

========================================================================
Building module yuzu in /home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/build/yuzu-1
========================================================================
FB: Running: cp -al /home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/git/https_github.com_theofficialgman_yuzu-mainline.git /home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/build/yuzu-1/.git
FB: Running: git config --bool core.bare false
FB: Running: git checkout mainline-0-1330-1
Note: switching to 'mainline-0-1330-1'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at b7a76a7d5 remove Robustness2 checks
FB: Running: git rev-parse --verify --quiet mainline-0-1330-1:.gitmodules
FB: Running: git show mainline-0-1330-1:.gitmodules
FB: Running: git ls-tree mainline-0-1330-1 externals/enet
FB: Running: git config submodule.enet.url file:///home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/git/https_github.com_lsalzman_enet.git
FB: Running: git submodule update --init externals/enet
Cloning into '/home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/build/yuzu-1/externals/enet'...
fatal: transport 'file' not allowed
fatal: clone of 'file:///home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/git/https_github.com_lsalzman_enet.git' into submodule path '/home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/build/yuzu-1/externals/enet' failed
Failed to clone 'externals/enet'. Retry scheduled
Cloning into '/home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/build/yuzu-1/externals/enet'...
fatal: transport 'file' not allowed
fatal: clone of 'file:///home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/git/https_github.com_lsalzman_enet.git' into submodule path '/home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/build/yuzu-1/externals/enet' failed
Failed to clone 'externals/enet' a second time, aborting
Error: module yuzu: Child process exited with code 1
FB: Unmounting read-only fs: fusermount -uz /home/ubuntu/org.yuzu_emu.yuzu/.flatpak-builder/rofiles/rofiles-AyagWE

I believe this is the source of the issue: https://vielmetti.typepad.com/logbook/2022/10/git-security-fixes-lead-to-fatal-transport-file-not-allowed-error-in-ci-systems-cve-2022-39253.html

@theofficialgman
Copy link
Author

oh flatpak-builder uses the host git when building. I can apply the override then git config --global protocol.file.allow always

@theofficialgman
Copy link
Author

theofficialgman commented Feb 5, 2023

with those checks commented out, I am in game with homebrew. seemingly no issues besides it running slow

lots of swap space getting used. this would be much better if I had something like a jetson xavier or modded my switch to have 8GB of ram (there is at least one user that has done it)

@theofficialgman
Copy link
Author

also incase you want to upgrade to L4T 32.7.3 to get the latest vukan to test here are some quick steps for that

# remove the 32.7.x bsp restrictions in this file
sudo nano /etc/apt/preferences.d/00-switch-bsp-restrictions
# change r32 to r32.7 in both places in this file
sudo nano /etc/apt/sources.list.d/nvidia-l4t-apt-source.list
# create a few files to skip some stuff
sudo touch /etc/nv_boot_control.conf
sudo mkdir /opt/nvidia/l4t-packages
sudo touch /opt/nvidia/l4t-packages/.nv-l4t-disable-boot-fw-update-in-preinstall
# now apt update and upgrade
# when you get asked if you want to replace the files with the distro maintainers version, answer N each time
sudo apt update
sudo apt dist-upgrade
# finally, before rebooting, add a `.reinit` file to the `switchroot/ubuntu` folder on your sd card
# edit the path to match your mounted fat32 sd card partition
touch /media/$USER/switch/switchroot/ubuntu/.reinit

now reboot. if you already ran the megascript to get the 32.3.1 BSP flatpaks, you will need to manually remove them

sudo flatpak remove org.freedesktop.Platform.GL.nvidia-tegra-32-3-1

remove this file and then run anything from the L4T-Megascript again to install 32.7.3 flatpak drivers

rm ~/L4T-Megascript/data/runonce_hashes

@liushuyu
Copy link
Collaborator

liushuyu commented Feb 6, 2023

Since this is not a Flatpak packaging issue, I will close this issue. If you have other issues, please feel free to open new issues in this repository or yuzu upstream repository.

@liushuyu liushuyu closed this as completed Feb 6, 2023
@liushuyu liushuyu removed the investigating Currently under investigation label Feb 6, 2023
@theofficialgman theofficialgman changed the title Yuzu Crash aarch64 Yuzu running on Nintendo Switch (solved) Feb 6, 2023
@cobalt2727
Copy link

hi reddit

@ruje0504
Copy link

ruje0504 commented Mar 29, 2023

Are you build yuzu on the l4t?
"Every time I arrive to generate a yuzu bin, I report no space, and then the switch crashes."
I would also like to try this yuzu, thank you for your issues.

vm.min_free_kbytes
Is this setting useful?

After 7/8 attempts, I finally succeeded. It should be due to insufficient memory, and the tf card speed is too slow for swapfile

@91ajames
Copy link

91ajames commented Sep 9, 2023

Like to say, great job so far on your way to accomplish this bc even myself am curios to do the same thing on what would happen.
To me, on a norm, should open yuzu as normal but I ran into an error once opened.
So I go into debugging route through terminal to get it open but unable to load any games without crashing the program.
Oled Switch Zelda Edi. pico fly

yuzu debug report.txt

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arm64 Issues specific to AArch64 CPU bug Something isn't working
Projects
None yet
Development

No branches or pull requests

6 participants