Commit Graph
522 Commits
Author SHA1 Message Date
Sebastian Huber eefeefdd0e dosfs: Always release the buffers
Release the buffers also if this is not the last reference to the file
object since otherwise we may hold modified data indefinitely.
2013-01-30 17:08:04 +01:00
Joel Sherrill e858f7049c cpukit: Fix many Doxygen warnings 2013-01-10 17:06:47 -06:00
Joel Sherrill 0c2f1e3345 devfs: Doxygen Warning Removal and Cleanup 2013-01-10 17:06:47 -06:00
Joel Sherrill b697bc6a44 cpukit: Use Consistent Beginning of Doxygen Group Notation
This is the result of a sed script which converts all uses
of @{ into a consistent form.
2013-01-10 17:06:47 -06:00
Joel Sherrill b10825cd5d cpukit: Add EOL on files missing EOL at EOF 2013-01-10 17:06:47 -06:00
Joel Sherrill ff1becb6e7 rfs: Doxygen group cannot have a dash in it
Change rtems-rfs to rtems_rfs
2013-01-10 17:06:47 -06:00
Joel Sherrill a15eaaf9fd cpukit: Doxygen group fixes and many warnings addressed
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.
2013-01-10 17:06:47 -06:00
Sebastian Huber a89a2ec596 IMFS: Documentation 2013-01-09 20:52:44 +01:00
Sebastian Huber f33a84b555 nfsclient: Return an error status in nfsInit()
Avoid assert() and use proper cleanup if nfsInit() fails to allocate a
resource.
2013-01-09 17:24:49 +01:00
Alex Ivanov e354eb4f4f libfs: Doxygen Clean Up Task #1
http://www.google-melange.com/gci/task/view/google/gci2012/8120204

Patch committed with fixes for whitespace issues.
2013-01-08 09:02:58 -05:00
Mathew Kallada 2305f97117 libfs: Doxygen Clean Up Task #2
There were minor conflicts and the modifications that were
in the repo were favored over the modifications in the submitted
patch.
2013-01-04 08:39:30 -06:00
Alex Ivanov 3cf4031c19 Header File Doxygen Enhancement Task #1 2012-12-28 17:48:12 -06:00
Mathew Kallada 9ab091e1e4 Header File Doxygen Enhancement Task #2 2012-12-28 10:36:55 -06:00
Ayush Awasthi 8587b018b9 libfs: Doxygen Enhancement Task #4 2012-12-28 08:26:30 -06:00
Mathew Kallada 4e592763cb libfs: Doxygen Enhancement Task #5 2012-12-28 08:05:20 -06:00
Alex Ivanov 36f3207b27 libfs: Doxygen Enhancement Task #3 2012-12-28 07:51:07 -06:00
Sebastian Huber 9fd4d0d106 IMFS: Documentation 2012-12-21 21:38:00 +01:00
Sebastian Huber 3b91605e84 IMFS: Fix resource leak in IMFS_allocate_node() 2012-12-21 15:45:55 +01:00
Alex Ivanov ef5e4526dc libfs: Doxygen Enhancement Task #1 2012-12-20 09:45:31 -06:00
Mathew Kallada d883ce2eff libfs: Doxygen Enhancement Task #6" 2012-12-20 08:22:52 -06:00
Alex Ivanov 11109ea227 libfs: Doxygen Enhancement Task #2
http://www.google-melange.com/gci/task/view/google/gci2012/8032207
2012-12-18 15:46:38 -05:00
Sebastian Huber 4fdc3ee0aa dosfs: Avoid error caused by bdbuf configuration
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.
2012-12-14 10:18:31 +01:00
Sebastian Huber d0b9295fd9 Fix spelling 2012-12-14 10:17:04 +01:00
Sebastian Huber 4b8e01f7c5 dosfs: Add sync_device option for msdos_format() 2012-12-13 11:38:53 +01:00
Sebastian Huber 60e8cd430e dosfs: Fix error status handling 2012-12-13 11:38:52 +01:00
Ralf Kirchner 465b086534 dosfs: Bugfix for disks of for example 100MB size 2012-12-13 11:38:52 +01:00
Ralf Kirchner 26d6eddb0d dosfs: Whitespace change 2012-12-13 11:38:52 +01:00
Ralf Kirchner 253b3e5a67 dosfs: Fix request evaluation
Return the ability to set a cluster size other than one sector for
unaligned volumes.
2012-12-13 11:38:52 +01:00
Mathew Kallada c2ae79e93c misc: Header File Doxygen Enhancement Task #3
http://www.google-melange.com/gci/task/view/google/gci2012/8006220
2012-12-12 15:57:49 -05:00
Mathew Kallada 9bff3752de libfs: Doxygen Enhancement GCI Task #7
http://www.google-melange.com/gci/task/view/google/gci2012/8006219
2012-12-11 18:54:46 -05:00
Ralf Kirchner 42a22f0824 dosfs: Cluster write optimization
Separate cluster write from sector write for quick file write.

New test fstests/fsdosfswrite01.
2012-12-05 15:26:48 +01:00
Ralf Kirchner a20fbe78ec dosfs: Block size optimization
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.
2012-12-05 15:26:48 +01:00
Ralf Kirchner 697cf9dfc7 dosfs: Documentation 2012-12-05 15:26:47 +01:00
Ralf Kirchner a0bc1dcbe8 dosfs: Delete fattype parameter for msdos_format()
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.
2012-12-05 15:26:47 +01:00
Ralf Kirchner 5b8d935ab3 dosfs: Add skip_alignment for msdos_format()
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.
2012-12-05 15:26:47 +01:00
Ralf Kirchner 9683b2721c dosfs: Fix msdos_format()
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.
2012-12-03 17:27:29 +01:00
Sebastian Huber acec386c75 Filesystem: PR1619: Use ENOSYS for default statvfs
POSIX does not specify an error number in case the file system does not
support this call.  Use the Linux value.
2012-11-22 17:33:13 +01:00
Sebastian Huber 0f0db894f7 dosfs: Lazy update of FAT32 FS info sector
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.
2012-11-13 09:38:03 +01:00
Sebastian Huber 886333844e dosfs: Use FAT_UNDEFINED_VALUE 2012-11-13 09:38:03 +01:00
Ralf Corsépius 0f06a0e540 Remove rtems-rfs-bitmaps-ut.c. 2012-11-06 04:59:40 +01:00
Ralf Corsépius b44f994052 Include "rtems-rfs-shell.h". 2012-10-19 14:02:48 +02:00
Sebastian Huber c17d0b315b Filesystem: Reject removal of root nodes
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.
2012-10-07 17:03:20 +02:00
Sebastian Huber 5633c54cdf nfsclient: Format changes 2012-10-02 15:38:51 +02:00
Sebastian Huber c69ef3b6a5 nfsclient: Add and use nfsEvaluateStatus()
The NFS status codes do not map directly to the corresponding errno
values.
2012-10-02 15:27:35 +02:00
Sebastian Huber 3becac2ca3 nfsclient: Fix for short enums
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.
2012-10-02 15:27:35 +02:00
Sebastian Huber 86f6e8b73b nfsclient: PR2075: Fix node initialization 2012-10-02 15:27:34 +02:00
Sebastian Huber 6c92e1b8e9 IMFS: Typo 2012-08-09 12:45:37 +02:00
Sebastian Huber c65afce430 dosfs: Use fs_info instead of mt_entry 2012-07-11 17:14:51 +02:00
Sebastian Huber 96b1d7fcfe dosfs: Fix for no space left on device condition
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.
2012-06-04 09:54:32 +02:00
Joel Sherrill 721fe34aae Fix C files which had two semi-colons at EOL 2012-05-31 15:34:36 -05:00