aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Memory/MemoryManagerUnixHelper.cs
diff options
context:
space:
mode:
authorTSRBerry <20988865+TSRBerry@users.noreply.github.com>2023-05-30 01:48:37 +0200
committerGitHub <noreply@github.com>2023-05-30 01:48:37 +0200
commit35d91a0e58cb0b2916b7a4f138c63fcc12b71112 (patch)
tree4735140e36567ddaefb9089e9a0d5685b5f9079f /src/Ryujinx.Memory/MemoryManagerUnixHelper.cs
parenta73a5d7e85e4008a7d8c7eb8abd6bae80b950bba (diff)
Linux: Automatically increase vm.max_map_count if it's too low (#4702)
* memory: Check results of pinvoke calls * Increase vm.max_map_count when running Ryujinx * Add SupportedOSPlatform attribute for WindowsApiException * Revert increasing vm.max_map_count via script * Add LinuxHelper to detect and increase vm.max_map_count With GUI dialogs, this should be a bit more user-friendly. * Supply arguments as a list to RunPkExec * Add error logging in case RunPkExec() fails * Prevent Gtk from crashing
Diffstat (limited to 'src/Ryujinx.Memory/MemoryManagerUnixHelper.cs')
-rw-r--r--src/Ryujinx.Memory/MemoryManagerUnixHelper.cs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Ryujinx.Memory/MemoryManagerUnixHelper.cs b/src/Ryujinx.Memory/MemoryManagerUnixHelper.cs
index 204f1ca4..a7b207ab 100644
--- a/src/Ryujinx.Memory/MemoryManagerUnixHelper.cs
+++ b/src/Ryujinx.Memory/MemoryManagerUnixHelper.cs
@@ -1,8 +1,11 @@
using System;
using System.Runtime.InteropServices;
+using System.Runtime.Versioning;
namespace Ryujinx.Memory
{
+ [SupportedOSPlatform("linux")]
+ [SupportedOSPlatform("macos")]
public static partial class MemoryManagerUnixHelper
{
[Flags]
@@ -41,6 +44,8 @@ namespace Ryujinx.Memory
O_SYNC = 256,
}
+ public const IntPtr MAP_FAILED = -1;
+
private const int MAP_ANONYMOUS_LINUX_GENERIC = 0x20;
private const int MAP_NORESERVE_LINUX_GENERIC = 0x4000;
private const int MAP_UNLOCKED_LINUX_GENERIC = 0x80000;