PatchworkOS
Loading...
Searching...
No Matches
sysfs.h
Go to the documentation of this file.
1#pragma once
2
3#include <kernel/fs/dentry.h>
4#include <kernel/fs/inode.h>
5
6typedef struct file file_t;
7typedef struct file_ops file_ops_t;
8
9typedef struct superblock superblock_t;
10typedef struct superblock_ops superblock_ops_t;
11
22#define SYSFS_NAME "sysfs"
23
27void sysfs_init(void);
28
38
55mount_t* sysfs_mount_new(const path_t* parent, const char* name, namespace_t* ns,
57
69dentry_t* sysfs_dir_new(dentry_t* parent, const char* name, const inode_ops_t* inodeOps, void* private);
70
83dentry_t* sysfs_file_new(dentry_t* parent, const char* name, const inode_ops_t* inodeOps, const file_ops_t* fileOps,
84 void* private);
85
static dentry_t * file
Definition log_file.c:17
static inode_ops_t inodeOps
Definition ramfs.c:220
static file_ops_t fileOps
Definition ramfs.c:99
static superblock_ops_t superblockOps
Definition socket.c:355
Directory entry structure.
Definition dentry.h:83
File operations structure.
Definition file.h:57
File structure.
Definition file.h:37
Mount structure.
Definition mount.h:36
Path structure.
Definition path.h:110
Superblock operations structure.
Definition superblock.h:70
Superblock structure.
Definition superblock.h:44
mount_t * sysfs_mount_new(const path_t *parent, const char *name, namespace_t *ns, const superblock_ops_t *superblockOps)
Mount a new instance of SysFS.
Definition sysfs.c:100
dentry_t * sysfs_get_dev(void)
Gets the default SysFS directory.
Definition sysfs.c:95
dentry_t * sysfs_dir_new(dentry_t *parent, const char *name, const inode_ops_t *inodeOps, void *private)
Create a new directory inside a mounted SysFS instance.
Definition sysfs.c:174
dentry_t * sysfs_file_new(dentry_t *parent, const char *name, const inode_ops_t *inodeOps, const file_ops_t *fileOps, void *private)
Create a new file inside a mounted SysFS instance.
Definition sysfs.c:216
void sysfs_init(void)
Initializes the SysFS.
Definition sysfs.c:79