MOS Source Code
Loading...
Searching...
No Matches
vfs_types.hpp File Reference
#include "mos/lib/sync/mutex.hpp"
#include "mos/mm/mm.hpp"
#include "mos/mm/physical/pmm.hpp"
#include <abi-bits/stat.h>
#include <cstddef>
#include <mos/allocator.hpp>
#include <mos/filesystem/fs_types.h>
#include <mos/hashmap.hpp>
#include <mos/io/io.hpp>
#include <mos/io/io_types.h>
#include <mos/lib/structures/hashmap.hpp>
#include <mos/lib/structures/list.hpp>
#include <mos/lib/structures/tree.hpp>
#include <mos/lib/sync/spinlock.hpp>
#include <mos/platform/platform.hpp>
#include <mos/string.hpp>
#include <mos/types.hpp>
Include dependency graph for vfs_types.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  vfs_listdir_entry_t
struct  vfs_listdir_state_t
struct  inode_ops_t
struct  file_ops_t
struct  superblock_ops_t
struct  superblock_t
struct  dentry_t
struct  inode_cache_ops_t
struct  inode_cache_t
struct  inode_t
struct  filesystem_t
struct  mount_t
struct  FsBaseFile
struct  FsFile
struct  FsDir

Macros

#define FILESYSTEM_DEFINE(var, fsname, mountfn, unmountfn)
#define FILESYSTEM_AUTOREGISTER(fs)

Typedefs

typedef struct _inode_cache inode_cache_t
typedef void dentry_iterator_op(vfs_listdir_state_t *state, u64 ino, mos::string_view name, file_type_t type)

Functions

 MOS_ENUM_FLAGS (open_flags, OpenFlags)
 MOS_ENUM_FLAGS (fstatat_flags, FStatAtFlags)
mos::string dentry_name (const dentry_t *dentry)

Variables

dentry_troot_dentry

Macro Definition Documentation

◆ FILESYSTEM_DEFINE

#define FILESYSTEM_DEFINE ( var,
fsname,
mountfn,
unmountfn )
Value:
filesystem_t var = { \
.name = fsname, \
.mount = mountfn, \
.unmount = unmountfn, \
}

Definition at line 27 of file vfs_types.hpp.

◆ FILESYSTEM_AUTOREGISTER

#define FILESYSTEM_AUTOREGISTER ( fs)
Value:
static void __register_##fs() \
{ \
vfs_register_filesystem(&fs); \
} \
MOS_INIT(VFS, __register_##fs)

Definition at line 34 of file vfs_types.hpp.

Typedef Documentation

◆ inode_cache_t

typedef struct _inode_cache inode_cache_t

Definition at line 42 of file vfs_types.hpp.

◆ dentry_iterator_op

typedef void dentry_iterator_op(vfs_listdir_state_t *state, u64 ino, mos::string_view name, file_type_t type)

Definition at line 64 of file vfs_types.hpp.

Function Documentation

◆ MOS_ENUM_FLAGS() [1/2]

MOS_ENUM_FLAGS ( open_flags ,
OpenFlags  )

◆ MOS_ENUM_FLAGS() [2/2]

MOS_ENUM_FLAGS ( fstatat_flags ,
FStatAtFlags  )

◆ dentry_name()