PatchworkOS
Loading...
Searching...
No Matches
dentry.c File Reference
#include <kernel/fs/dentry.h>
#include <stdio.h>
#include <kernel/fs/vfs.h>
#include <kernel/log/log.h>
#include <kernel/sched/thread.h>
#include <kernel/sync/lock.h>
#include <kernel/sync/mutex.h>
#include <stdlib.h>

Go to the source code of this file.

Data Structures

struct  getdents_ctx_t
 

Functions

static void dentry_free (dentry_t *dentry)
 
dentry_tdentry_new (superblock_t *superblock, dentry_t *parent, const char *name)
 Create a new dentry.
 
uint64_t dentry_make_positive (dentry_t *dentry, inode_t *inode)
 Make a dentry positive by associating it with an inode.
 
void dentry_inc_mount_count (dentry_t *dentry)
 Increments the mount count of a dentry.
 
void dentry_dec_mount_count (dentry_t *dentry)
 Decrements the mount count of a dentry.
 
static void getdents_write (getdents_ctx_t *ctx, inode_number_t number, inode_type_t type, const char *name)
 
static void getdents_recursive_traversal (getdents_ctx_t *ctx, dentry_t *dentry)
 
uint64_t dentry_generic_getdents (dentry_t *dentry, dirent_t *buffer, uint64_t count, uint64_t *offset, path_flags_t flags)
 Helper function for a basic getdents.
 

Function Documentation

◆ dentry_free()

◆ getdents_recursive_traversal()

◆ getdents_write()

static void getdents_write ( getdents_ctx_t ctx,
inode_number_t  number,
inode_type_t  type,
const char *  name 
)
static