diff options
-rw-r--r-- | cpukit/ChangeLog | 6 | ||||
-rw-r--r-- | cpukit/libfs/src/dosfs/fat.c | 6 | ||||
-rw-r--r-- | cpukit/libfs/src/rfs/rtems-rfs-buffer.c | 2 |
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); |