mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 08:47:44 +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:
parent
4889eb019a
commit
e475263113
45 changed files with 81 additions and 94 deletions
|
@ -6,14 +6,14 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <AK/AtomicRefCounted.h>
|
||||
#include <AK/Error.h>
|
||||
#include <AK/RefCounted.h>
|
||||
#include <Kernel/Bus/USB/USBDevice.h>
|
||||
#include <Kernel/Bus/USB/USBTransfer.h>
|
||||
|
||||
namespace Kernel::USB {
|
||||
|
||||
class USBController : public RefCounted<USBController> {
|
||||
class USBController : public AtomicRefCounted<USBController> {
|
||||
public:
|
||||
virtual ~USBController() = default;
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ class USBConfiguration;
|
|||
//
|
||||
// https://www.ftdichip.com/Support/Documents/TechnicalNotes/TN_113_Simplified%20Description%20of%20USB%20Device%20Enumeration.pdf
|
||||
class Hub;
|
||||
class Device : public RefCounted<Device> {
|
||||
class Device : public AtomicRefCounted<Device> {
|
||||
public:
|
||||
enum class DeviceSpeed : u8 {
|
||||
FullSpeed = 0,
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <AK/RefCounted.h>
|
||||
#include <AK/Types.h>
|
||||
#include <Kernel/Bus/USB/USBDevice.h>
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <AK/AtomicRefCounted.h>
|
||||
#include <AK/OwnPtr.h>
|
||||
#include <AK/RefPtr.h>
|
||||
#include <Kernel/Bus/USB/PacketTypes.h>
|
||||
|
@ -17,7 +18,7 @@
|
|||
// TODO: Callback stuff in this class please!
|
||||
namespace Kernel::USB {
|
||||
|
||||
class Transfer : public RefCounted<Transfer> {
|
||||
class Transfer final : public AtomicRefCounted<Transfer> {
|
||||
public:
|
||||
static ErrorOr<NonnullRefPtr<Transfer>> try_create(Pipe&, u16 length, Memory::Region& dma_buffer);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue