| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Release the buffers also if this is not the last reference to the file
object since otherwise we may hold modified data indefinitely.
|
| |
|
| |
|
|
|
|
|
| |
This is the result of a sed script which converts all uses
of @{ into a consistent form.
|
| |
|
|
|
|
| |
Change rtems-rfs to rtems_rfs
|
|
|
|
|
|
|
| |
The output of the modules.html is much improved. Most
filesystem and POSIX API related groups are properly nested.
Some formatting issues were addressed as were multiple
inconsistencies.
|
| |
|
|
|
|
|
| |
Avoid assert() and use proper cleanup if nfsInit() fails to allocate a
resource.
|
|
|
|
|
|
| |
http://www.google-melange.com/gci/task/view/google/gci2012/8120204
Patch committed with fixes for whitespace issues.
|
|
|
|
|
|
| |
There were minor conflicts and the modifications that were
in the repo were favored over the modifications in the submitted
patch.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
http://www.google-melange.com/gci/task/view/google/gci2012/8032207
|
|
|
|
|
|
| |
The success of a block size change depends on the bdbuf configuration.
Do not treat a failed block size change as a hard error. This is only a
missed performance optimization.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Return the ability to set a cluster size other than one sector for
unaligned volumes.
|
|
|
|
| |
http://www.google-melange.com/gci/task/view/google/gci2012/8006220
|
|
|
|
| |
http://www.google-melange.com/gci/task/view/google/gci2012/8006219
|
|
|
|
|
|
| |
Separate cluster write from sector write for quick file write.
New test fstests/fsdosfswrite01.
|
|
|
|
|
|
| |
Change block size of bdbuf to the cluster size if the data clusters are
aligned on a cluster boundary. This enables fast access to data
clusters.
|
| |
|
|
|
|
|
|
|
|
| |
Delete fattype parameter of msdos_format_request_param_t because the FAT
type is determined by cluster and disk size.
Estimate FAT type and re-evaluate FAT type after exact parameter
determination.
|
|
|
|
|
|
|
|
|
|
| |
Add skip_alignment parameter of msdos_format_request_param_t. Delete
cluster_align parameter of msdos_format_request_param_t.
By default the FAT, data cluster, and root directory for FAT12 and FAT16
is aligned on a cluster boundary to optimize performance.
Format changes throughout.
|
|
|
|
|
|
| |
For FAT32 msdos_format() used to initialize first FAT entries to
non-zero values only if a volume label was given. Absence of these
entries made mounting such a FAT32 volume fail.
|
|
|
|
|
| |
POSIX does not specify an error number in case the file system does not
support this call. Use the Linux value.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The FAT32 FS info sector contains hints for the free cluster count and
the next free cluster. The previous code read these values during mount
and replaced them with invalid values. The shutdown operation updated
them with the current values. These values are only hints. Every FAT
implementation must cope with arbitrary values. They are intended to
speed up certain operations.
Now we update the free cluster count and next free culster in the FAT32
FS info sector only during unmount or sync operations and only if the
values have changed. This avoids writes to the FS info sector and
conforms to the behaviour of Linux and Windows.
The application can force an update of these values now with the fsync()
and fdatasync() operations. Applications that only read will perform
not write operations to the FAT32 FS info sector.
The new fat_sync() function performs all non-file specific
synchronizations.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Reject the removal of file system instance root nodes in rmdir() and
unlink() and return the EBUSY error status. File system instances can
be removed with unmount(). Remove root node special cases in IMFS,
DOSFS, and RFS.
|
| |
|
|
|
|
|
| |
The NFS status codes do not map directly to the corresponding errno
values.
|
|
|
|
|
|
|
|
|
|
| |
The XDR library has a problem on architectures with short enums like the
default ARM EABI. Short enums means that the size of the enum type is
variable and the smallest integer type to hold all enum values will be
selected. For many enums this is char. The XDR library uses int32_t
for enum_t. There are several evil casts from an enum type to enum_t
which leads to invalid memory accesses on short enum architectures. A
workaround is to add appropriate dummy enum values.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
The file size was wrong in the no space left on device condition. This
resulted in turn in a read of an invalid block which lead to an EIO
error status.
|
| |
|