RTEMS CPU Kit with SuperCore  4.11.3
Functions | Variables

RTEMS File System Interface for RTEMS. More...

#include <sys/param.h>
#include <inttypes.h>
#include <string.h>
#include <stdlib.h>
#include <rtems/rfs/rtems-rfs-file.h>
#include <rtems/rfs/rtems-rfs-dir.h>
#include <rtems/rfs/rtems-rfs-link.h>
#include "rtems-rfs-rtems.h"
Include dependency graph for rtems-rfs-rtems.c:

Functions

int rtems_rfs_rtems_fstat (const rtems_filesystem_location_info_t *pathloc, struct stat *buf)
 The following routine does a stat on a node.
 
int rtems_rfs_rtems_rmnod (const rtems_filesystem_location_info_t *parent_pathloc, const rtems_filesystem_location_info_t *pathloc)
 Routine to remove a node from the RFS file system. More...
 
int rtems_rfs_rtems_fdatasync (rtems_libio_t *iop)
 The following routine does a sync on an inode node. More...
 
int rtems_rfs_rtems_initialise (rtems_filesystem_mount_table_entry_t *mt_entry, const void *data)
 Forward decl for the ops table. More...
 
void rtems_rfs_rtems_shutdown (rtems_filesystem_mount_table_entry_t *mt_entry)
 Shutdown the file system.
 

Variables

const rtems_filesystem_file_handlers_r rtems_rfs_rtems_link_handlers
 Handler table for RFS link nodes. More...
 
const rtems_filesystem_operations_table rtems_rfs_ops
 RFS file system operations table. More...
 

Detailed Description

RTEMS File System Interface for RTEMS.

Function Documentation

◆ rtems_rfs_rtems_fdatasync()

int rtems_rfs_rtems_fdatasync ( rtems_libio_t iop)

The following routine does a sync on an inode node.

Currently it flushes everything related to this device.

Parameters
iop
Returns
int

References rtems_rfs_buffer_sync(), rtems_rfs_rtems_error, and rtems_rfs_rtems_pathloc_dev.

◆ rtems_rfs_rtems_rmnod()

int rtems_rfs_rtems_rmnod ( const rtems_filesystem_location_info_t parent_pathloc,
const rtems_filesystem_location_info_t pathloc 
)

Routine to remove a node from the RFS file system.

Parameters
parent_pathloc
pathloc
Returns
int

References rtems_rfs_rtems_get_pathloc_doff, rtems_rfs_rtems_get_pathloc_ino, rtems_rfs_rtems_pathloc_dev, and rtems_rfs_rtems_trace.

Variable Documentation

◆ rtems_rfs_ops

const rtems_filesystem_operations_table rtems_rfs_ops
Initial value:
=
{
.lock_h = rtems_rfs_rtems_lock_by_mt_entry,
.unlock_h = rtems_rfs_rtems_unlock_by_mt_entry,
.eval_path_h = rtems_rfs_rtems_eval_path,
.link_h = rtems_rfs_rtems_link,
.fchmod_h = rtems_rfs_rtems_fchmod,
.mknod_h = rtems_rfs_rtems_mknod,
.chown_h = rtems_rfs_rtems_chown,
.fsunmount_me_h = rtems_rfs_rtems_shutdown,
.utime_h = rtems_rfs_rtems_utime,
.symlink_h = rtems_rfs_rtems_symlink,
.readlink_h = rtems_rfs_rtems_readlink,
.rename_h = rtems_rfs_rtems_rename,
.statvfs_h = rtems_rfs_rtems_statvfs
}
bool rtems_filesystem_default_are_nodes_equal(const rtems_filesystem_location_info_t *a, const rtems_filesystem_location_info_t *b)
Tests if the node access pointer of one location is equal to the node access pointer of the other loc...
Definition: default_are_nodes_equal.c:28
int rtems_rfs_rtems_rmnod(const rtems_filesystem_location_info_t *parent_pathloc, const rtems_filesystem_location_info_t *pathloc)
Routine to remove a node from the RFS file system.
Definition: rtems-rfs-rtems.c:585
int rtems_filesystem_default_unmount(rtems_filesystem_mount_table_entry_t *mt_entry)
Definition: default_unmount.c:21
void rtems_rfs_rtems_shutdown(rtems_filesystem_mount_table_entry_t *mt_entry)
Shutdown the file system.
Definition: rtems-rfs-rtems.c:854
void rtems_filesystem_default_freenode(const rtems_filesystem_location_info_t *loc)
Definition: default_freenode.c:23
int rtems_filesystem_default_mount(rtems_filesystem_mount_table_entry_t *mt_entry)
Definition: default_mount.c:21
int rtems_filesystem_default_clonenode(rtems_filesystem_location_info_t *loc)
Definition: default_clone.c:28

RFS file system operations table.

◆ rtems_rfs_rtems_link_handlers

const rtems_filesystem_file_handlers_r rtems_rfs_rtems_link_handlers
Initial value:
=
{
}
int rtems_filesystem_default_open(rtems_libio_t *iop, const char *path, int oflag, mode_t mode)
Definition: default_open.c:23
int rtems_filesystem_default_fcntl(rtems_libio_t *iop, int cmd)
Definition: default_fcntl.c:21
int rtems_filesystem_default_kqfilter(rtems_libio_t *iop, struct knote *kn)
Default kernel event filter handler.
Definition: default_kqfilter.c:32
int rtems_filesystem_default_poll(rtems_libio_t *iop, int events)
Default poll handler.
Definition: default_poll.c:31
ssize_t rtems_filesystem_default_readv(rtems_libio_t *iop, const struct iovec *iov, int iovcnt, ssize_t total)
Calls the read handler for each IO vector entry.
Definition: default_readv.c:32
ssize_t rtems_filesystem_default_writev(rtems_libio_t *iop, const struct iovec *iov, int iovcnt, ssize_t total)
Calls the write handler for each IO vector entry.
Definition: default_writev.c:32
int rtems_filesystem_default_ftruncate(rtems_libio_t *iop, off_t length)
Definition: default_ftruncate.c:24
int rtems_filesystem_default_close(rtems_libio_t *iop)
Definition: default_close.c:18
int rtems_rfs_rtems_fstat(const rtems_filesystem_location_info_t *pathloc, struct stat *buf)
The following routine does a stat on a node.
Definition: rtems-rfs-rtems.c:438
off_t rtems_filesystem_default_lseek(rtems_libio_t *iop, off_t offset, int whence)
Definition: default_lseek.c:23
ssize_t rtems_filesystem_default_read(rtems_libio_t *iop, void *buffer, size_t count)
Definition: default_read.c:20
ssize_t rtems_filesystem_default_write(rtems_libio_t *iop, const void *buffer, size_t count)
Definition: default_write.c:21
int rtems_filesystem_default_ioctl(rtems_libio_t *iop, ioctl_command_t request, void *buffer)
Definition: default_ioctl.c:23
int rtems_filesystem_default_fsync_or_fdatasync(rtems_libio_t *iop)
Definition: default_fsync.c:23

Handler table for RFS link nodes.