aboutsummaryrefslogtreecommitdiff
path: root/kernel/src/filesystem/mount_table.cpp
diff options
context:
space:
mode:
authorLukas Oesch <lukasoesch20@gmail.com>2026-03-24 23:54:28 +0100
committerLukas Oesch <lukasoesch20@gmail.com>2026-03-26 21:19:30 +0100
commit84d4476650b31dbfc52becf2ff65ddce9d31c9ec (patch)
treeeb4e69e2148690d654303dc145c3f71d94ea9bd9 /kernel/src/filesystem/mount_table.cpp
parent76de81de1e12694bf6bec1edd3e3409092a92d09 (diff)
downloadteachos-84d4476650b31dbfc52becf2ff65ddce9d31c9ec.tar.xz
teachos-84d4476650b31dbfc52becf2ff65ddce9d31c9ec.zip
implement a rootfs to handle / mounts correctly
Diffstat (limited to 'kernel/src/filesystem/mount_table.cpp')
-rw-r--r--kernel/src/filesystem/mount_table.cpp14
1 files changed, 4 insertions, 10 deletions
diff --git a/kernel/src/filesystem/mount_table.cpp b/kernel/src/filesystem/mount_table.cpp
index debb9ab..681c2b9 100644
--- a/kernel/src/filesystem/mount_table.cpp
+++ b/kernel/src/filesystem/mount_table.cpp
@@ -1,7 +1,5 @@
#include "kernel/filesystem/mount_table.hpp"
-#include "kapi/system.hpp"
-
#include "kernel/filesystem/dentry.hpp"
#include "kernel/filesystem/mount.hpp"
@@ -18,18 +16,14 @@ namespace filesystem
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; });
+ auto it = std::ranges::find_if(m_mounts, [](auto const & mount) { return mount->get_mount_dentry() == 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; });
- if (it != m_mounts.end())
- {
- return *it;
- }
- kapi::system::panic("[FILESYSTEM] dentry has mount flag set but no corresponding mount found.");
+ auto it = std::ranges::find_if(m_mounts, [&](auto const & mnt) { return mnt->get_mount_dentry() == dentry; });
+
+ return it != m_mounts.end() ? *it : nullptr;
}
} // namespace filesystem \ No newline at end of file