aboutsummaryrefslogtreecommitdiff
path: root/kernel/kernel/filesystem/ext2/inode.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/kernel/filesystem/ext2/inode.hpp')
-rw-r--r--kernel/kernel/filesystem/ext2/inode.hpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/kernel/kernel/filesystem/ext2/inode.hpp b/kernel/kernel/filesystem/ext2/inode.hpp
index 61961f6c..41231cab 100644
--- a/kernel/kernel/filesystem/ext2/inode.hpp
+++ b/kernel/kernel/filesystem/ext2/inode.hpp
@@ -46,10 +46,9 @@ namespace kernel::filesystem::ext2
{
//! Create an ext2 inode associated with the given filesystem.
//!
- //! @param fs The ext2 filesystem that this inode belongs to.
//! @param inode_number The inode number on disk.
//! @param data The data associated with this inode, read from the disk.
- explicit inode(filesystem * fs, uint32_t inode_number, inode_data const & data);
+ explicit inode(uint32_t inode_number, inode_data const & data);
[[nodiscard]] auto read(std::span<std::byte> buffer, kstd::bytes offset) const
-> kstd::result<kstd::bytes> override;
@@ -102,8 +101,10 @@ namespace kernel::filesystem::ext2
[[nodiscard]] auto number() const -> uint32_t;
private:
- //! The filesystem this inode belongs to.
- filesystem * m_filesystem;
+ [[nodiscard]] auto get_filesystem() -> kstd::result<kstd::shared_ptr<filesystem>>;
+
+ [[nodiscard]] auto get_filesystem() const -> kstd::result<kstd::shared_ptr<filesystem const>>;
+
//! The inode number on disk.
uint32_t m_inode_number{};
//! The inode data.