From 70229b88ad195a6e945b4cc75e1248685cda0951 Mon Sep 17 00:00:00 2001 From: "marcel.braun" Date: Tue, 24 Mar 2026 17:05:57 +0100 Subject: Add root_dentry to filesystem --- kernel/include/kernel/filesystem/filesystem.hpp | 5 +++++ kernel/src/filesystem/filesystem.cpp | 11 +++++++++++ 2 files changed, 16 insertions(+) (limited to 'kernel') diff --git a/kernel/include/kernel/filesystem/filesystem.hpp b/kernel/include/kernel/filesystem/filesystem.hpp index e069ced..362242f 100644 --- a/kernel/include/kernel/filesystem/filesystem.hpp +++ b/kernel/include/kernel/filesystem/filesystem.hpp @@ -2,6 +2,7 @@ #define TEACH_OS_KERNEL_FILESYSTEM_FILESYSTEM_HPP #include "kernel/devices/device.hpp" +#include "kernel/filesystem/dentry.hpp" #include "kernel/filesystem/inode.hpp" #include @@ -19,11 +20,15 @@ namespace filesystem virtual auto lookup(kstd::shared_ptr const & parent, std::string_view name) -> kstd::shared_ptr = 0; [[nodiscard]] auto root_inode() const -> kstd::shared_ptr const &; + [[nodiscard]] auto root_dentry() const -> kstd::shared_ptr const &; + + auto set_root_dentry(kstd::shared_ptr dentry) -> void; protected: kstd::shared_ptr m_root_inode{}; kstd::shared_ptr m_device{}; kstd::vector> m_inodes{}; + kstd::shared_ptr m_root_dentry; }; } // namespace filesystem diff --git a/kernel/src/filesystem/filesystem.cpp b/kernel/src/filesystem/filesystem.cpp index 0e33d95..8ebe58f 100644 --- a/kernel/src/filesystem/filesystem.cpp +++ b/kernel/src/filesystem/filesystem.cpp @@ -1,6 +1,7 @@ #include "kernel/filesystem/filesystem.hpp" #include "kernel/devices/device.hpp" +#include "kernel/filesystem/dentry.hpp" #include "kernel/filesystem/inode.hpp" #include @@ -21,4 +22,14 @@ namespace filesystem { return m_root_inode; } + + auto filesystem::root_dentry() const -> kstd::shared_ptr const & + { + return m_root_dentry; + } + + auto filesystem::set_root_dentry(kstd::shared_ptr dentry) -> void + { + m_root_dentry = dentry; + } } // namespace filesystem \ No newline at end of file -- cgit v1.2.3