GSDX page fault at 0x00000020
#1
I have a problem with PCSX2 r5773 and GSDX. When I try to open GSDX config window the emulator crashes, and the stdout shows just a very unhelpful message "killed".

If I select GSDX and *don't* try opening the config window, but just start the game, then PCSX2 crashes with the following:

Code:
/var/cache/pacman/pkg/pcsx2-svn7851/pcsx2-svn/src/pcsx2/common/src/Utilities/Linux/LnxHostSys.cpp(64) : assertion failed:
    Function:  void SysPageFaultSignalFilter(int, siginfo_t*, void*)
    Thread:    MTGS
    Condition: false
    Message:   Unhandled page fault @ 0x00000020

[00] GSShaderOGL::VS(unsigned int, unsigned int)
[01] GSDeviceOGL::SetupVS(GSDeviceOGL::VSSelector)
[02] GSRendererOGL::DrawPrims(GSTexture*, GSTexture*, GSTextureCache::Source*)
[03] GSRendererHW::Draw()                        
[04] GSState::FlushPrim()                        
[05] void GSState::GIFRegHandlerFRAME<0>(GIFReg const*)
[06] void GSState::Transfer<3>(unsigned char const*, unsigned int)
[07] GSgifTransfer                              

Killed

On pcsx2 1.0.0 I get the following:

Code:
(pcsx2:1140): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",

(pcsx2:1140): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
Interface is initializing.  Entering Pcsx2App::OnInit!
Applying operating system default language...
Command line parsing...
Command line parsed!
glX-Version 1.4 with Direct Rendering
Supported Opengl version: 3.3.0 NVIDIA 331.20
GL_ARB_shading_language_420pack is not supported
convert.glsl (entry vs_main, prog 2) :

convert.glsl (entry gs_main, prog 3) :

convert.glsl (entry ps_main0, prog 4) :

convert.glsl (entry ps_main1, prog 5) :

convert.glsl (entry ps_main2, prog 6) :

convert.glsl (entry ps_main3, prog 7) :

convert.glsl (entry ps_main4, prog 8) :

convert.glsl (entry ps_main5, prog 9) :

convert.glsl (entry ps_main6, prog 10) :

convert.glsl (entry ps_main7, prog 11) :

merge.glsl (entry ps_main0, prog 12) :

merge.glsl (entry ps_main1, prog 13) :

interlace.glsl (entry ps_main0, prog 14) :

interlace.glsl (entry ps_main1, prog 15) :

interlace.glsl (entry ps_main2, prog 16) :

interlace.glsl (entry ps_main3, prog 17) :

shadeboost.glsl (entry ps_main, prog 18) :
#define SB_SATURATION 50
#define SB_BRIGHTNESS 50
#define SB_CONTRAST 50

Segmentation fault (core dumped)

zzOgl works on r5773, but on 1.0.0 it crashes with a segfault:
Code:
Interface is initializing.  Entering Pcsx2App::OnInit!
Applying operating system default language...
Command line parsing...
Command line parsed!
ZZOgl-PG:  Calling GSinit.
ZZOgl-PG:  GSinit finished.
ZZOgl-PG:  Calling GSopen2.
ZZOgl-PG:  Capturing ZZOgl window.
ZZOgl-PG:  Got Doublebuffered Visual!
ZZOgl-PG:  glX-Version 1.4 with Direct Rendering
ZZOgl-PG:  Supported Opengl version : 4.4.0 NVIDIA 331.20

ZZOgl-PG:  Using multitexturing.
ZZOgl-PG:  Maximum texture size is 16384 for Tex_2d and 16384 for Tex_NV.
Segmentation fault (core dumped)

I'm on Arch x86_64 with latest repository packages, gnome shell 3.10, kernel 3.12.5-1 and nvidia 331.20. pcsx2-svn is r5773 was compiled with default pgkbuild from AUR.

System specs:
i7-4770K@stock
Intel z87 (GA-Z87X-D3H)
nVidia GTX 770
16 GB RAM

EDIT: build options from PKGBUILD for x86_64:
Code:
export CC='gcc -m32'
export CXX='g++ -m32'
export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
cmake .. -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_BUILD_TYPE='Release' -DPACKAGE_MODE='TRUE' -DXDG_STD='TRUE' -DGLSL_API='TRUE' -DREBUILD_SHADER='TRUE' -DPLUGIN_DIR='/usr/lib32/pcsx2' -DGAMEINDEX_DIR='/usr/share/pcsx2' -DwxWidgets_CONFIG_EXECUTABLE='/usr/bin/wx-config32' -DwxWidgets_wxrc_EXECUTABLE='/usr/bin/wxrc32' -DCMAKE_LIBRARY_PATH='/usr/lib32'
Reply

Sponsored links

#2
for gsdx edit the ini file and disable separate shader ext (set it to 0). Maybe it would avoid the crash but I m afraid of a driver bug.
Reply
#3
(12-24-2013, 10:07 PM)gregory Wrote: for gsdx edit the ini file and disable separate shader ext (set it to 0). Maybe it would avoid the crash but I m afraid of a driver bug.

Which setting is that? The ones I have are:

Code:
ModeHeight = 480
ModeWidth = 640
ShadeBoost = 0
ShadeBoost_Brightness = 50
ShadeBoost_Contrast = 50
ShadeBoost_Saturation = 50
UserHacks = 0
UserHacks_AlphaHack = 0
UserHacks_AlphaStencil = 0
UserHacks_DateGL4 = 0
UserHacks_HalfPixelOffset = 0
UserHacks_MSAA = 0
UserHacks_SkipDraw = 0
UserHacks_SpriteHack = 0
UserHacks_TCOffset = 0
UserHacks_WildHack = 0
aa1 = 0
aspectratio = 1
debug_ogl_shader = 1
dump = 0
extrathreads = 0
fba = 1
filter = 0
fxaa = 0
interlace = 0
logz = 1
mipmap = 1
msaa = 0
nativeres = 0
ogl_vertex_subdata = 1
override_GL_ARB_bindless_texture = -1
override_GL_ARB_buffer_storage = -1
override_GL_ARB_clear_texture = -1
override_GL_ARB_explicit_uniform_location = -1
override_GL_ARB_gpu_shader5 = -1
override_GL_ARB_multi_bind = -1
override_GL_ARB_separate_shader_objects = -1
override_GL_ARB_shader_image_load_store = -1
override_GL_ARB_shader_subroutine = -1
override_GL_ARB_shading_language_420pack = -1
override_GL_ARB_texture_storage = -1
override_geometry_shader = -1
paltex = 0
renderer = 12
resx = 1024
resy = 1024
save = 0
saven = 0
savez = 0
shadeboost = 1
upscale_multiplier = 2
vsync = 0
windowed = 1

Also, when I removed -DGLSL_API='TRUE' (so now it uses CG toolkit?) I got slightly further, the config window now doesn't crash but freezes 9 out of 10 times (1/10 it actually works) and when running the game it displays this:
Code:
Interface is initializing.  Entering Pcsx2App::OnInit!
Applying operating system default language...
Command line parsing...
Command line parsed!
glX-Version 1.4 with Direct Rendering
Supported Opengl version: 3.3.0 NVIDIA 331.20 on GPU: GeForce GTX 660 Ti/PCIe/SSE2. Vendor: NVIDIA Corporation
Buggy driver detected. Geometry shaders will be disabled

INFO: GL_ARB_clear_texture is not supported
INFO: GL_ARB_buffer_storage is not supported
INFO: GL_ARB_shader_subroutine is not supported
INFO: GL_ARB_multi_bind is not supported
INFO: GL_ARB_bindless_texture is not supported

Segmentation fault (core dumped)
Reply
#4
this one override_GL_ARB_separate_shader_objects
Reply
#5
(12-24-2013, 10:59 PM)gregory Wrote: this one override_GL_ARB_separate_shader_objects

Nope, it still segfaults. I've seen posts from other people and it seems that 331.20 works with pcsx2, so I don't think it's a driver bug.
Reply
#6
you have exactly the same trace? I m surprised!
Reply
#7
It seems that when the kernel got updated the nvidia driver module did not, so when I've rebuilt the kernel module then GSDX started working Smile The funny thing is that everything worked other than pcsx2 (gnome-shell, dolphin-emu, etc.)

The config window still freezes though, maybe it's a widget library/theme issue.

I'll try compiling it now with -DGLSL_API='TRUE' added back (is it at all important, performance and/or quality wise?)

Btw. do you know why can't I build pcsx2 with debugging symbols? I've changed -DCMAKE_BUILD_TYPE='Release' to -DCMAKE_BUILD_TYPE='Debug', even tried adding '-g' to GCC options, but still when I run via GDB it says 'no debugging symbols'... ?
Reply
#8
not a driver bug Tongue2
glsl replace zzogl backend (glsl instead of cg). Normally it could be faster but never have time to test it properly.
There is a cmake strip option (try to search on the wiki, sorry only got a phone). Normally stripping is disabled in debug mode.
Reply




Users browsing this thread: 1 Guest(s)