1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 05:27:45 +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

@ -6,13 +6,13 @@
#pragma once
#include <AK/RefCounted.h>
#include <AK/AtomicRefCounted.h>
#include <AK/Types.h>
#include <Kernel/Graphics/GenericGraphicsAdapter.h>
namespace Kernel::Graphics {
class Console : public RefCounted<Console> {
class Console : public AtomicRefCounted<Console> {
public:
// Stanadard VGA text mode colors
enum Color : u8 {

View file

@ -6,7 +6,6 @@
#pragma once
#include <AK/RefCounted.h>
#include <AK/Types.h>
#include <Kernel/Graphics/Console/Console.h>
#include <Kernel/PhysicalAddress.h>

View file

@ -6,7 +6,6 @@
#pragma once
#include <AK/RefCounted.h>
#include <AK/Types.h>
#include <Kernel/Graphics/Console/Console.h>
#include <Kernel/Locking/Spinlock.h>

View file

@ -14,7 +14,7 @@
namespace Kernel {
class GenericGraphicsAdapter
: public RefCounted<GenericGraphicsAdapter>
: public AtomicRefCounted<GenericGraphicsAdapter>
, public Weakable<GenericGraphicsAdapter> {
public:
virtual ~GenericGraphicsAdapter() = default;

View file

@ -100,7 +100,7 @@ public:
private:
VirtIOGPU3DDevice(VirtIOGraphicsAdapter const& graphics_adapter, NonnullOwnPtr<Memory::Region> transfer_buffer_region);
class PerContextState : public RefCounted<PerContextState> {
class PerContextState final : public AtomicRefCounted<PerContextState> {
public:
static ErrorOr<RefPtr<PerContextState>> try_create(Graphics::VirtIOGPU::ContextID context_id)
{