Tony Wasserka
72d0228cd7
Thunks/gen: Remove now unneeded callback_structs and callback_typedefs files
2022-07-07 17:33:31 +02:00
Tony Wasserka
298e6cad0c
Thunks/Xext: Enable automatic handling of callbacks
2022-07-07 17:33:31 +02:00
Tony Wasserka
ad34c228e3
unittests/ThunkLibs: Extend FunctionPointerParameter test
2022-07-07 17:33:31 +02:00
Tony Wasserka
66f74a431f
Thunks/gen: Clean up implementation of generic callbacks
2022-07-07 17:33:31 +02:00
Tony Wasserka
57bae90c69
Thunks: Fix generic callbacks on ARM hosts
2022-07-07 17:20:28 +02:00
Tony Wasserka
7eb8409f71
Thunks: Move definitions for LoadLib and IsLibLoaded together
2022-07-06 18:41:53 +02:00
Tony Wasserka
e821072cb9
unittests/ThunkLibs: Fix FunctionPointerParameter test
2022-07-06 18:41:53 +02:00
Stefanos Kornilios Misis Poiitidis
9c01dd9d9f
Thunks: PoC Callbacks using sha256 exports from host
2022-07-06 18:41:53 +02:00
Ryan Houdek
6a43db8c8f
Merge pull request #1832 from Sonicadvance1/fix_thunk_crash
...
Thunks: Fix std::set crash
2022-07-06 02:00:04 -07:00
Ryan Houdek
3ffc301dd0
Thunks: Fix std::set crash
...
std::string_view was sticking around for longer than libraries being
loaded.
This was causing a crash.
Change this to a std::string directly until we support cleanly removing
this data on library unload.
2022-07-05 21:25:40 -07:00
Ryan Houdek
46fcbe2fc0
Merge pull request #1830 from Sonicadvance1/support_erofs
...
Support EroFS
2022-07-05 07:21:34 -07:00
Ryan Houdek
b7806e47e9
Merge pull request #1831 from Sonicadvance1/minor_fexserver_fixes_pt2
...
FEXServer: Stop leaking FDs to subprocesses
2022-07-05 06:16:34 -07:00
Ryan Houdek
a1ed54adc7
FEXRootFSFetcher: Add support for EroFS
...
Fixes a bug in `ExecAndWaitForResponse` where results > 1024 bytes would
overwrite data.
Switches from a custom format txt file to a json file.
JSON file now has a "Type" field to specify squashfs versus erofs.
JSON is now versioned so we don't need to move the file around, just
append to a new versioned segment.
Only shows erofs files if you have the bleeding edge `erofsfuse`
application.
This application was available starting with erofs-utils v1.5 which was
released on 2022-06-13, so it isn't available pretty much everywhere.
2022-07-05 04:40:13 -07:00
Ryan Houdek
250a4ea4e3
FEXServer: Stop leaking FDs to subprocesses
...
Attach the CLOEXEC flag on each of the FDs/Sockets we open.
2022-07-05 03:53:39 -07:00
Stefanos Kornilios Mitsis Poiitidis
b3e090c8ff
Merge pull request #1826 from Sonicadvance1/fix_gdb_install_library
...
FEXGDBReader: Fix install path
2022-07-05 08:47:42 +00:00
Stefanos Kornilios Mitsis Poiitidis
982518d3a4
Merge pull request #1829 from Sonicadvance1/fix_ioctl32_vblank
...
Ioctl32: Fix DRM_IOCTL_WAIT_VBLANK
2022-07-05 08:45:46 +00:00
Ryan Houdek
9ad1d5548d
FEXServer: Add support for EroFS
2022-07-04 20:51:59 -07:00
Ryan Houdek
0de2558ef7
FEXConfig: Add support for erofs
2022-07-04 20:51:34 -07:00
Ryan Houdek
3e0e601616
FileFormatCheck: Add support for EroFS
2022-07-04 20:51:13 -07:00
Ryan Houdek
8b202b0ebf
Ioctl32: Fix DRM_IOCTL_WAIT_VBLANK
...
Oops. Used the incorrect ioctl for this one. Copy and paste fail.
2022-07-04 18:14:07 -07:00
Ryan Houdek
6d2f98a379
Merge pull request #1822 from Sonicadvance1/check_binfmt_misc_conflict
...
CMake: Check for binfmt_misc conflicts before install
2022-07-02 01:38:37 -07:00
Ryan Houdek
84379b5fdf
CMake: Check for binfmt_misc conflicts before install
...
Check for qemu and box binfmt_misc file conflicts before the
`binfmt_misc` install command.
This ensures if you're building from source that you won't inadvertently
install conflicting binfmt_misc files, breaking program execution.
2022-07-01 13:42:45 -07:00
Ryan Houdek
d005fdcd03
Merge pull request #1823 from Sonicadvance1/classify_arm
...
unittests: Classify CPU based on CPU features
2022-06-30 23:34:36 -07:00
Ryan Houdek
a97fb2f34f
Merge pull request #1825 from Sonicadvance1/disable_posix_flake
...
unittests: Disable known flake in posix tests
2022-06-30 23:34:22 -07:00
Ryan Houdek
d48981b6b0
FEXGDBReader: Fix install path
2022-06-30 22:34:25 -07:00
Ryan Houdek
af32228e38
unittests: Disable known flake in posix tests
...
Interpreter is flakey here, likely due to some race, but is periodically
fails and makes CI red.
2022-06-30 14:41:14 -07:00
Ryan Houdek
8b35275ec1
unittests: Classify CPU based on CPU features
...
Instead of relying on runner features, classify based on CPU features.
This fixes an annoying issue where if running unit tests locally without
it set then you get an unexpected failure.
Fixes #1807
2022-06-30 13:55:38 -07:00
Ryan Houdek
302a6c96ff
Merge pull request #1818 from FEX-Emu/skmp/fix-guest-h
...
ThunkLibs: Fix Guest.h
2022-06-30 10:02:48 -07:00
Stefanos Kornilios Misis Poiitidis
f4a4b2c14b
ThunkLibs: Fix Guest.h
2022-06-30 14:08:01 +03:00
Stefanos Kornilios Mitsis Poiitidis
88b94bef54
Merge pull request #1812 from FEX-Emu/skmp/add-thunks-islibloaded
...
Thunks: Add fex:is_lib_loaded
2022-06-30 04:45:37 +00:00
Stefanos Kornilios Mitsis Poiitidis
751b66d45d
Merge pull request #1816 from Sonicadvance1/fix_vulkan_debug_report
...
Thunks/vulkan: Disable debug report callback
2022-06-30 04:43:43 +00:00
Stefanos Kornilios Mitsis Poiitidis
ae6a57e667
Merge pull request #1815 from Sonicadvance1/fix_wine_preloader
...
Config: Fixes AppConfig for wine-preloader
2022-06-30 04:43:37 +00:00
Stefanos Kornilios Mitsis Poiitidis
9110546d34
Merge pull request #1814 from Sonicadvance1/pressure_vessel_fexserver_fix
...
FEXServerClient: When running under pressure-vessel don't use FEXServer rootfs
2022-06-30 04:43:26 +00:00
Stefanos Kornilios Mitsis Poiitidis
1f1d0706dd
Merge pull request #1813 from Sonicadvance1/fexserver_changes
...
FEXServer: Minor changes
2022-06-30 04:43:16 +00:00
Ryan Houdek
a82d41ee22
Thunks/vulkan: Disable debug report callback
...
This was checking for the wrong debug structure and it wasn't actually
unlinking it correctly from the linked list.
Since it was talking directly to a_0 instead of the current modifying
struct.
Instead of having a stubbed debug report struct, we can just remove the
structure from the linked list. Since we are already abusing a const
cast there anyway.
Fixes Vulkan thunks on Snapdragon.
2022-06-29 20:02:52 -07:00
Ryan Houdek
e8e70828d1
Config: Fixes AppConfig for wine-preloader
...
When wine-preloader is executed it doesn't do an execve to passed in
wine program. It will instead map the executable directly in to memory
and start executing it.
This way we end up with a program executing like `wine-preloader
<absolute wine path> Game.exe`
This now handles the wine-preloader case so we can get the correct
application profile here.
2022-06-29 20:00:32 -07:00
Ryan Houdek
b7a58fdb8a
FEXServerClient: When running under pressure-vessel don't use FEXServer rootfs
...
pressure-vessel overrides our rootfs when it does a pivot_root.
Since we are still communicating to the FEXServer we were pulling the
configured rootfs.
Instead check if we are in pressure vessel and avoid doing that.
This fixes FEX running under pressure-vessel.
(There may be some implications to this down the road with code caching
but let's worry about that later)
2022-06-29 19:57:07 -07:00
Ryan Houdek
dc9fde8fae
FEXServer: Change server lock fifo to regular file
...
This doesn't need to be a FIFO.
Resolves an issue of trying to run a rootfs from a fex config folder mapped over nfs/sshfs.
2022-06-29 13:46:49 -07:00
Ryan Houdek
c0cf4f6a61
FEXServer: Change socket pathname to include euid
...
Just to ensure the socket path is unique per user.
Noticed this while running independent FEXServers with multiple users.
2022-06-29 13:44:48 -07:00
Stefanos Kornilios Misis Poiitidis
21fc6bedcb
Thunks: Add fex:is_lib_loaded
2022-06-29 19:20:08 +03:00
Ryan Houdek
ad6fd5ab72
Merge pull request #1804 from neobrain/fix_cmake_thunks_portability
...
Allow building thunks on a wider range of platforms
2022-06-29 02:08:55 -07:00
Ryan Houdek
0f696c6092
Merge pull request #1811 from FEX-Emu/skmp/fix-vixl-assert
...
Dispatcher/Arm64: Fix vixl assert
2022-06-29 02:08:08 -07:00
Stefanos Kornilios Misis Poiitidis
9af3bc1864
Dispatcher/Arm64: Fix vixl assert
2022-06-29 10:41:24 +03:00
Ryan Houdek
b020e593a5
Merge pull request #1802 from Sonicadvance1/fexserver_wait
...
FEXServer: Adds -w option for waiting on current FEXServer
2022-06-28 09:33:31 -07:00
Tony Wasserka
4771a340f5
Merge pull request #1803 from neobrain/fix_vulkan_debug_report
...
ThunkLibs/vulkan: Work around lack of generic callback support in VK_EXT_debug_report
2022-06-28 16:39:37 +02:00
Stefanos Kornilios Mitsis Poiitidis
4449b60459
Merge pull request #1787 from FEX-Emu/skmp/gdb-jit-integration
...
gdb: jit integration
2022-06-27 11:57:40 +00:00
Stefanos Kornilios Misis Poiitidis
4139332ad9
GDBSymbols: Cleanups
2022-06-27 14:44:07 +03:00
Stefanos Kornilios Mitsis Poiitidis
30a28ff1ad
Merge pull request #1801 from FEX-Emu/skmp/remove-thunk-warnings
...
ThunkLibs: silence warnings
2022-06-27 10:35:43 +00:00
Tony Wasserka
498d0fc145
CMake: Use toolchain files to set up x86 cross compilation
2022-06-25 14:00:36 +02:00
Tony Wasserka
4a547fe95f
Thunks/CMake: Link against clang-cpp instead of clangTooling
2022-06-25 13:54:12 +02:00