aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/include/kernel/filesystem/mount.hpp3
-rw-r--r--kernel/src/filesystem/mount_table.cpp1
2 files changed, 4 insertions, 0 deletions
diff --git a/kernel/include/kernel/filesystem/mount.hpp b/kernel/include/kernel/filesystem/mount.hpp
index af5d08b..f920891 100644
--- a/kernel/include/kernel/filesystem/mount.hpp
+++ b/kernel/include/kernel/filesystem/mount.hpp
@@ -7,6 +7,8 @@
#include <kstd/memory>
#include <kstd/string>
+#include <atomic>
+
namespace kernel::filesystem
{
/**
@@ -57,6 +59,7 @@ namespace kernel::filesystem
kstd::shared_ptr<dentry> m_root_dentry;
kstd::shared_ptr<filesystem> m_filesystem{};
kstd::shared_ptr<mount> m_parent_mount{};
+ std::atomic_uint32_t m_ref_count{0}; // TODO BA-FS26
};
} // namespace kernel::filesystem
diff --git a/kernel/src/filesystem/mount_table.cpp b/kernel/src/filesystem/mount_table.cpp
index daef93e..5a49e7a 100644
--- a/kernel/src/filesystem/mount_table.cpp
+++ b/kernel/src/filesystem/mount_table.cpp
@@ -34,6 +34,7 @@ namespace kernel::filesystem
auto mount_table::remove_mount(std::string_view path) -> operation_result
{
+ // TODO BA-FS26 check wheter something is open in this mount
auto mount_range =
std::ranges::find_last_if(m_mounts, [&](auto const & mount) { return mount->get_mount_path() == path; });
auto mount_it = mount_range.begin();