![]() |
MOS Source Code
|
#include "mos/filesystem/vfs_utils.hpp"#include "mos/filesystem/dentry.hpp"#include "mos/filesystem/page_cache.hpp"#include "mos/filesystem/vfs_types.hpp"#include "mos/lib/sync/spinlock.hpp"#include "mos/mm/physical/pmm.hpp"#include <algorithm>#include <memory>#include <mos/lib/structures/hashmap_common.hpp>#include <mos/types.hpp>#include <mos_stdlib.hpp>#include <mos_string.hpp>Go to the source code of this file.
Functions | |
| static dentry_t * | dentry_create (superblock_t *sb, dentry_t *parent, mos::string_view name) |
| dentry_t * | dentry_get_from_parent (superblock_t *sb, dentry_t *parent, mos::string_view name) |
| Create a new dentry with the given name and parent. | |
| bool | simple_page_write_begin (inode_cache_t *icache, off_t offset, size_t size, phyframe_t **page, void **private_) |
| void | simple_page_write_end (inode_cache_t *icache, off_t offset, size_t size, phyframe_t *page, void *private_) |
| long | simple_flush_page_discard_data (inode_cache_t *icache, off_t pgoff, phyframe_t *page) |
| ssize_t | vfs_generic_read (const FsBaseFile *file, void *buf, size_t size, off_t offset) |
| ssize_t | vfs_generic_write (const FsBaseFile *file, const void *buf, size_t size, off_t offset) |
| bool | vfs_simple_write_begin (inode_cache_t *icache, off_t offset, size_t size) |
| void | vfs_generic_iterate_dir (const dentry_t *dir, vfs_listdir_state_t *state, dentry_iterator_op add_record) |
|
static |
Definition at line 18 of file vfs_utils.cpp.
Referenced by dentry_get_from_parent().
| dentry_t * dentry_get_from_parent | ( | superblock_t * | sb, |
| dentry_t * | parent, | ||
| mos::string_view | name = "" ) |
Create a new dentry with the given name and parent.
| sb | The superblock of the dentry |
| parent | The parent dentry |
| name | The name of the dentry |
Definition at line 37 of file vfs_utils.cpp.
Referenced by cpio_mount(), dentry_lookup_child(), ipc_server_close(), memfd_create(), MOS_INIT(), sysfs_do_register(), sysfs_register_file(), tmpfs_fsop_mount(), and userfs_fsop_mount().
| bool simple_page_write_begin | ( | inode_cache_t * | icache, |
| off_t | offset, | ||
| size_t | size, | ||
| phyframe_t ** | page, | ||
| void ** | private_ ) |
| void simple_page_write_end | ( | inode_cache_t * | icache, |
| off_t | offset, | ||
| size_t | size, | ||
| phyframe_t * | page, | ||
| void * | private_ ) |
Definition at line 74 of file vfs_utils.cpp.
| long simple_flush_page_discard_data | ( | inode_cache_t * | icache, |
| off_t | pgoff, | ||
| phyframe_t * | page ) |
Definition at line 84 of file vfs_utils.cpp.
Referenced by do_flush_and_drop_cached_page().
| ssize_t vfs_generic_read | ( | const FsBaseFile * | file, |
| void * | buf, | ||
| size_t | size, | ||
| off_t | offset ) |
| ssize_t vfs_generic_write | ( | const FsBaseFile * | file, |
| const void * | buf, | ||
| size_t | size, | ||
| off_t | offset ) |
| bool vfs_simple_write_begin | ( | inode_cache_t * | icache, |
| off_t | offset, | ||
| size_t | size ) |
Definition at line 110 of file vfs_utils.cpp.
| void vfs_generic_iterate_dir | ( | const dentry_t * | dir, |
| vfs_listdir_state_t * | state, | ||
| dentry_iterator_op | add_record ) |
Definition at line 118 of file vfs_utils.cpp.
Referenced by sysfs_iops_iterate_dir(), and vfs_populate_listdir_buf().