aboutsummaryrefslogtreecommitdiff
path: root/kernel/src/filesystem/mount_table.cpp
diff options
context:
space:
mode:
authorLukas Oesch <lukasoesch20@gmail.com>2026-03-24 20:41:32 +0100
committerLukas Oesch <lukasoesch20@gmail.com>2026-03-26 21:19:05 +0100
commit76de81de1e12694bf6bec1edd3e3409092a92d09 (patch)
tree854f9766a611cecd6fb6ec73b0c58847f37f5f41 /kernel/src/filesystem/mount_table.cpp
parent2eb086d516f20a0b5cef9881a3459adb389c6ee8 (diff)
downloadteachos-76de81de1e12694bf6bec1edd3e3409092a92d09.tar.xz
teachos-76de81de1e12694bf6bec1edd3e3409092a92d09.zip
refactoring, add root_mount into the root_table
Diffstat (limited to 'kernel/src/filesystem/mount_table.cpp')
-rw-r--r--kernel/src/filesystem/mount_table.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/src/filesystem/mount_table.cpp b/kernel/src/filesystem/mount_table.cpp
index 3176d6d..debb9ab 100644
--- a/kernel/src/filesystem/mount_table.cpp
+++ b/kernel/src/filesystem/mount_table.cpp
@@ -16,6 +16,13 @@ namespace filesystem
m_mounts.push_back(mount);
}
+ auto mount_table::get_root_mount() const -> kstd::shared_ptr<mount>
+ {
+ auto it =
+ std::ranges::find_if(m_mounts, [](auto const & mount) { return mount->get_dentry()->get_parent() == nullptr; });
+ return it != m_mounts.end() ? *it : nullptr;
+ }
+
auto mount_table::find_mount_by_dentry(kstd::shared_ptr<dentry> const & dentry) -> kstd::shared_ptr<mount>
{
auto it = std::ranges::find_if(m_mounts, [&](auto const & mount) { return mount->get_dentry() == dentry; });