summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2010-02-20 02:27:58 +0000
committerChris Johns <chrisj@rtems.org>2010-02-20 02:27:58 +0000
commit5268642f861149fc63b9cd1d8c661e0ffa2781fb (patch)
treef1b1947c64a3c9ea2a547c8334c9359bd83c1ca4
parent2010-02-19 Chris Johns <chrisj@rtems.org> (diff)
downloadrtems-5268642f861149fc63b9cd1d8c661e0ffa2781fb.tar.bz2
2010-02-20 Chris Johns <chrisj@rtems.org>
* libfs/src/dosfs/fat.c, libfs/src/rfs/rtems-rfs-buffer.c: Block devices are now block device nodes and not character device nodes.
-rw-r--r--cpukit/ChangeLog6
-rw-r--r--cpukit/libfs/src/dosfs/fat.c6
-rw-r--r--cpukit/libfs/src/rfs/rtems-rfs-buffer.c2
3 files changed, 10 insertions, 4 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog
index af9454f41a..fe5e85d4e8 100644
--- a/cpukit/ChangeLog
+++ b/cpukit/ChangeLog
@@ -1,3 +1,9 @@
+2010-02-20 Chris Johns <chrisj@rtems.org>
+
+ * libfs/src/dosfs/fat.c, libfs/src/rfs/rtems-rfs-buffer.c: Block
+ devices are now block device nodes and not character device
+ nodes.
+
2010-02-19 Chris Johns <chrisj@rtems.org>
* libblock/src/diskdevs.c: Create the devices as block devices.
diff --git a/cpukit/libfs/src/dosfs/fat.c b/cpukit/libfs/src/dosfs/fat.c
index 123e86b324..ad1dd2afe0 100644
--- a/cpukit/libfs/src/dosfs/fat.c
+++ b/cpukit/libfs/src/dosfs/fat.c
@@ -367,14 +367,14 @@ fat_init_volume_info(rtems_filesystem_mount_table_entry_t *mt_entry)
if (rc == -1)
return rc;
- /* rtmes feature: no block devices, all are character devices */
- if (!S_ISCHR(stat_buf.st_mode))
+ /* Must be a block device. */
+ if (!S_ISBLK(stat_buf.st_mode))
rtems_set_errno_and_return_minus_one(ENOTTY);
/* check that device is registred as block device and lock it */
vol->dd = rtems_disk_obtain(stat_buf.st_rdev);
if (vol->dd == NULL)
- rtems_set_errno_and_return_minus_one(ENOTTY);
+ rtems_set_errno_and_return_minus_one(EIO);
vol->dev = stat_buf.st_rdev;
diff --git a/cpukit/libfs/src/rfs/rtems-rfs-buffer.c b/cpukit/libfs/src/rfs/rtems-rfs-buffer.c
index ee1a7f6bde..4d9d419d5c 100644
--- a/cpukit/libfs/src/rfs/rtems-rfs-buffer.c
+++ b/cpukit/libfs/src/rfs/rtems-rfs-buffer.c
@@ -295,7 +295,7 @@ rtems_rfs_buffer_open (const char* name, rtems_rfs_file_system* fs)
/*
* Is the device a block device ?
*/
- if (!S_ISCHR (st.st_mode))
+ if (!S_ISBLK (st.st_mode))
{
if (rtems_rfs_trace (RTEMS_RFS_TRACE_BUFFER_OPEN))
printf ("rtems-rfs: buffer-open: '%s' is not a block device\n", name);