diff options
| -rw-r--r-- | kernel/include/kernel/filesystem/mount.hpp | 3 | ||||
| -rw-r--r-- | kernel/src/filesystem/mount_table.cpp | 1 |
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(); |
