|
Voxia OS v0.0.1
Hobby Project Operating System Targeting x86-64
|
#include <type.h>Go to the source code of this file.
Data Structures | |
| struct | hlist_node |
| struct | hlist_head |
| struct | vfs_cache |
Macros | |
| #define | VFS_CACHE_SIZE 32 |
| #define | hlist_for_each(pos, head, member) |
Functions | |
| struct vfs_cache | __attribute__ ((aligned(64))) |
| void | hlist_add_head (struct hlist_node *n, struct hlist_head *h) |
| struct vfs_cache * | create_vfs_cache () |
| struct vfs_cache * | get_root_cache () |
| void | vfs_cache_insert (struct vfs_cache *cache, struct dentry *dentry) |
| struct dentry * | cache_lookup (struct vfs_cache *cache, struct dentry *parent, const char *name) |
| void | cache_remove (struct vfs_cache *cache, struct dentry *dentry) |
Variables | |
| struct hlist_head | buckets [32] |
| uint8_t | lock |
| int | count |
| #define VFS_CACHE_SIZE 32 |
Definition at line 6 of file cache.h.
Referenced by __attribute__(), cache_lookup(), and cache_remove().
| struct dentry * cache_lookup | ( | struct vfs_cache * | cache, |
| struct dentry * | parent, | ||
| const char * | name ) |
Definition at line 92 of file cache.c.
References bucket, kstring::c_str, cache, container_of, h, hash_dentry(), hash_node, idx, dentry::name, name, NULL, dentry::parent, parent, pos, strcmp(), and VFS_CACHE_SIZE.
Definition at line 116 of file cache.c.
References cache, dentry::hash, dentry::hash_node, hlist_del(), idx, and VFS_CACHE_SIZE.
Referenced by delete_dentry(), and vfs_umount_recursive().
| struct vfs_cache * create_vfs_cache | ( | ) |
| struct vfs_cache * get_root_cache | ( | ) |
Referenced by delete_dentry(), and vfs_umount_recursive().
| void hlist_add_head | ( | struct hlist_node * | n, |
| struct hlist_head * | h ) |
Definition at line 49 of file cache.c.
References h, hlist_node::next, NULL, and hlist_node::prev.
Referenced by __attribute__().
| struct hlist_head buckets[32] |
| int count |
Definition at line 2 of file cache.h.
Referenced by E1000SendPacketCWrapper(), elf_call_init_array(), elf_call_init_array_with_table(), elf_relocate_dyn(), notify_call(), pys_base_get_free_block_count(), ATAPIModule::read(), E1000Module::sendPacket(), serial2_send_unsigned_number(), strcspn(), strspn(), syscall_read(), syscall_write(), vxAPICCreateTimer(), vxGetNumberOfCores(), and ATAPIModule::write().
| uint8_t lock |
Definition at line 1 of file cache.h.
Referenced by __attribute__(), mem_create_physwindow(), sch_restore_to_next_thread(), spin_acquire(), spin_is_locked(), spin_release(), vxAddWorkqueueTask(), vxAllocScheduler(), vxDeatachFromScheduler(), and vxSchedulerTick().