diff --git a/Kernel/Bus/USB/USBDevice.cpp b/Kernel/Bus/USB/USBDevice.cpp index a6e3531f8b1..95a0f10d6eb 100644 --- a/Kernel/Bus/USB/USBDevice.cpp +++ b/Kernel/Bus/USB/USBDevice.cpp @@ -21,7 +21,9 @@ ErrorOr> Device::try_create(USBController const& contr auto pipe = TRY(ControlPipe::create(controller, 0, 8, 0)); auto device = TRY(adopt_nonnull_lock_ref_or_enomem(new (nothrow) Device(controller, port, speed, move(pipe)))); auto sysfs_node = TRY(SysFSUSBDeviceInformation::create(*device)); - device->m_sysfs_device_info_node = move(sysfs_node); + device->m_sysfs_device_info_node.with([&](auto& node) { + node = move(sysfs_node); + }); TRY(device->enumerate_device()); return device; } diff --git a/Kernel/Bus/USB/USBDevice.h b/Kernel/Bus/USB/USBDevice.h index e11fab6cbef..47144d36edb 100644 --- a/Kernel/Bus/USB/USBDevice.h +++ b/Kernel/Bus/USB/USBDevice.h @@ -12,6 +12,7 @@ #include #include #include +#include namespace Kernel { class SysFSUSBDeviceInformation; @@ -57,7 +58,7 @@ public: Vector const& configurations() const { return m_configurations; } - SysFSUSBDeviceInformation& sysfs_device_info_node(Badge) { return *m_sysfs_device_info_node; } + SpinlockProtected, LockRank::None>& sysfs_device_info_node(Badge) { return m_sysfs_device_info_node; } protected: Device(NonnullLockRefPtr controller, u8 address, u8 port, DeviceSpeed speed, NonnullOwnPtr default_pipe); @@ -79,7 +80,7 @@ private: IntrusiveListNode> m_hub_child_node; protected: - LockRefPtr m_sysfs_device_info_node; + SpinlockProtected, LockRank::None> m_sysfs_device_info_node; public: using List = IntrusiveList<&Device::m_hub_child_node>; diff --git a/Kernel/Bus/USB/USBHub.cpp b/Kernel/Bus/USB/USBHub.cpp index 297c9752e48..e6a3f7bc8d4 100644 --- a/Kernel/Bus/USB/USBHub.cpp +++ b/Kernel/Bus/USB/USBHub.cpp @@ -46,7 +46,10 @@ ErrorOr Hub::enumerate_and_power_on_hub() // USBDevice::enumerate_device must be called before this. VERIFY(m_address > 0); - m_sysfs_device_info_node = TRY(SysFSUSBDeviceInformation::create(*this)); + TRY(m_sysfs_device_info_node.with([&](auto& node) -> ErrorOr { + node = TRY(SysFSUSBDeviceInformation::create(*this)); + return {}; + })); if (m_device_descriptor.device_class != USB_CLASS_HUB) { dbgln("USB Hub: Trying to enumerate and power on a device that says it isn't a hub."); @@ -133,8 +136,11 @@ ErrorOr Hub::set_port_feature(u8 port, HubFeatureSelector feature_selector void Hub::remove_children_from_sysfs() { - for (auto& child : m_children) - SysFSUSBBusDirectory::the().unplug({}, child.sysfs_device_info_node({})); + for (auto& child : m_children) { + child.sysfs_device_info_node({}).with([](auto& node) { + SysFSUSBBusDirectory::the().unplug({}, *node); + }); + } } void Hub::check_for_port_updates() @@ -260,10 +266,14 @@ void Hub::check_for_port_updates() auto hub = hub_or_error.release_value(); m_children.append(hub); - SysFSUSBBusDirectory::the().plug({}, hub->sysfs_device_info_node({})); + hub->sysfs_device_info_node({}).with([](auto& node) { + SysFSUSBBusDirectory::the().plug({}, *node); + }); } else { m_children.append(device); - SysFSUSBBusDirectory::the().plug({}, device->sysfs_device_info_node({})); + device->sysfs_device_info_node({}).with([](auto& node) { + SysFSUSBBusDirectory::the().plug({}, *node); + }); } } else { @@ -278,7 +288,9 @@ void Hub::check_for_port_updates() } if (device_to_remove) { - SysFSUSBBusDirectory::the().unplug({}, device_to_remove->sysfs_device_info_node({})); + device_to_remove->sysfs_device_info_node({}).with([](auto& node) { + SysFSUSBBusDirectory::the().unplug({}, *node); + }); if (device_to_remove->device_descriptor().device_class == USB_CLASS_HUB) { auto* hub_child = static_cast(device_to_remove.ptr()); hub_child->remove_children_from_sysfs(); diff --git a/Kernel/Devices/Device.cpp b/Kernel/Devices/Device.cpp index bb0edd497e1..cb013b5c8b0 100644 --- a/Kernel/Devices/Device.cpp +++ b/Kernel/Devices/Device.cpp @@ -34,19 +34,19 @@ void Device::after_inserting_add_to_device_management() ErrorOr Device::after_inserting() { - after_inserting_add_to_device_management(); VERIFY(!m_sysfs_component); auto sys_fs_component = SysFSDeviceComponent::must_create(*this); m_sysfs_component = sys_fs_component; after_inserting_add_to_device_identifier_directory(); + after_inserting_add_to_device_management(); return {}; } void Device::will_be_destroyed() { VERIFY(m_sysfs_component); - before_will_be_destroyed_remove_from_device_identifier_directory(); before_will_be_destroyed_remove_from_device_management(); + before_will_be_destroyed_remove_from_device_identifier_directory(); } Device::~Device() diff --git a/Kernel/Devices/Device.h b/Kernel/Devices/Device.h index 32c8874559d..371e6ac0413 100644 --- a/Kernel/Devices/Device.h +++ b/Kernel/Devices/Device.h @@ -96,10 +96,10 @@ private: protected: // FIXME: This pointer will be eventually removed after all nodes in /sys/dev/block/ and // /sys/dev/char/ are symlinks. - LockRefPtr m_sysfs_component; + RefPtr m_sysfs_component; - LockRefPtr m_symlink_sysfs_component; - LockRefPtr m_sysfs_device_directory; + RefPtr m_symlink_sysfs_component; + RefPtr m_sysfs_device_directory; }; } diff --git a/Kernel/FileSystem/SysFS/Component.cpp b/Kernel/FileSystem/SysFS/Component.cpp index 96a8473228c..ced348f7a28 100644 --- a/Kernel/FileSystem/SysFS/Component.cpp +++ b/Kernel/FileSystem/SysFS/Component.cpp @@ -74,8 +74,6 @@ ErrorOr SysFSSymbolicLink::read_bytes(off_t offset, size_t count, UserOr ErrorOr> SysFSSymbolicLink::try_to_generate_buffer() const { auto return_path_to_mount_point = TRY(try_generate_return_path_to_mount_point()); - if (!m_pointed_component) - return Error::from_errno(EIO); auto pointed_component_base_name = MUST(KString::try_create(m_pointed_component->name())); auto pointed_component_relative_path = MUST(m_pointed_component->relative_path(move(pointed_component_base_name), 0)); auto full_return_and_target_path = TRY(KString::formatted("{}{}", return_path_to_mount_point->view(), pointed_component_relative_path->view())); @@ -126,9 +124,9 @@ ErrorOr SysFSDirectory::traverse_as_directory(FileSystemID fsid, Function< }); } -LockRefPtr SysFSDirectory::lookup(StringView name) +RefPtr SysFSDirectory::lookup(StringView name) { - return m_child_components.with([&](auto& list) -> LockRefPtr { + return m_child_components.with([&](auto& list) -> RefPtr { for (auto& child_component : list) { if (child_component.name() == name) { return child_component; diff --git a/Kernel/FileSystem/SysFS/Component.h b/Kernel/FileSystem/SysFS/Component.h index 611671459f0..baebafe0b20 100644 --- a/Kernel/FileSystem/SysFS/Component.h +++ b/Kernel/FileSystem/SysFS/Component.h @@ -9,13 +9,13 @@ #include #include #include +#include #include #include #include #include #include #include -#include namespace Kernel { @@ -31,7 +31,7 @@ public: virtual StringView name() const = 0; virtual ErrorOr read_bytes(off_t, size_t, UserOrKernelBuffer&, OpenFileDescription*) const { return Error::from_errno(ENOTIMPL); } virtual ErrorOr traverse_as_directory(FileSystemID, Function(FileSystem::DirectoryEntryView const&)>) const { VERIFY_NOT_REACHED(); } - virtual LockRefPtr lookup(StringView) { VERIFY_NOT_REACHED(); }; + virtual RefPtr lookup(StringView) { VERIFY_NOT_REACHED(); }; virtual mode_t permissions() const; virtual ErrorOr truncate(u64) { return EPERM; } virtual size_t size() const { return 0; } @@ -51,9 +51,9 @@ protected: explicit SysFSComponent(SysFSDirectory const& parent_directory); SysFSComponent(); - LockRefPtr m_parent_directory; + RefPtr const m_parent_directory; - IntrusiveListNode> m_list_node; + IntrusiveListNode> m_list_node; private: InodeIndex m_component_index {}; @@ -70,13 +70,13 @@ protected: explicit SysFSSymbolicLink(SysFSDirectory const& parent_directory, SysFSComponent const& pointed_component); - LockRefPtr m_pointed_component; + NonnullRefPtr const m_pointed_component; }; class SysFSDirectory : public SysFSComponent { public: virtual ErrorOr traverse_as_directory(FileSystemID, Function(FileSystem::DirectoryEntryView const&)>) const override final; - virtual LockRefPtr lookup(StringView name) override final; + virtual RefPtr lookup(StringView name) override final; virtual ErrorOr> to_inode(SysFS const& sysfs_instance) const override final; diff --git a/Kernel/FileSystem/SysFS/Inode.h b/Kernel/FileSystem/SysFS/Inode.h index 3dc96f988e3..c313a337ed8 100644 --- a/Kernel/FileSystem/SysFS/Inode.h +++ b/Kernel/FileSystem/SysFS/Inode.h @@ -40,7 +40,7 @@ protected: virtual ErrorOr attach(OpenFileDescription& description) override final; virtual void did_seek(OpenFileDescription&, off_t) override final; - NonnullLockRefPtr m_associated_component; + NonnullRefPtr const m_associated_component; }; } diff --git a/Kernel/FileSystem/SysFS/Registry.cpp b/Kernel/FileSystem/SysFS/Registry.cpp index 08bac173abe..8f93c257271 100644 --- a/Kernel/FileSystem/SysFS/Registry.cpp +++ b/Kernel/FileSystem/SysFS/Registry.cpp @@ -45,7 +45,6 @@ SysFSBusDirectory& SysFSComponentRegistry::buses_directory() void SysFSComponentRegistry::register_new_bus_directory(SysFSDirectory& new_bus_directory) { - VERIFY(!m_root_directory->m_buses_directory.is_null()); MUST(m_root_directory->m_buses_directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(new_bus_directory); return {}; diff --git a/Kernel/FileSystem/SysFS/Registry.h b/Kernel/FileSystem/SysFS/Registry.h index 360e29a5a58..f3a4ca68bd1 100644 --- a/Kernel/FileSystem/SysFS/Registry.h +++ b/Kernel/FileSystem/SysFS/Registry.h @@ -31,7 +31,7 @@ public: SysFSBusDirectory& buses_directory(); private: - NonnullLockRefPtr m_root_directory; + NonnullRefPtr const m_root_directory; Spinlock m_root_directory_lock {}; }; diff --git a/Kernel/FileSystem/SysFS/RootDirectory.cpp b/Kernel/FileSystem/SysFS/RootDirectory.cpp index d031243950c..f5ae02c33b6 100644 --- a/Kernel/FileSystem/SysFS/RootDirectory.cpp +++ b/Kernel/FileSystem/SysFS/RootDirectory.cpp @@ -14,25 +14,24 @@ namespace Kernel { -NonnullLockRefPtr SysFSRootDirectory::create() +NonnullRefPtr SysFSRootDirectory::create() { - return adopt_lock_ref(*new (nothrow) SysFSRootDirectory); + return adopt_ref(*new (nothrow) SysFSRootDirectory); } SysFSRootDirectory::SysFSRootDirectory() + : m_buses_directory(SysFSBusDirectory::must_create(*this)) { - auto buses_directory = SysFSBusDirectory::must_create(*this); auto device_identifiers_directory = SysFSDeviceIdentifiersDirectory::must_create(*this); auto devices_directory = SysFSDevicesDirectory::must_create(*this); auto global_kernel_stats_directory = SysFSGlobalKernelStatsDirectory::must_create(*this); MUST(m_child_components.with([&](auto& list) -> ErrorOr { - list.append(buses_directory); + list.append(m_buses_directory); list.append(device_identifiers_directory); list.append(devices_directory); list.append(global_kernel_stats_directory); return {}; })); - m_buses_directory = buses_directory; } } diff --git a/Kernel/FileSystem/SysFS/RootDirectory.h b/Kernel/FileSystem/SysFS/RootDirectory.h index bd12df8bfa6..e09054cdf45 100644 --- a/Kernel/FileSystem/SysFS/RootDirectory.h +++ b/Kernel/FileSystem/SysFS/RootDirectory.h @@ -16,12 +16,12 @@ class SysFSRootDirectory final : public SysFSDirectory { public: virtual StringView name() const override { return "."sv; } - static NonnullLockRefPtr create(); + static NonnullRefPtr create(); private: virtual bool is_root_directory() const override final { return true; } SysFSRootDirectory(); - LockRefPtr m_buses_directory; + NonnullRefPtr const m_buses_directory; }; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.cpp index 488364f4837..f9d1a2bf63f 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.cpp @@ -10,9 +10,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSBusDirectory::must_create(SysFSRootDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSBusDirectory::must_create(SysFSRootDirectory const& parent_directory) { - auto directory = adopt_lock_ref(*new (nothrow) SysFSBusDirectory(parent_directory)); + auto directory = adopt_ref(*new (nothrow) SysFSBusDirectory(parent_directory)); return directory; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.h index dc906de433b..c8ccb14c74a 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/Directory.h @@ -16,7 +16,7 @@ class SysFSBusDirectory : public SysFSDirectory { public: virtual StringView name() const override { return "bus"sv; } - static NonnullLockRefPtr must_create(SysFSRootDirectory const&); + static NonnullRefPtr must_create(SysFSRootDirectory const&); private: explicit SysFSBusDirectory(SysFSRootDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/BusDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/BusDirectory.cpp index a720731bd14..5fc3eaf25f5 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/BusDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/BusDirectory.cpp @@ -15,7 +15,7 @@ namespace Kernel { UNMAP_AFTER_INIT void PCIBusSysFSDirectory::initialize() { - auto pci_directory = adopt_lock_ref(*new (nothrow) PCIBusSysFSDirectory()); + auto pci_directory = adopt_ref(*new (nothrow) PCIBusSysFSDirectory()); SysFSComponentRegistry::the().register_new_bus_directory(pci_directory); } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.cpp b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.cpp index e238ae84e29..87427dea58d 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.cpp @@ -47,9 +47,9 @@ StringView PCIDeviceAttributeSysFSComponent::name() const } } -NonnullLockRefPtr PCIDeviceAttributeSysFSComponent::create(PCIDeviceSysFSDirectory const& device, PCI::RegisterOffset offset, size_t field_bytes_width) +NonnullRefPtr PCIDeviceAttributeSysFSComponent::create(PCIDeviceSysFSDirectory const& device, PCI::RegisterOffset offset, size_t field_bytes_width) { - return adopt_lock_ref(*new (nothrow) PCIDeviceAttributeSysFSComponent(device, offset, field_bytes_width)); + return adopt_ref(*new (nothrow) PCIDeviceAttributeSysFSComponent(device, offset, field_bytes_width)); } PCIDeviceAttributeSysFSComponent::PCIDeviceAttributeSysFSComponent(PCIDeviceSysFSDirectory const& device, PCI::RegisterOffset offset, size_t field_bytes_width) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.h b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.h index 458a2625e2c..e361c28c137 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceAttribute.h @@ -15,7 +15,7 @@ namespace Kernel { class PCIDeviceAttributeSysFSComponent : public SysFSComponent { public: - static NonnullLockRefPtr create(PCIDeviceSysFSDirectory const& device, PCI::RegisterOffset offset, size_t field_bytes_width); + static NonnullRefPtr create(PCIDeviceSysFSDirectory const& device, PCI::RegisterOffset offset, size_t field_bytes_width); virtual ErrorOr read_bytes(off_t, size_t, UserOrKernelBuffer&, OpenFileDescription*) const override; virtual ~PCIDeviceAttributeSysFSComponent() {}; @@ -25,7 +25,7 @@ public: protected: ErrorOr> try_to_generate_buffer() const; PCIDeviceAttributeSysFSComponent(PCIDeviceSysFSDirectory const& device, PCI::RegisterOffset offset, size_t field_bytes_width); - NonnullLockRefPtr m_device; + NonnullRefPtr m_device; PCI::RegisterOffset m_offset; size_t m_field_bytes_width; }; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.cpp index e62f50dd485..f193c5005ae 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.cpp @@ -13,12 +13,12 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr PCIDeviceSysFSDirectory::create(SysFSDirectory const& parent_directory, PCI::DeviceIdentifier const& device_identifier) +UNMAP_AFTER_INIT NonnullRefPtr PCIDeviceSysFSDirectory::create(SysFSDirectory const& parent_directory, PCI::DeviceIdentifier const& device_identifier) { // FIXME: Handle allocation failure gracefully auto& address = device_identifier.address(); auto device_name = MUST(KString::formatted("{:04x}:{:02x}:{:02x}.{}", address.domain(), address.bus(), address.device(), address.function())); - auto directory = adopt_lock_ref(*new (nothrow) PCIDeviceSysFSDirectory(move(device_name), parent_directory, device_identifier)); + auto directory = adopt_ref(*new (nothrow) PCIDeviceSysFSDirectory(move(device_name), parent_directory, device_identifier)); MUST(directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(PCIDeviceAttributeSysFSComponent::create(*directory, PCI::RegisterOffset::VENDOR_ID, 2)); list.append(PCIDeviceAttributeSysFSComponent::create(*directory, PCI::RegisterOffset::DEVICE_ID, 2)); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.h b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.h index a5603b26c1e..f8eb5da1919 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceDirectory.h @@ -15,7 +15,7 @@ namespace Kernel { class PCIDeviceSysFSDirectory final : public SysFSDirectory { public: - static NonnullLockRefPtr create(SysFSDirectory const&, PCI::DeviceIdentifier const&); + static NonnullRefPtr create(SysFSDirectory const&, PCI::DeviceIdentifier const&); PCI::DeviceIdentifier const& device_identifier() const { return *m_device_identifier; } virtual StringView name() const override { return m_device_directory_name->view(); } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.cpp b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.cpp index dca21f51927..12a40d7fe0b 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.cpp @@ -12,10 +12,10 @@ namespace Kernel { -NonnullLockRefPtr PCIDeviceExpansionROMSysFSComponent::create(PCIDeviceSysFSDirectory const& device) +NonnullRefPtr PCIDeviceExpansionROMSysFSComponent::create(PCIDeviceSysFSDirectory const& device) { auto option_rom_size = PCI::get_expansion_rom_space_size(device.device_identifier()); - return adopt_lock_ref(*new (nothrow) PCIDeviceExpansionROMSysFSComponent(device, option_rom_size)); + return adopt_ref(*new (nothrow) PCIDeviceExpansionROMSysFSComponent(device, option_rom_size)); } PCIDeviceExpansionROMSysFSComponent::PCIDeviceExpansionROMSysFSComponent(PCIDeviceSysFSDirectory const& device, size_t option_rom_size) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.h b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.h index 817839ff3b5..bd5d946a724 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/PCI/DeviceExpansionROM.h @@ -15,7 +15,7 @@ namespace Kernel { class PCIDeviceExpansionROMSysFSComponent : public SysFSComponent { public: - static NonnullLockRefPtr create(PCIDeviceSysFSDirectory const& device); + static NonnullRefPtr create(PCIDeviceSysFSDirectory const& device); virtual ErrorOr read_bytes(off_t, size_t, UserOrKernelBuffer&, OpenFileDescription*) const override; virtual ~PCIDeviceExpansionROMSysFSComponent() {}; @@ -25,7 +25,7 @@ public: protected: ErrorOr> try_to_generate_buffer(size_t offset_in_rom, size_t count) const; PCIDeviceExpansionROMSysFSComponent(PCIDeviceSysFSDirectory const& device, size_t option_rom_size); - NonnullLockRefPtr m_device; + NonnullRefPtr m_device; size_t const m_option_rom_size { 0 }; }; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/BusDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/BusDirectory.cpp index 29eb5310642..cf3eda8d7fc 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/BusDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/BusDirectory.cpp @@ -40,7 +40,7 @@ UNMAP_AFTER_INIT SysFSUSBBusDirectory::SysFSUSBBusDirectory(SysFSBusDirectory& b UNMAP_AFTER_INIT void SysFSUSBBusDirectory::initialize() { - auto directory = adopt_lock_ref(*new SysFSUSBBusDirectory(SysFSComponentRegistry::the().buses_directory())); + auto directory = adopt_ref(*new SysFSUSBBusDirectory(SysFSComponentRegistry::the().buses_directory())); SysFSComponentRegistry::the().register_new_bus_directory(directory); s_sysfs_usb_bus_directory = directory; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.cpp b/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.cpp index 2fdf5bd7e64..d4018a2d025 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.cpp @@ -11,10 +11,10 @@ namespace Kernel { -ErrorOr> SysFSUSBDeviceInformation::create(USB::Device& device) +ErrorOr> SysFSUSBDeviceInformation::create(USB::Device& device) { auto device_name = TRY(KString::number(device.address())); - return adopt_nonnull_lock_ref_or_enomem(new (nothrow) SysFSUSBDeviceInformation(move(device_name), device)); + return adopt_nonnull_ref_or_enomem(new (nothrow) SysFSUSBDeviceInformation(move(device_name), device)); } SysFSUSBDeviceInformation::SysFSUSBDeviceInformation(NonnullOwnPtr device_name, USB::Device& device) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.h b/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.h index 03768e004ed..afdcf32399a 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Bus/USB/DeviceInformation.h @@ -20,7 +20,7 @@ class SysFSUSBDeviceInformation : public SysFSComponent { public: virtual ~SysFSUSBDeviceInformation() override; - static ErrorOr> create(USB::Device&); + static ErrorOr> create(USB::Device&); virtual StringView name() const override { return m_device_name->view(); } protected: @@ -28,7 +28,7 @@ protected: virtual ErrorOr read_bytes(off_t offset, size_t count, UserOrKernelBuffer& buffer, OpenFileDescription*) const override; - NonnullLockRefPtr m_device; + NonnullRefPtr m_device; private: ErrorOr try_generate(KBufferBuilder&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.cpp index 71d0c4883f6..234f6d37a5f 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.cpp @@ -12,9 +12,9 @@ namespace Kernel { static SysFSBlockDevicesDirectory* s_the { nullptr }; -NonnullLockRefPtr SysFSBlockDevicesDirectory::must_create(SysFSDeviceIdentifiersDirectory const& devices_directory) +NonnullRefPtr SysFSBlockDevicesDirectory::must_create(SysFSDeviceIdentifiersDirectory const& devices_directory) { - return adopt_lock_ref_if_nonnull(new SysFSBlockDevicesDirectory(devices_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new SysFSBlockDevicesDirectory(devices_directory)).release_nonnull(); } SysFSBlockDevicesDirectory::SysFSBlockDevicesDirectory(SysFSDeviceIdentifiersDirectory const& devices_directory) : SysFSDirectory(devices_directory) diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.h b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.h index c883e739f2d..c90b5ede671 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/BlockDevicesDirectory.h @@ -17,7 +17,7 @@ class SysFSBlockDevicesDirectory final : public SysFSDirectory { public: virtual StringView name() const override { return "block"sv; } - static NonnullLockRefPtr must_create(SysFSDeviceIdentifiersDirectory const&); + static NonnullRefPtr must_create(SysFSDeviceIdentifiersDirectory const&); static SysFSBlockDevicesDirectory& the(); diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.cpp index 2f1cadedb33..4bc3fc6983f 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.cpp @@ -12,9 +12,9 @@ namespace Kernel { static SysFSCharacterDevicesDirectory* s_the { nullptr }; -NonnullLockRefPtr SysFSCharacterDevicesDirectory::must_create(SysFSDeviceIdentifiersDirectory const& devices_directory) +NonnullRefPtr SysFSCharacterDevicesDirectory::must_create(SysFSDeviceIdentifiersDirectory const& devices_directory) { - return adopt_lock_ref_if_nonnull(new SysFSCharacterDevicesDirectory(devices_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new SysFSCharacterDevicesDirectory(devices_directory)).release_nonnull(); } SysFSCharacterDevicesDirectory::SysFSCharacterDevicesDirectory(SysFSDeviceIdentifiersDirectory const& devices_directory) : SysFSDirectory(devices_directory) diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.h b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.h index 9229c5a055c..ab22bc5e709 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/CharacterDevicesDirectory.h @@ -17,7 +17,7 @@ class SysFSCharacterDevicesDirectory final : public SysFSDirectory { public: virtual StringView name() const override { return "char"sv; } - static NonnullLockRefPtr must_create(SysFSDeviceIdentifiersDirectory const&); + static NonnullRefPtr must_create(SysFSDeviceIdentifiersDirectory const&); static SysFSCharacterDevicesDirectory& the(); diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.cpp b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.cpp index e8fe2b1a426..05cd3b71fdb 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.cpp @@ -10,11 +10,11 @@ namespace Kernel { -NonnullLockRefPtr SysFSDeviceComponent::must_create(Device const& device) +NonnullRefPtr SysFSDeviceComponent::must_create(Device const& device) { // FIXME: Handle allocation failure gracefully auto device_name = MUST(KString::formatted("{}:{}", device.major(), device.minor())); - return adopt_lock_ref_if_nonnull(new SysFSDeviceComponent(move(device_name), device)).release_nonnull(); + return adopt_ref_if_nonnull(new SysFSDeviceComponent(move(device_name), device)).release_nonnull(); } SysFSDeviceComponent::SysFSDeviceComponent(NonnullOwnPtr major_minor_formatted_device_name, Device const& device) : SysFSComponent() diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.h b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.h index e8f4a51bb61..6859ac0ff5a 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.h +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/DeviceComponent.h @@ -19,7 +19,7 @@ class SysFSDeviceComponent final friend class SysFSCharacterDevicesDirectory; public: - static NonnullLockRefPtr must_create(Device const&); + static NonnullRefPtr must_create(Device const&); virtual StringView name() const override { return m_major_minor_formatted_device_name->view(); } bool is_block_device() const { return m_block_device; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.cpp index ea52a3374f8..36539482461 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.cpp @@ -20,9 +20,9 @@ SysFSDeviceIdentifiersDirectory& SysFSDeviceIdentifiersDirectory::the() return *s_the; } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSDeviceIdentifiersDirectory::must_create(SysFSRootDirectory const& root_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSDeviceIdentifiersDirectory::must_create(SysFSRootDirectory const& root_directory) { - auto devices_directory = adopt_lock_ref_if_nonnull(new SysFSDeviceIdentifiersDirectory(root_directory)).release_nonnull(); + auto devices_directory = adopt_ref_if_nonnull(new SysFSDeviceIdentifiersDirectory(root_directory)).release_nonnull(); MUST(devices_directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(SysFSBlockDevicesDirectory::must_create(*devices_directory)); list.append(SysFSCharacterDevicesDirectory::must_create(*devices_directory)); diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.h index 6b5dba7c017..9bc56f2fa22 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/Directory.h @@ -14,7 +14,7 @@ namespace Kernel { class SysFSDeviceIdentifiersDirectory final : public SysFSDirectory { public: virtual StringView name() const override { return "dev"sv; } - static NonnullLockRefPtr must_create(SysFSRootDirectory const&); + static NonnullRefPtr must_create(SysFSRootDirectory const&); static SysFSDeviceIdentifiersDirectory& the(); diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.cpp b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.cpp index 53f22785ca2..56725b58bba 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.cpp @@ -11,16 +11,16 @@ namespace Kernel { -ErrorOr> SysFSSymbolicLinkDeviceComponent::try_create(SysFSCharacterDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component) +ErrorOr> SysFSSymbolicLinkDeviceComponent::try_create(SysFSCharacterDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component) { auto device_name = TRY(KString::formatted("{}:{}", device.major(), device.minor())); - return adopt_nonnull_lock_ref_or_enomem(new (nothrow) SysFSSymbolicLinkDeviceComponent(parent_directory, move(device_name), device, pointed_component)); + return adopt_nonnull_ref_or_enomem(new (nothrow) SysFSSymbolicLinkDeviceComponent(parent_directory, move(device_name), device, pointed_component)); } -ErrorOr> SysFSSymbolicLinkDeviceComponent::try_create(SysFSBlockDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component) +ErrorOr> SysFSSymbolicLinkDeviceComponent::try_create(SysFSBlockDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component) { auto device_name = TRY(KString::formatted("{}:{}", device.major(), device.minor())); - return adopt_nonnull_lock_ref_or_enomem(new (nothrow) SysFSSymbolicLinkDeviceComponent(parent_directory, move(device_name), device, pointed_component)); + return adopt_nonnull_ref_or_enomem(new (nothrow) SysFSSymbolicLinkDeviceComponent(parent_directory, move(device_name), device, pointed_component)); } SysFSSymbolicLinkDeviceComponent::SysFSSymbolicLinkDeviceComponent(SysFSCharacterDevicesDirectory const& parent_directory, NonnullOwnPtr major_minor_formatted_device_name, Device const& device, SysFSComponent const& pointed_component) diff --git a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.h b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.h index 1f9105216ad..0a44acacb05 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.h +++ b/Kernel/FileSystem/SysFS/Subsystems/DeviceIdentifiers/SymbolicLinkDeviceComponent.h @@ -21,8 +21,8 @@ class SysFSSymbolicLinkDeviceComponent final friend class SysFSComponentRegistry; public: - static ErrorOr> try_create(SysFSCharacterDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component); - static ErrorOr> try_create(SysFSBlockDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component); + static ErrorOr> try_create(SysFSCharacterDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component); + static ErrorOr> try_create(SysFSBlockDevicesDirectory const& parent_directory, Device const& device, SysFSComponent const& pointed_component); virtual StringView name() const override { return m_major_minor_formatted_device_name->view(); } bool is_block_device() const { return m_block_device; } @@ -31,7 +31,7 @@ private: SysFSSymbolicLinkDeviceComponent(SysFSCharacterDevicesDirectory const& parent_directory, NonnullOwnPtr major_minor_formatted_device_name, Device const&, SysFSComponent const& pointed_component); SysFSSymbolicLinkDeviceComponent(SysFSBlockDevicesDirectory const& parent_directory, NonnullOwnPtr major_minor_formatted_device_name, Device const&, SysFSComponent const& pointed_component); - IntrusiveListNode> m_list_node; + IntrusiveListNode> m_list_node; bool const m_block_device { false }; NonnullOwnPtr m_major_minor_formatted_device_name; }; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.cpp index 312c0a94b50..0d4178159f7 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.cpp @@ -12,9 +12,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSDevicesDirectory::must_create(SysFSRootDirectory const& root_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSDevicesDirectory::must_create(SysFSRootDirectory const& root_directory) { - auto devices_directory = adopt_lock_ref_if_nonnull(new (nothrow) SysFSDevicesDirectory(root_directory)).release_nonnull(); + auto devices_directory = adopt_ref_if_nonnull(new (nothrow) SysFSDevicesDirectory(root_directory)).release_nonnull(); MUST(devices_directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(SysFSStorageDirectory::must_create(*devices_directory)); list.append(SysFSGraphicsDirectory::must_create(*devices_directory)); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.h index 04d27be2a4b..0d1e08ba45e 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Directory.h @@ -14,7 +14,7 @@ namespace Kernel { class SysFSDevicesDirectory final : public SysFSDirectory { public: virtual StringView name() const override { return "devices"sv; } - static NonnullLockRefPtr must_create(SysFSRootDirectory const&); + static NonnullRefPtr must_create(SysFSRootDirectory const&); private: explicit SysFSDevicesDirectory(SysFSRootDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.cpp index 43d2c640aa8..febfbf3b008 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.cpp @@ -10,9 +10,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSGraphicsDirectory::must_create(SysFSDevicesDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSGraphicsDirectory::must_create(SysFSDevicesDirectory const& parent_directory) { - auto directory = adopt_lock_ref(*new (nothrow) SysFSGraphicsDirectory(parent_directory)); + auto directory = adopt_ref(*new (nothrow) SysFSGraphicsDirectory(parent_directory)); MUST(directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(SysFSDisplayConnectorsDirectory::must_create(*directory)); return {}; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.h index 528fbd2a8a4..7378d0ebfc9 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/Directory.h @@ -17,7 +17,7 @@ class SysFSGraphicsDirectory : public SysFSDirectory { public: virtual StringView name() const override { return "graphics"sv; } - static NonnullLockRefPtr must_create(SysFSDevicesDirectory const&); + static NonnullRefPtr must_create(SysFSDevicesDirectory const&); private: explicit SysFSGraphicsDirectory(SysFSDevicesDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.cpp index 86e94530cd3..6a9205f3af2 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.cpp @@ -31,9 +31,9 @@ StringView DisplayConnectorAttributeSysFSComponent::name() const } } -NonnullLockRefPtr DisplayConnectorAttributeSysFSComponent::must_create(DisplayConnectorSysFSDirectory const& device_directory, Type type) +NonnullRefPtr DisplayConnectorAttributeSysFSComponent::must_create(DisplayConnectorSysFSDirectory const& device_directory, Type type) { - return adopt_lock_ref(*new (nothrow) DisplayConnectorAttributeSysFSComponent(device_directory, type)); + return adopt_ref(*new (nothrow) DisplayConnectorAttributeSysFSComponent(device_directory, type)); } DisplayConnectorAttributeSysFSComponent::DisplayConnectorAttributeSysFSComponent(DisplayConnectorSysFSDirectory const& device_directory, Type type) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.h index 56f106cf3ee..f1db9cb30aa 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceAttribute.h @@ -25,7 +25,7 @@ public: }; public: - static NonnullLockRefPtr must_create(DisplayConnectorSysFSDirectory const& device_directory, Type); + static NonnullRefPtr must_create(DisplayConnectorSysFSDirectory const& device_directory, Type); virtual ErrorOr read_bytes(off_t, size_t, UserOrKernelBuffer&, OpenFileDescription*) const override; virtual ~DisplayConnectorAttributeSysFSComponent() {}; @@ -35,7 +35,7 @@ public: protected: ErrorOr> try_to_generate_buffer() const; DisplayConnectorAttributeSysFSComponent(DisplayConnectorSysFSDirectory const& device, Type); - NonnullLockRefPtr m_device; + NonnullRefPtr m_device; Type const m_type { Type::MutableModeSettingCapable }; }; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.cpp index 334a5c33bef..4c6d274f1bf 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.cpp @@ -18,11 +18,11 @@ DisplayConnector const& DisplayConnectorSysFSDirectory::device(Badge DisplayConnectorSysFSDirectory::create(SysFSDirectory const& parent_directory, DisplayConnector const& device) +UNMAP_AFTER_INIT NonnullRefPtr DisplayConnectorSysFSDirectory::create(SysFSDirectory const& parent_directory, DisplayConnector const& device) { // FIXME: Handle allocation failure gracefully auto device_name = MUST(KString::formatted("{}", device.minor())); - auto directory = adopt_lock_ref(*new (nothrow) DisplayConnectorSysFSDirectory(move(device_name), parent_directory, device)); + auto directory = adopt_ref(*new (nothrow) DisplayConnectorSysFSDirectory(move(device_name), parent_directory, device)); MUST(directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(DisplayConnectorAttributeSysFSComponent::must_create(*directory, DisplayConnectorAttributeSysFSComponent::Type::MutableModeSettingCapable)); list.append(DisplayConnectorAttributeSysFSComponent::must_create(*directory, DisplayConnectorAttributeSysFSComponent::Type::DoubleFrameBufferingCapable)); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.h index 45d48af637e..e22b178b9a7 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/DeviceDirectory.h @@ -15,7 +15,7 @@ namespace Kernel { class DisplayConnectorAttributeSysFSComponent; class DisplayConnectorSysFSDirectory final : public SysFSDirectory { public: - static NonnullLockRefPtr create(SysFSDirectory const&, DisplayConnector const&); + static NonnullRefPtr create(SysFSDirectory const&, DisplayConnector const&); virtual StringView name() const override { return m_device_directory_name->view(); } @@ -23,7 +23,7 @@ public: private: DisplayConnectorSysFSDirectory(NonnullOwnPtr device_directory_name, SysFSDirectory const&, DisplayConnector const&); - LockRefPtr m_device; + NonnullRefPtr const m_device; NonnullOwnPtr m_device_directory_name; }; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.cpp index a2fc29c97fb..1d897e153bb 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.cpp @@ -16,9 +16,9 @@ namespace Kernel { static SysFSDisplayConnectorsDirectory* s_the { nullptr }; -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSDisplayConnectorsDirectory::must_create(SysFSGraphicsDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSDisplayConnectorsDirectory::must_create(SysFSGraphicsDirectory const& parent_directory) { - auto directory = adopt_lock_ref(*new (nothrow) SysFSDisplayConnectorsDirectory(parent_directory)); + auto directory = adopt_ref(*new (nothrow) SysFSDisplayConnectorsDirectory(parent_directory)); s_the = directory; return directory; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.h index 3924ff16158..04038277d1a 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Graphics/DisplayConnector/Directory.h @@ -20,7 +20,7 @@ class SysFSDisplayConnectorsDirectory : public SysFSDirectory { public: virtual StringView name() const override { return "connectors"sv; } static SysFSDisplayConnectorsDirectory& the(); - static NonnullLockRefPtr must_create(SysFSGraphicsDirectory const&); + static NonnullRefPtr must_create(SysFSGraphicsDirectory const&); void plug(Badge, DisplayConnectorSysFSDirectory&); void unplug(Badge, SysFSDirectory&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.cpp index 193e8149be4..754d2b32196 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.cpp @@ -25,9 +25,9 @@ StringView StorageDeviceAttributeSysFSComponent::name() const } } -NonnullLockRefPtr StorageDeviceAttributeSysFSComponent::must_create(StorageDeviceSysFSDirectory const& device_directory, Type type) +NonnullRefPtr StorageDeviceAttributeSysFSComponent::must_create(StorageDeviceSysFSDirectory const& device_directory, Type type) { - return adopt_lock_ref(*new (nothrow) StorageDeviceAttributeSysFSComponent(device_directory, type)); + return adopt_ref(*new (nothrow) StorageDeviceAttributeSysFSComponent(device_directory, type)); } StorageDeviceAttributeSysFSComponent::StorageDeviceAttributeSysFSComponent(StorageDeviceSysFSDirectory const& device_directory, Type type) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.h index 2145cbdf13f..9682fb01721 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceAttribute.h @@ -21,7 +21,7 @@ public: }; public: - static NonnullLockRefPtr must_create(StorageDeviceSysFSDirectory const& device_directory, Type); + static NonnullRefPtr must_create(StorageDeviceSysFSDirectory const& device_directory, Type); virtual ErrorOr read_bytes(off_t, size_t, UserOrKernelBuffer&, OpenFileDescription*) const override; virtual ~StorageDeviceAttributeSysFSComponent() {}; @@ -31,7 +31,7 @@ public: protected: ErrorOr> try_to_generate_buffer() const; StorageDeviceAttributeSysFSComponent(StorageDeviceSysFSDirectory const& device, Type); - NonnullLockRefPtr m_device; + NonnullRefPtr m_device; Type const m_type { Type::EndLBA }; }; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.cpp index 68dc5205d70..a5f284de3a0 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.cpp @@ -18,12 +18,12 @@ StorageDevice const& StorageDeviceSysFSDirectory::device(Badge StorageDeviceSysFSDirectory::create(SysFSDirectory const& parent_directory, StorageDevice const& device) +UNMAP_AFTER_INIT NonnullRefPtr StorageDeviceSysFSDirectory::create(SysFSDirectory const& parent_directory, StorageDevice const& device) { // FIXME: Handle allocation failure gracefully auto lun_address = device.logical_unit_number_address(); auto device_name = MUST(KString::formatted("{:02x}:{:02x}.{}", lun_address.controller_id, lun_address.target_id, lun_address.disk_id)); - auto directory = adopt_lock_ref(*new (nothrow) StorageDeviceSysFSDirectory(move(device_name), parent_directory, device)); + auto directory = adopt_ref(*new (nothrow) StorageDeviceSysFSDirectory(move(device_name), parent_directory, device)); MUST(directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(StorageDeviceAttributeSysFSComponent::must_create(*directory, StorageDeviceAttributeSysFSComponent::Type::EndLBA)); list.append(StorageDeviceAttributeSysFSComponent::must_create(*directory, StorageDeviceAttributeSysFSComponent::Type::SectorSize)); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.h index 69b5cc4c2f4..b06ed67ad9d 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/DeviceDirectory.h @@ -15,7 +15,7 @@ namespace Kernel { class StorageDeviceAttributeSysFSComponent; class StorageDeviceSysFSDirectory final : public SysFSDirectory { public: - static NonnullLockRefPtr create(SysFSDirectory const&, StorageDevice const&); + static NonnullRefPtr create(SysFSDirectory const&, StorageDevice const&); virtual StringView name() const override { return m_device_directory_name->view(); } @@ -23,7 +23,7 @@ public: private: StorageDeviceSysFSDirectory(NonnullOwnPtr device_directory_name, SysFSDirectory const&, StorageDevice const&); - LockRefPtr m_device; + RefPtr m_device; NonnullOwnPtr m_device_directory_name; }; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.cpp index de08cb76bdc..8bd4c2ace8b 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.cpp @@ -15,9 +15,9 @@ namespace Kernel { static SysFSStorageDirectory* s_the { nullptr }; -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSStorageDirectory::must_create(SysFSDevicesDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSStorageDirectory::must_create(SysFSDevicesDirectory const& parent_directory) { - auto directory = adopt_lock_ref(*new (nothrow) SysFSStorageDirectory(parent_directory)); + auto directory = adopt_ref(*new (nothrow) SysFSStorageDirectory(parent_directory)); s_the = directory; return directory; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.h index 8d59ae52e95..80170fb9016 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Devices/Storage/Directory.h @@ -19,7 +19,7 @@ class SysFSStorageDirectory : public SysFSDirectory { public: virtual StringView name() const override { return "storage"sv; } static SysFSStorageDirectory& the(); - static NonnullLockRefPtr must_create(SysFSDevicesDirectory const&); + static NonnullRefPtr must_create(SysFSDevicesDirectory const&); void plug(Badge, StorageDeviceSysFSDirectory&); void unplug(Badge, SysFSDirectory&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.cpp b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.cpp index 2399a6cf3c4..b503116e7f9 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.cpp @@ -15,9 +15,9 @@ namespace Kernel { -NonnullLockRefPtr BIOSSysFSComponent::must_create(Type type, PhysicalAddress blob_paddr, size_t blob_size) +NonnullRefPtr BIOSSysFSComponent::must_create(Type type, PhysicalAddress blob_paddr, size_t blob_size) { - return adopt_lock_ref_if_nonnull(new (nothrow) BIOSSysFSComponent(type, blob_paddr, blob_size)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) BIOSSysFSComponent(type, blob_paddr, blob_size)).release_nonnull(); } UNMAP_AFTER_INIT BIOSSysFSComponent::BIOSSysFSComponent(Type type, PhysicalAddress blob_paddr, size_t blob_size) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.h b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.h index 3fb2a61a354..a58ec9fc7c3 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Component.h @@ -6,11 +6,11 @@ #pragma once +#include #include #include #include #include -#include #include namespace Kernel { @@ -23,7 +23,7 @@ public: }; public: - static NonnullLockRefPtr must_create(Type, PhysicalAddress, size_t blob_size); + static NonnullRefPtr must_create(Type, PhysicalAddress, size_t blob_size); virtual StringView name() const override; virtual ErrorOr read_bytes(off_t, size_t, UserOrKernelBuffer&, OpenFileDescription*) const override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.cpp index 74ca730793d..bc1532bd947 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.cpp @@ -39,9 +39,9 @@ UNMAP_AFTER_INIT void BIOSSysFSDirectory::set_dmi_32_bit_entry_initialization_va m_smbios_structure_table_length = smbios_entry.ptr()->legacy_structure.smbios_table_length; } -UNMAP_AFTER_INIT NonnullLockRefPtr BIOSSysFSDirectory::must_create(FirmwareSysFSDirectory& firmware_directory) +UNMAP_AFTER_INIT NonnullRefPtr BIOSSysFSDirectory::must_create(FirmwareSysFSDirectory& firmware_directory) { - auto bios_directory = MUST(adopt_nonnull_lock_ref_or_enomem(new (nothrow) BIOSSysFSDirectory(firmware_directory))); + auto bios_directory = MUST(adopt_nonnull_ref_or_enomem(new (nothrow) BIOSSysFSDirectory(firmware_directory))); bios_directory->create_components(); return bios_directory; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.h index 7f926200069..7324ac03fba 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Firmware/BIOS/Directory.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class BIOSSysFSDirectory : public SysFSDirectory { public: virtual StringView name() const override { return "bios"sv; } - static NonnullLockRefPtr must_create(FirmwareSysFSDirectory&); + static NonnullRefPtr must_create(FirmwareSysFSDirectory&); void create_components(); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Firmware/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Firmware/Directory.cpp index 986f7397ebc..4ef941eb6dc 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Firmware/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Firmware/Directory.cpp @@ -14,7 +14,7 @@ namespace Kernel { UNMAP_AFTER_INIT void FirmwareSysFSDirectory::initialize() { - auto firmware_directory = adopt_lock_ref_if_nonnull(new (nothrow) FirmwareSysFSDirectory()).release_nonnull(); + auto firmware_directory = adopt_ref_if_nonnull(new (nothrow) FirmwareSysFSDirectory()).release_nonnull(); SysFSComponentRegistry::the().register_new_component(firmware_directory); firmware_directory->create_components(); } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.cpp index 942ee51b495..96dc9f1dacf 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.cpp @@ -18,9 +18,9 @@ UNMAP_AFTER_INIT SysFSCPUInformation::SysFSCPUInformation(SysFSDirectory const& { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSCPUInformation::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSCPUInformation::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSCPUInformation(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSCPUInformation(parent_directory)).release_nonnull(); } ErrorOr SysFSCPUInformation::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.h index 08897598bcc..28d123fe50b 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/CPUInfo.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSCPUInformation final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "cpuinfo"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: SysFSCPUInformation(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.cpp index 35b86f2796c..d9e6ea3e3f8 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.cpp @@ -24,9 +24,9 @@ StringView SysFSSystemConstantInformation::name() const } } -NonnullLockRefPtr SysFSSystemConstantInformation::must_create(SysFSDirectory const& parent_directory, NonnullOwnPtr constant_data_buffer, mode_t mode, ReadableByJailedProcesses readable_by_jailed_processes, NodeName name) +NonnullRefPtr SysFSSystemConstantInformation::must_create(SysFSDirectory const& parent_directory, NonnullOwnPtr constant_data_buffer, mode_t mode, ReadableByJailedProcesses readable_by_jailed_processes, NodeName name) { - auto node = adopt_lock_ref_if_nonnull(new (nothrow) SysFSSystemConstantInformation(parent_directory, move(constant_data_buffer), mode, readable_by_jailed_processes, name)).release_nonnull(); + auto node = adopt_ref_if_nonnull(new (nothrow) SysFSSystemConstantInformation(parent_directory, move(constant_data_buffer), mode, readable_by_jailed_processes, name)).release_nonnull(); return node; } diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.h index 7e26b88ba68..3deadc4cc29 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/ConstantInformation.h @@ -28,7 +28,7 @@ public: }; virtual StringView name() const override; - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory, NonnullOwnPtr constant_data_buffer, mode_t mode, ReadableByJailedProcesses readable_by_jailed_processes, NodeName name); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory, NonnullOwnPtr constant_data_buffer, mode_t mode, ReadableByJailedProcesses readable_by_jailed_processes, NodeName name); virtual ErrorOr read_bytes(off_t, size_t, UserOrKernelBuffer&, OpenFileDescription*) const override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.cpp index 865d14401ed..c8be940c9e2 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.cpp @@ -14,9 +14,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSGlobalKernelConstantsDirectory::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSGlobalKernelConstantsDirectory::must_create(SysFSDirectory const& parent_directory) { - auto global_constants_directory = adopt_lock_ref_if_nonnull(new (nothrow) SysFSGlobalKernelConstantsDirectory(parent_directory)).release_nonnull(); + auto global_constants_directory = adopt_ref_if_nonnull(new (nothrow) SysFSGlobalKernelConstantsDirectory(parent_directory)).release_nonnull(); MUST(global_constants_directory->m_child_components.with([&](auto& list) -> ErrorOr { { auto builder = TRY(KBufferBuilder::try_create()); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.h index 1a27949744f..a54f3c756b3 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Constants/Directory.h @@ -14,7 +14,7 @@ namespace Kernel { class SysFSGlobalKernelConstantsDirectory : public SysFSDirectory { public: - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); virtual StringView name() const override { return "constants"sv; } private: diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.cpp index 187fba5ef5b..e0002094c13 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.cpp @@ -27,9 +27,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSGlobalKernelStatsDirectory::must_create(SysFSRootDirectory const& root_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSGlobalKernelStatsDirectory::must_create(SysFSRootDirectory const& root_directory) { - auto global_kernel_stats_directory = adopt_lock_ref_if_nonnull(new (nothrow) SysFSGlobalKernelStatsDirectory(root_directory)).release_nonnull(); + auto global_kernel_stats_directory = adopt_ref_if_nonnull(new (nothrow) SysFSGlobalKernelStatsDirectory(root_directory)).release_nonnull(); auto global_constants_directory = SysFSGlobalKernelConstantsDirectory::must_create(*global_kernel_stats_directory); MUST(global_kernel_stats_directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(global_constants_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.h index 51af6e8be96..fee2dd59550 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Directory.h @@ -14,7 +14,7 @@ namespace Kernel { class SysFSGlobalKernelStatsDirectory : public SysFSDirectory { public: - static NonnullLockRefPtr must_create(SysFSRootDirectory const&); + static NonnullRefPtr must_create(SysFSRootDirectory const&); virtual StringView name() const override { return "kernel"sv; } private: diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.cpp index cbe7f2f111e..736cd8b86fa 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.cpp @@ -12,9 +12,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSDiskUsage::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSDiskUsage::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSDiskUsage(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSDiskUsage(parent_directory)).release_nonnull(); } UNMAP_AFTER_INIT SysFSDiskUsage::SysFSDiskUsage(SysFSDirectory const& parent_directory) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.h index 41803af168d..237f883682e 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/DiskUsage.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSDiskUsage final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "df"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: SysFSDiskUsage(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/GlobalInformation.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/GlobalInformation.h index bb0f2d2a92b..ac690d9d007 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/GlobalInformation.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/GlobalInformation.h @@ -7,13 +7,13 @@ #pragma once #include +#include #include #include #include #include #include #include -#include #include #include diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.cpp index 984d3c730b4..47e1d088a1e 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.cpp @@ -18,9 +18,9 @@ UNMAP_AFTER_INIT SysFSInterrupts::SysFSInterrupts(SysFSDirectory const& parent_d { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSInterrupts::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSInterrupts::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSInterrupts(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSInterrupts(parent_directory)).release_nonnull(); } ErrorOr SysFSInterrupts::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.h index 368e70eeda9..b62fad7537f 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Interrupts.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSInterrupts final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "interrupts"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: explicit SysFSInterrupts(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.cpp index 7c8f24f7c6b..eedf783f2c9 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.cpp @@ -16,9 +16,9 @@ UNMAP_AFTER_INIT SysFSJails::SysFSJails(SysFSDirectory const& parent_directory) { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSJails::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSJails::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSJails(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSJails(parent_directory)).release_nonnull(); } ErrorOr SysFSJails::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.h index 2dfbf73eaa1..5e67a42f59b 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Jails.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSJails final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "jails"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: explicit SysFSJails(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.cpp index d0baf4771f9..149987c01c0 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.cpp @@ -16,9 +16,9 @@ UNMAP_AFTER_INIT SysFSKeymap::SysFSKeymap(SysFSDirectory const& parent_directory { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSKeymap::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSKeymap::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSKeymap(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSKeymap(parent_directory)).release_nonnull(); } ErrorOr SysFSKeymap::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.h index 66e279ae3a4..11df9b94ca4 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Keymap.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSKeymap final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "keymap"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: explicit SysFSKeymap(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.cpp index 17c04c96a63..846e2e76e73 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.cpp @@ -16,9 +16,9 @@ UNMAP_AFTER_INIT SysFSKernelLog::SysFSKernelLog(SysFSDirectory const& parent_dir { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSKernelLog::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSKernelLog::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSKernelLog(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSKernelLog(parent_directory)).release_nonnull(); } mode_t SysFSKernelLog::permissions() const diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.h index a43d8fe7f62..1655d870731 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Log.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSKernelLog final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "dmesg"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); virtual mode_t permissions() const override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.cpp index be6ffed6feb..dec9c0a04ec 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.cpp @@ -16,9 +16,9 @@ UNMAP_AFTER_INIT SysFSMemoryStatus::SysFSMemoryStatus(SysFSDirectory const& pare { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSMemoryStatus::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSMemoryStatus::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSMemoryStatus(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSMemoryStatus(parent_directory)).release_nonnull(); } ErrorOr SysFSMemoryStatus::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.h index adbe13585ef..3239ac0b558 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/MemoryStatus.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSMemoryStatus final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "memstat"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: explicit SysFSMemoryStatus(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.cpp index 319bafd0efa..b210a5810f8 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.cpp @@ -17,9 +17,9 @@ UNMAP_AFTER_INIT SysFSNetworkARPStats::SysFSNetworkARPStats(SysFSDirectory const { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSNetworkARPStats::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSNetworkARPStats::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSNetworkARPStats(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSNetworkARPStats(parent_directory)).release_nonnull(); } ErrorOr SysFSNetworkARPStats::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.h index f8f6a50fb83..92c6de2789f 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/ARP.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSNetworkARPStats final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "arp"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: explicit SysFSNetworkARPStats(SysFSDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.cpp index 83906bcaa9b..c476212687d 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.cpp @@ -16,9 +16,9 @@ UNMAP_AFTER_INIT SysFSNetworkAdaptersStats::SysFSNetworkAdaptersStats(SysFSDirec { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSNetworkAdaptersStats::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSNetworkAdaptersStats::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSNetworkAdaptersStats(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSNetworkAdaptersStats(parent_directory)).release_nonnull(); } ErrorOr SysFSNetworkAdaptersStats::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.h index dd3d74567a1..9cbb07c2ce2 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Adapters.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSNetworkAdaptersStats final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "adapters"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: explicit SysFSNetworkAdaptersStats(SysFSDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.cpp index 76b5dd0f8a0..9027043b9fd 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.cpp @@ -17,9 +17,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSGlobalNetworkStatsDirectory::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSGlobalNetworkStatsDirectory::must_create(SysFSDirectory const& parent_directory) { - auto global_network_stats_directory = adopt_lock_ref_if_nonnull(new (nothrow) SysFSGlobalNetworkStatsDirectory(parent_directory)).release_nonnull(); + auto global_network_stats_directory = adopt_ref_if_nonnull(new (nothrow) SysFSGlobalNetworkStatsDirectory(parent_directory)).release_nonnull(); MUST(global_network_stats_directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(SysFSNetworkAdaptersStats::must_create(*global_network_stats_directory)); list.append(SysFSNetworkARPStats::must_create(*global_network_stats_directory)); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.h index 6563b75cf96..7679193aa52 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Directory.h @@ -14,7 +14,7 @@ namespace Kernel { class SysFSGlobalNetworkStatsDirectory : public SysFSDirectory { public: - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); virtual StringView name() const override { return "net"sv; } private: diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.cpp index 9cb3509e4c6..d44e6653763 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.cpp @@ -16,9 +16,9 @@ UNMAP_AFTER_INIT SysFSLocalNetStats::SysFSLocalNetStats(SysFSDirectory const& pa { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSLocalNetStats::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSLocalNetStats::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSLocalNetStats(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSLocalNetStats(parent_directory)).release_nonnull(); } ErrorOr SysFSLocalNetStats::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.h index 101552471ce..7d037b40bb3 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Local.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSLocalNetStats final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "local"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: explicit SysFSLocalNetStats(SysFSDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.cpp index 2c33d864ff5..e6d0ba58e06 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.cpp @@ -16,9 +16,9 @@ UNMAP_AFTER_INIT SysFSNetworkRouteStats::SysFSNetworkRouteStats(SysFSDirectory c { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSNetworkRouteStats::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSNetworkRouteStats::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSNetworkRouteStats(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSNetworkRouteStats(parent_directory)).release_nonnull(); } ErrorOr SysFSNetworkRouteStats::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.h index 576b9ea04ed..8c2d2043ac4 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/Route.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSNetworkRouteStats final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "route"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: explicit SysFSNetworkRouteStats(SysFSDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.cpp index ae294e60e70..9132613dbce 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.cpp @@ -18,9 +18,9 @@ UNMAP_AFTER_INIT SysFSNetworkTCPStats::SysFSNetworkTCPStats(SysFSDirectory const { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSNetworkTCPStats::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSNetworkTCPStats::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSNetworkTCPStats(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSNetworkTCPStats(parent_directory)).release_nonnull(); } ErrorOr SysFSNetworkTCPStats::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.h index 46aaba6651c..55b1f8b9412 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/TCP.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSNetworkTCPStats final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "tcp"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: explicit SysFSNetworkTCPStats(SysFSDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.cpp index 6a13a9dd97a..2dcab82ffac 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.cpp @@ -17,9 +17,9 @@ UNMAP_AFTER_INIT SysFSNetworkUDPStats::SysFSNetworkUDPStats(SysFSDirectory const { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSNetworkUDPStats::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSNetworkUDPStats::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSNetworkUDPStats(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSNetworkUDPStats(parent_directory)).release_nonnull(); } ErrorOr SysFSNetworkUDPStats::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.h index e48f9afa9a4..4d35e6f5f1e 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Network/UDP.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSNetworkUDPStats final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "udp"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: explicit SysFSNetworkUDPStats(SysFSDirectory const&); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.cpp index e2756b48a71..aabde003e62 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.cpp @@ -24,9 +24,9 @@ mode_t SysFSPowerStateSwitchNode::permissions() const return S_IRUSR | S_IRGRP | S_IWUSR | S_IWGRP; } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSPowerStateSwitchNode::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSPowerStateSwitchNode::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSPowerStateSwitchNode(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSPowerStateSwitchNode(parent_directory)).release_nonnull(); } UNMAP_AFTER_INIT SysFSPowerStateSwitchNode::SysFSPowerStateSwitchNode(SysFSDirectory const& parent_directory) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.h index 32269b80729..fed9c242c66 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/PowerStateSwitch.h @@ -7,11 +7,11 @@ #pragma once +#include #include #include #include #include -#include #include #include #include @@ -22,7 +22,7 @@ namespace Kernel { class SysFSPowerStateSwitchNode final : public SysFSComponent { public: virtual StringView name() const override { return "power_state"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); virtual mode_t permissions() const override; virtual ErrorOr write_bytes(off_t, size_t, UserOrKernelBuffer const&, OpenFileDescription*) override; virtual ErrorOr truncate(u64) override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.cpp index 0f4f82ca97e..85fb9246233 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.cpp @@ -19,9 +19,9 @@ UNMAP_AFTER_INIT SysFSOverallProcesses::SysFSOverallProcesses(SysFSDirectory con { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSOverallProcesses::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSOverallProcesses::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSOverallProcesses(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSOverallProcesses(parent_directory)).release_nonnull(); } ErrorOr SysFSOverallProcesses::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.h index 105d7f172b9..4f8b3bd6c70 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Processes.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSOverallProcesses final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "processes"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: explicit SysFSOverallProcesses(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.cpp index 8d7565471a4..7a12ea0a03d 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.cpp @@ -15,9 +15,9 @@ UNMAP_AFTER_INIT SysFSProfile::SysFSProfile(SysFSDirectory const& parent_directo { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSProfile::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSProfile::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSProfile(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSProfile(parent_directory)).release_nonnull(); } ErrorOr SysFSProfile::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.h index b1bb21789ce..340ceace4a9 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Profile.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSProfile final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "profile"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: virtual mode_t permissions() const override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.cpp index 6dbe8713a54..3dc495e8033 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.cpp @@ -17,9 +17,9 @@ UNMAP_AFTER_INIT SysFSSystemStatistics::SysFSSystemStatistics(SysFSDirectory con { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSSystemStatistics::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSSystemStatistics::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSSystemStatistics(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSSystemStatistics(parent_directory)).release_nonnull(); } ErrorOr SysFSSystemStatistics::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.h index 136b04f8141..01f8f1044ab 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/SystemStatistics.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -18,7 +18,7 @@ class SysFSSystemStatistics final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "stats"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: explicit SysFSSystemStatistics(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.cpp index e2bf3c4678e..0598cf0eac0 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.cpp @@ -15,9 +15,9 @@ UNMAP_AFTER_INIT SysFSUptime::SysFSUptime(SysFSDirectory const& parent_directory { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSUptime::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSUptime::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSUptime(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSUptime(parent_directory)).release_nonnull(); } ErrorOr SysFSUptime::try_generate(KBufferBuilder& builder) diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.h index cd055f7a5c9..5a8eb002f1b 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Uptime.h @@ -6,10 +6,10 @@ #pragma once +#include #include #include #include -#include #include namespace Kernel { @@ -17,7 +17,7 @@ namespace Kernel { class SysFSUptime final : public SysFSGlobalInformation { public: virtual StringView name() const override { return "uptime"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const& parent_directory); + static NonnullRefPtr must_create(SysFSDirectory const& parent_directory); private: explicit SysFSUptime(SysFSDirectory const& parent_directory); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/BooleanVariable.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/BooleanVariable.h index 6c5a24491bc..08c3cec5260 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/BooleanVariable.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/BooleanVariable.h @@ -9,13 +9,13 @@ #include #include #include +#include #include #include #include #include #include #include -#include #include #include #include diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.cpp index f13a40d568c..f54b515b0be 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.cpp @@ -15,9 +15,9 @@ UNMAP_AFTER_INIT SysFSCapsLockRemap::SysFSCapsLockRemap(SysFSDirectory const& pa { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSCapsLockRemap::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSCapsLockRemap::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSCapsLockRemap(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSCapsLockRemap(parent_directory)).release_nonnull(); } bool SysFSCapsLockRemap::value() const diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.h index a4b18c8f495..5b96feec97e 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CapsLockRemap.h @@ -6,9 +6,9 @@ #pragma once +#include #include #include -#include #include #include @@ -17,7 +17,7 @@ namespace Kernel { class SysFSCapsLockRemap final : public SysFSSystemBooleanVariable { public: virtual StringView name() const override { return "caps_lock_to_ctrl"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: virtual bool value() const override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.cpp index b889ce02e44..ab133b25b07 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.cpp @@ -15,9 +15,9 @@ UNMAP_AFTER_INIT SysFSCoredumpDirectory::SysFSCoredumpDirectory(SysFSDirectory c { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSCoredumpDirectory::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSCoredumpDirectory::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSCoredumpDirectory(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSCoredumpDirectory(parent_directory)).release_nonnull(); } ErrorOr> SysFSCoredumpDirectory::value() const diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.h index 2bc6fefa0a1..9cc34251ac7 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/CoredumpDirectory.h @@ -6,9 +6,9 @@ #pragma once +#include #include #include -#include #include namespace Kernel { @@ -16,7 +16,7 @@ namespace Kernel { class SysFSCoredumpDirectory final : public SysFSSystemStringVariable { public: virtual StringView name() const override { return "coredump_directory"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: virtual ErrorOr> value() const override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.cpp index f930dc8a6f9..3c20c2a0024 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.cpp @@ -15,9 +15,9 @@ namespace Kernel { -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSGlobalKernelVariablesDirectory::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSGlobalKernelVariablesDirectory::must_create(SysFSDirectory const& parent_directory) { - auto global_variables_directory = adopt_lock_ref_if_nonnull(new (nothrow) SysFSGlobalKernelVariablesDirectory(parent_directory)).release_nonnull(); + auto global_variables_directory = adopt_ref_if_nonnull(new (nothrow) SysFSGlobalKernelVariablesDirectory(parent_directory)).release_nonnull(); MUST(global_variables_directory->m_child_components.with([&](auto& list) -> ErrorOr { list.append(SysFSCapsLockRemap::must_create(*global_variables_directory)); list.append(SysFSDumpKmallocStacks::must_create(*global_variables_directory)); diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.h index e8b8bc4a896..d6c17724ba1 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/Directory.h @@ -14,7 +14,7 @@ namespace Kernel { class SysFSGlobalKernelVariablesDirectory : public SysFSDirectory { public: - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); virtual StringView name() const override { return "variables"sv; } private: diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.cpp index 70eec470ce0..426dd45687c 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.cpp @@ -15,9 +15,9 @@ UNMAP_AFTER_INIT SysFSDumpKmallocStacks::SysFSDumpKmallocStacks(SysFSDirectory c { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSDumpKmallocStacks::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSDumpKmallocStacks::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSDumpKmallocStacks(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSDumpKmallocStacks(parent_directory)).release_nonnull(); } bool SysFSDumpKmallocStacks::value() const diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.h index 8b8ab77f0db..5887589e6e9 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/DumpKmallocStack.h @@ -6,9 +6,9 @@ #pragma once +#include #include #include -#include #include #include @@ -17,7 +17,7 @@ namespace Kernel { class SysFSDumpKmallocStacks final : public SysFSSystemBooleanVariable { public: virtual StringView name() const override { return "kmalloc_stacks"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: virtual bool value() const override; diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/StringVariable.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/StringVariable.h index addba7e803f..c43f3f75333 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/StringVariable.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/StringVariable.h @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include @@ -17,7 +18,6 @@ #include #include #include -#include #include #include #include diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.cpp b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.cpp index 066ed5e6c91..1c92f771357 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.cpp +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.cpp @@ -15,9 +15,9 @@ UNMAP_AFTER_INIT SysFSUBSANDeadly::SysFSUBSANDeadly(SysFSDirectory const& parent { } -UNMAP_AFTER_INIT NonnullLockRefPtr SysFSUBSANDeadly::must_create(SysFSDirectory const& parent_directory) +UNMAP_AFTER_INIT NonnullRefPtr SysFSUBSANDeadly::must_create(SysFSDirectory const& parent_directory) { - return adopt_lock_ref_if_nonnull(new (nothrow) SysFSUBSANDeadly(parent_directory)).release_nonnull(); + return adopt_ref_if_nonnull(new (nothrow) SysFSUBSANDeadly(parent_directory)).release_nonnull(); } bool SysFSUBSANDeadly::value() const diff --git a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.h b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.h index 369ce8a8544..1e7289fc24c 100644 --- a/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.h +++ b/Kernel/FileSystem/SysFS/Subsystems/Kernel/Variables/UBSANDeadly.h @@ -6,9 +6,9 @@ #pragma once +#include #include #include -#include #include namespace Kernel { @@ -16,7 +16,7 @@ namespace Kernel { class SysFSUBSANDeadly final : public SysFSSystemBooleanVariable { public: virtual StringView name() const override { return "ubsan_is_deadly"sv; } - static NonnullLockRefPtr must_create(SysFSDirectory const&); + static NonnullRefPtr must_create(SysFSDirectory const&); private: virtual bool value() const override; diff --git a/Kernel/Graphics/DisplayConnector.cpp b/Kernel/Graphics/DisplayConnector.cpp index 8e96853e179..ea90a175fa5 100644 --- a/Kernel/Graphics/DisplayConnector.cpp +++ b/Kernel/Graphics/DisplayConnector.cpp @@ -93,7 +93,6 @@ ErrorOr DisplayConnector::allocate_framebuffer_resources(size_t rounded_si ErrorOr DisplayConnector::after_inserting() { - after_inserting_add_to_device_management(); ArmedScopeGuard clean_from_device_management([&] { before_will_be_destroyed_remove_from_device_management(); }); @@ -110,6 +109,7 @@ ErrorOr DisplayConnector::after_inserting() auto sys_fs_component = TRY(SysFSSymbolicLinkDeviceComponent::try_create(SysFSCharacterDevicesDirectory::the(), *this, *m_sysfs_device_directory)); m_symlink_sysfs_component = sys_fs_component; after_inserting_add_symlink_to_device_identifier_directory(); + ArmedScopeGuard clean_symlink_to_device_identifier_directory([&] { VERIFY(m_symlink_sysfs_component); before_will_be_destroyed_remove_symlink_from_device_identifier_directory(); @@ -136,6 +136,7 @@ ErrorOr DisplayConnector::after_inserting() if (m_enable_write_combine_optimization) { [[maybe_unused]] auto result = m_framebuffer_region->set_write_combine(true); } + after_inserting_add_to_device_management(); return {}; } diff --git a/Kernel/Storage/StorageDevice.cpp b/Kernel/Storage/StorageDevice.cpp index 89916fb3171..4b171270c1d 100644 --- a/Kernel/Storage/StorageDevice.cpp +++ b/Kernel/Storage/StorageDevice.cpp @@ -38,7 +38,6 @@ StorageDevice::StorageDevice(Badge, LUNAddress logical_unit_numbe ErrorOr StorageDevice::after_inserting() { - after_inserting_add_to_device_management(); auto sysfs_storage_device_directory = StorageDeviceSysFSDirectory::create(SysFSStorageDirectory::the(), *this); m_sysfs_device_directory = sysfs_storage_device_directory; SysFSStorageDirectory::the().plug({}, *sysfs_storage_device_directory); @@ -46,6 +45,7 @@ ErrorOr StorageDevice::after_inserting() auto sys_fs_component = TRY(SysFSSymbolicLinkDeviceComponent::try_create(SysFSBlockDevicesDirectory::the(), *this, *m_sysfs_device_directory)); m_symlink_sysfs_component = sys_fs_component; after_inserting_add_symlink_to_device_identifier_directory(); + after_inserting_add_to_device_management(); return {}; }