diff --git a/Kernel/TTY/PTYMultiplexer.cpp b/Kernel/TTY/PTYMultiplexer.cpp index 0f34445cae..ba6b46d103 100644 --- a/Kernel/TTY/PTYMultiplexer.cpp +++ b/Kernel/TTY/PTYMultiplexer.cpp @@ -24,7 +24,7 @@ PTYMultiplexer& PTYMultiplexer::the() UNMAP_AFTER_INIT PTYMultiplexer::PTYMultiplexer() : CharacterDevice(5, 2) { - m_freelist.with_exclusive([&](auto& freelist) { + m_freelist.with([&](auto& freelist) { freelist.ensure_capacity(max_pty_pairs); for (int i = max_pty_pairs; i > 0; --i) freelist.unchecked_append(i - 1); @@ -42,7 +42,7 @@ UNMAP_AFTER_INIT void PTYMultiplexer::initialize() ErrorOr> PTYMultiplexer::open(int options) { - return m_freelist.with_exclusive([&](auto& freelist) -> ErrorOr> { + return m_freelist.with([&](auto& freelist) -> ErrorOr> { if (freelist.is_empty()) return EBUSY; @@ -58,7 +58,7 @@ ErrorOr> PTYMultiplexer::open(int options) void PTYMultiplexer::notify_master_destroyed(Badge, unsigned index) { - m_freelist.with_exclusive([&](auto& freelist) { + m_freelist.with([&](auto& freelist) { freelist.append(index); dbgln_if(PTMX_DEBUG, "PTYMultiplexer: {} added to freelist", index); }); diff --git a/Kernel/TTY/PTYMultiplexer.h b/Kernel/TTY/PTYMultiplexer.h index caac7b0fdd..9c0a546cf2 100644 --- a/Kernel/TTY/PTYMultiplexer.h +++ b/Kernel/TTY/PTYMultiplexer.h @@ -8,7 +8,6 @@ #include #include -#include namespace Kernel { @@ -36,7 +35,7 @@ private: virtual StringView class_name() const override { return "PTYMultiplexer"sv; } static constexpr size_t max_pty_pairs = 64; - MutexProtected> m_freelist; + SpinlockProtected> m_freelist; }; }