|
The Pedigree Project 0.1
|
Inheritance diagram for SysFs:
Collaboration diagram for SysFs:Public Member Functions | |
| bool | initialise (Disk *) override |
| File * | getRoot () const override |
| const String & | getVolumeLabel () const override |
| SyncStatus | sync () override |
| uintptr_t | allocateInode () |
Public Member Functions inherited from Filesystem | |
| Filesystem () | |
| virtual | ~Filesystem () |
| virtual File * | find (const StringView &path) |
| virtual File * | find (const String &path) |
| virtual File * | find (const StringView &path, File *pStartNode) |
| virtual File * | find (const String &path, File *pStartNode) |
| File * | findRetained (const StringView &path, Directory::ChildLease &result, File *pStartNode=nullptr) |
| virtual bool | getUuid (String &uuid) const |
| virtual FileHandleStatus | encodeFileHandle (File &file, FileHandle &handle) |
| virtual FileHandleStatus | decodeFileHandle (const FileHandle &handle, RetainedFile &file) |
| virtual FileHandleStatus | fileHandleFsid (FileSystemId &id) |
| virtual SyncStatus | shutdown () |
| virtual bool | deviceRemoved (bool deviceAvailable=false) |
| bool | tryAcquireOperation (OperationBarrier::Lease &operation) const |
| bool | isDeviceRemoved () const |
| virtual QuotaStatus | quotaControl (const QuotaRequest &, QuotaResponse &, File *quotaFile=nullptr) |
| bool | createFile (const StringView &path, uint32_t mask, File *pStartNode=0) |
| bool | createDirectory (const StringView &path, uint32_t mask, File *pStartNode=0) |
| bool | createSymlink (const StringView &path, const String &value, File *pStartNode=0) |
| bool | createLink (const StringView &path, File *target, File *pStartNode=0) |
| bool | remove (const StringView &path, File *pStartNode=0) |
| bool | remove (const StringView &path, File *pStartNode, File *expected) |
| bool | rename (const StringView &oldPath, File *oldStart, const StringView &newPath, File *newStart, bool noReplace=false) |
| Disk * | getDisk () |
| bool | isReadOnly () |
| virtual bool | isCaseSensitive () |
| bool | remove (File *parent, File *file) |
Protected Member Functions | |
| bool | createFile (File *, const String &, uint32_t) override |
| bool | createDirectory (File *, const String &, uint32_t) override |
| bool | createSymlink (File *, const String &, const String &) override |
| bool | removeNode (File *, const String &, File *) override |
Protected Member Functions inherited from Filesystem | |
| virtual bool | createLink (File *parent, const String &filename, File *target) |
| virtual bool | renameNode (Directory *oldParent, const String &oldName, File *source, Directory *newParent, const String &newName, File *replaced) |
| bool | beginDeviceRemoval (bool deviceAvailable) |
Private Member Functions | |
| SysFsDirectory * | directory (SysFsDirectory *parent, const char *name) |
| void | attribute (SysFsDirectory *parent, const char *name, const String &contents) |
| void | symlink (SysFsDirectory *parent, const char *name, const String &target) |
| void | addPciDevices (SysFsDirectory *devices) |
| void | addBlockDevices (SysFsDirectory *devices) |
| void | addNetworkDevices (SysFsDirectory *devices) |
Private Attributes | |
| SysFsDirectory * | m_Root |
| Atomic< uintptr_t > | m_NextInode |
Additional Inherited Members | |
Public Types inherited from Filesystem | |
| enum class | SyncStatus { Success , Unsupported , NoMemory , IoError } |
| typedef Filesystem *(* | ProbeCallback) (Disk *) |
Protected Attributes inherited from Filesystem | |
| bool | m_bReadOnly |
| Disk * | m_pDisk |
| DiskUse | m_DiskUse |
| OperationBarrier | m_Operations |
|
private |
|
private |
|
private |
|
private |
|
inlineoverrideprotectedvirtual |
createDirectory calls this after it has parsed the string path.
Implements Filesystem.
|
inlineoverrideprotectedvirtual |
createFile calls this after it has parsed the string path.
Implements Filesystem.
|
inlineoverrideprotectedvirtual |
createSymlink calls this after it has parsed the string path.
Implements Filesystem.
|
private |
|
inlineoverridevirtual |
|
overridevirtual |
Returns a string identifying the volume label.
Implements Filesystem.
|
overridevirtual |
Populates this filesystem with data from the given Disk device.
Implements Filesystem.
Definition at line 212 of file SysFs.cc.
References VFS::instance(), and VFS::trackFile().
|
inlineoverrideprotectedvirtual |
Remove a backing node while the VFS holds the parent's namespace lock. A successful implementation must retire the parent's cached entry before returning and must recheck directory emptiness while holding the child's namespace lock.
Implements Filesystem.
|
private |
|
inlineoverridevirtual |
Completes data, metadata and device writeback for changes made before entry.
Reimplemented from Filesystem.
|
private |