![]() |
MOS Source Code
|
#include "mos/filesystem/userfs/userfs.hpp"
#include "mos/filesystem/dentry.hpp"
#include "mos/filesystem/vfs_types.hpp"
#include "mos/filesystem/vfs_utils.hpp"
#include "mos/misc/profiling.hpp"
#include "mos/syslog/printk.hpp"
#include "proto/filesystem.pb.h"
#include "proto/filesystem.services.h"
#include <algorithm>
#include <librpc/macro_magic.h>
#include <librpc/rpc.h>
#include <librpc/rpc_client.h>
#include <librpc/rpc_server.h>
#include <mos/filesystem/fs_types.h>
#include <mos_stdio.hpp>
#include <mos_stdlib.hpp>
#include <mos_string.hpp>
#include <pb.h>
#include <pb_decode.h>
#include <pb_encode.h>
Go to the source code of this file.
Classes | |
struct | AutoCleanup |
Macros | |
#define | userfs_get(_fs, _fmt, ...) |
Variables | |
const inode_ops_t | userfs_iops |
const file_ops_t | userfs_fops |
const inode_cache_ops_t | userfs_inode_cache_ops |
const superblock_ops_t | userfs_sb_ops |
#define userfs_get | ( | _fs, | |
_fmt, | |||
... ) |
Definition at line 34 of file userfs.cpp.
Referenced by userfs_fsop_mount(), userfs_inode_cache_fill_cache(), userfs_inode_cache_flush_page(), userfs_iop_hardlink(), userfs_iop_iterate_dir(), userfs_iop_lookup(), userfs_iop_mkdir(), userfs_iop_mknode(), userfs_iop_newfile(), userfs_iop_readlink(), userfs_iop_rename(), userfs_iop_rmdir(), userfs_iop_symlink(), userfs_iop_unlink(), and userfs_sync_inode().
inode_t * i_from_pbfull | ( | const mosrpc_fs_inode_info * | pbi, |
superblock_t * | sb, | ||
void * | private_data ) |
Convert a protobuf inode to a kernel inode.
pbi | The protobuf inode. |
sb | The superblock. |
private | The private data for the inode. |
Definition at line 59 of file userfs.cpp.
Referenced by userfs_fsop_mount(), userfs_iop_lookup(), userfs_iop_mkdir(), and userfs_iop_newfile().
mosrpc_fs_inode_info * i_to_pb_full | ( | const inode_t * | i, |
mosrpc_fs_inode_info * | pbi ) |
Convert a kernel inode to a protobuf inode.
i | The kernel inode. |
pbi | The protobuf inode, which must be allocated. |
Definition at line 80 of file userfs.cpp.
Referenced by userfs_sync_inode().
mosrpc_fs_inode_ref i_to_pb_ref | ( | const inode_t * | i | ) |
Definition at line 99 of file userfs.cpp.
Referenced by userfs_inode_cache_fill_cache(), userfs_inode_cache_flush_page(), userfs_iop_iterate_dir(), userfs_iop_lookup(), userfs_iop_mkdir(), userfs_iop_newfile(), userfs_iop_readlink(), userfs_iop_unlink(), and userfs_sync_inode().
Ensure that the userfs is connected to the server.
userfs | The userfs to connect. |
Definition at line 105 of file userfs.cpp.
|
static |
|
static |
|
static |
|
static |
Definition at line 417 of file userfs.cpp.
|
static |
long userfs_inode_cache_flush_page | ( | inode_cache_t * | cache, |
uint64_t | pgoff, | ||
phyframe_t * | page ) |
long userfs_sync_inode | ( | inode_t * | inode | ) |
PtrResult< dentry_t > userfs_fsop_mount | ( | filesystem_t * | fs, |
const char * | device, | ||
const char * | options ) |
Definition at line 555 of file userfs.cpp.
Referenced by userfs_manager_register_filesystem().
const inode_ops_t userfs_iops |
Definition at line 403 of file userfs.cpp.
Referenced by i_from_pbfull(), userfs_iop_lookup(), userfs_iop_mkdir(), and userfs_iop_newfile().
const file_ops_t userfs_fops |
Definition at line 426 of file userfs.cpp.
Referenced by i_from_pbfull(), userfs_iop_lookup(), userfs_iop_mkdir(), and userfs_iop_newfile().
const inode_cache_ops_t userfs_inode_cache_ops |
Definition at line 515 of file userfs.cpp.
Referenced by userfs_iop_lookup(), userfs_iop_mkdir(), and userfs_iop_newfile().
const superblock_ops_t userfs_sb_ops |
Definition at line 550 of file userfs.cpp.
Referenced by userfs_fsop_mount().