1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 00:17:46 +00:00

AK+Kernel: Add AK::AtomicRefCounted and use everywhere in the kernel

Instead of having two separate implementations of AK::RefCounted, one
for userspace and one for kernelspace, there is now RefCounted and
AtomicRefCounted.
This commit is contained in:
Andreas Kling 2022-08-19 17:26:07 +02:00
parent 4889eb019a
commit e475263113
45 changed files with 81 additions and 94 deletions

View file

@ -20,7 +20,7 @@ class Device;
extern WorkQueue* g_io_work;
class AsyncDeviceRequest : public RefCounted<AsyncDeviceRequest> {
class AsyncDeviceRequest : public AtomicRefCounted<AsyncDeviceRequest> {
AK_MAKE_NONCOPYABLE(AsyncDeviceRequest);
AK_MAKE_NONMOVABLE(AsyncDeviceRequest);

View file

@ -23,7 +23,7 @@ namespace Kernel {
class AudioManagement;
class AudioController
: public RefCounted<AudioController>
: public AtomicRefCounted<AudioController>
, public Weakable<AudioController> {
friend class AudioManagement;

View file

@ -6,7 +6,7 @@
#pragma once
#include <AK/RefCounted.h>
#include <AK/AtomicRefCounted.h>
#include <Kernel/Devices/HID/KeyboardDevice.h>
#include <Kernel/Devices/HID/MouseDevice.h>
#include <Kernel/Locking/Spinlock.h>
@ -83,7 +83,7 @@ protected:
class PS2KeyboardDevice;
class PS2MouseDevice;
class HIDManagement;
class I8042Controller : public RefCounted<I8042Controller> {
class I8042Controller final : public AtomicRefCounted<I8042Controller> {
friend class PS2KeyboardDevice;
friend class PS2MouseDevice;