Files
rtems/cpukit/libfs
Kinsey Moore f34f2e0bf9 cpukit/jffs2/gc.c: Prevent live lock for split reads
In some cases a file read is not completed in a single call into the
JFFS2 layer and the inode is left in the READING state. When this
happens, it's possible for a garbage collection pass to be initiated
before completion of the read. In some such cases, the garbage
collection pass is executed in a tight loop that expects granular
locking to allow forward progress of the read between collection passes.
With RTEMS monolithic locking of the JFFS2 layer, forward progress is
not possible in this situation since the monolithic lock is never
released inside the loop.

The solution is to have the garbage collection pass return failure when
no progress is possible due to a bad inode state. This allows the read
to complete and the collection pass can be attempted at a later time.
2025-10-02 19:15:04 -05:00
..

libfs

This directory contains for the "file system" library. All supported file systems live under this tree.

Currently the supported file systems in this library are:

  • IMFS or In Memory File System

    This is the only root file system on RTEMS at the moment. It supports files, directories, device nodes and mount points. It can also be configured to be the miniIMFS.

  • TFTP and FTP filesystem require networking support.

  • DEVFS or Device File system

  • DOSFS, a FAT 12/16/32 MSDOS compatible file system.

  • NFS Client, can mount NFS exported file systems.

  • PIPE, a pipe file system.

  • RFS, The RTEMS File System.

--Chris Johns and Joel Sherrill 17 Feb 2010