aboutsummaryrefslogtreecommitdiff
path: root/kernel/kernel/vfs/driver_state.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/kernel/vfs/driver_state.hpp')
-rw-r--r--kernel/kernel/vfs/driver_state.hpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/kernel/kernel/vfs/driver_state.hpp b/kernel/kernel/vfs/driver_state.hpp
new file mode 100644
index 00000000..2756ea8a
--- /dev/null
+++ b/kernel/kernel/vfs/driver_state.hpp
@@ -0,0 +1,25 @@
+#ifndef KERNEL_VFS_DRIVER_STATE_HPP
+#define KERNEL_VFS_DRIVER_STATE_HPP
+
+#include <kstd/memory.hpp>
+
+namespace kernel::vfs
+{
+
+ struct driver_state
+ {
+ virtual ~driver_state() = default;
+
+ explicit driver_state(kstd::weak_ptr<struct mount> owner = {});
+
+ [[nodiscard]] auto owner() const noexcept -> kstd::weak_ptr<struct mount>;
+
+ auto set_owner(kstd::weak_ptr<struct mount> owner) noexcept -> void;
+
+ private:
+ kstd::weak_ptr<struct mount> m_owner;
+ };
+
+} // namespace kernel::vfs
+
+#endif \ No newline at end of file