From 08831eecf77cedd3c4192ebab5a9c485fb15d51e Mon Sep 17 00:00:00 2001 From: gdkchan Date: Wed, 4 Jan 2023 19:15:45 -0300 Subject: IPC refactor part 3+4: New server HIPC message processor (#4188) * IPC refactor part 3 + 4: New server HIPC message processor with source generator based serialization * Make types match on calls to AlignUp/AlignDown * Formatting * Address some PR feedback * Move BitfieldExtensions to Ryujinx.Common.Utilities and consolidate implementations * Rename Reader/Writer to SpanReader/SpanWriter and move to Ryujinx.Common.Memory * Implement EventType * Address more PR feedback * Log request processing errors since they are not normal * Rename waitable to multiwait and add missing lock * PR feedback * Ac_K PR feedback --- Ryujinx.HLE/HOS/Services/Sm/IUserInterface.cs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'Ryujinx.HLE/HOS/Services/Sm') diff --git a/Ryujinx.HLE/HOS/Services/Sm/IUserInterface.cs b/Ryujinx.HLE/HOS/Services/Sm/IUserInterface.cs index 8e66b28d..86031a70 100644 --- a/Ryujinx.HLE/HOS/Services/Sm/IUserInterface.cs +++ b/Ryujinx.HLE/HOS/Services/Sm/IUserInterface.cs @@ -1,8 +1,8 @@ using Ryujinx.Common.Logging; using Ryujinx.HLE.HOS.Ipc; using Ryujinx.HLE.HOS.Kernel; -using Ryujinx.HLE.HOS.Kernel.Common; using Ryujinx.HLE.HOS.Kernel.Ipc; +using Ryujinx.Horizon.Common; using System; using System.Collections.Generic; using System.IO; @@ -72,14 +72,14 @@ namespace Ryujinx.HLE.HOS.Services.Sm if (_registry.TryGetService(name, out KPort port)) { - KernelResult result = port.EnqueueIncomingSession(session.ServerSession); + Result result = port.EnqueueIncomingSession(session.ServerSession); - if (result != KernelResult.Success) + if (result != Result.Success) { throw new InvalidOperationException($"Session enqueue on port returned error \"{result}\"."); } - if (context.Process.HandleTable.GenerateHandle(session.ClientSession, out int handle) != KernelResult.Success) + if (context.Process.HandleTable.GenerateHandle(session.ClientSession, out int handle) != Result.Success) { throw new InvalidOperationException("Out of handles!"); } @@ -113,7 +113,7 @@ namespace Ryujinx.HLE.HOS.Services.Sm } } - if (context.Process.HandleTable.GenerateHandle(session.ClientSession, out int handle) != KernelResult.Success) + if (context.Process.HandleTable.GenerateHandle(session.ClientSession, out int handle) != Result.Success) { throw new InvalidOperationException("Out of handles!"); } @@ -182,14 +182,14 @@ namespace Ryujinx.HLE.HOS.Services.Sm Logger.Info?.Print(LogClass.ServiceSm, $"Register \"{name}\"."); - KPort port = new KPort(context.Device.System.KernelContext, maxSessions, isLight, 0); + KPort port = new KPort(context.Device.System.KernelContext, maxSessions, isLight, null); if (!_registry.TryRegister(name, port)) { return ResultCode.AlreadyRegistered; } - if (context.Process.HandleTable.GenerateHandle(port.ServerPort, out int handle) != KernelResult.Success) + if (context.Process.HandleTable.GenerateHandle(port.ServerPort, out int handle) != Result.Success) { throw new InvalidOperationException("Out of handles!"); } -- cgit v1.2.3