diff options
author | Chris Johns <chrisj@rtems.org> | 2009-06-12 01:53:33 +0000 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2009-06-12 01:53:33 +0000 |
commit | 7baa484300d36a9ced34f6642501f91fd1428461 (patch) | |
tree | 583b6d8fd3b82ea830bbb4c3b474d6aae1466ebb /cpukit/libblock | |
parent | 2009-06-11 Roxana Leontie <roxana.leontie@gmail.com> (diff) | |
download | rtems-7baa484300d36a9ced34f6642501f91fd1428461.tar.bz2 |
2009-06-12 Chris Johns <chrisj@rtems.org>
* libblock/src/bdbuf.c: Update comments.
* libblock/src/bdpart.c, libblock/src/ide_part_table.c: Get the
device from the rdev field of the stat buf.
* libcsupport/include/rtems/libio.h: Add a path length to evalpath
handler. Add parent locations to rmmod and unlink handlers.
* libcsupport/include/rtems/libio_.h: Add a path length to
rtems_filesystem_evaluate_path. Add
rtems_filesystem_evaluate_relative_path, rtems_filesystem_dirname,
and rtems_filesystem_prefix_separators. Remove
rtems_filesystem_evaluate_parent.
* libcsupport/src/base_fs.c, libcsupport/src/chdir.c,
libcsupport/src/chmod.c, libcsupport/src/chown.c,
libcsupport/src/chroot.c, libcsupport/src/fchdir.c,
libcsupport/src/link.c, libcsupport/src/mount.c,
libcsupport/src/open.c, libcsupport/src/privateenv.c,
libcsupport/src/readlink.c, libcsupport/src/unmount.c,
libcsupport/src/utime.c, libcsupport/src/unmount.c,
libcsupport/src/utime.c, libfs/src/devfs/devfs.h,
libfs/src/devfs/devfs_eval.c, libfs/src/devfs/devstat.c,
libfs/src/dosfs/msdos_create.c, libfs/src/dosfs/msdos_misc.c,
libfs/src/imfs/imfs.h, libfs/src/imfs/imfs_eval.c,
libfs/src/imfs/imfs_load_tar.c, libfs/src/imfs/ioman.c,
libfs/src/pipe/pipe.c, libmisc/fsmount/fsmount.c,
libnetworking/lib/ftpfs.c: Add the length parameter to the eval
call.
* libcsupport/src/eval.c: Add rtems_filesystem_prefix_separators,
rtems_filesystem_dirname,
rtems_filesystem_evaluate_relative_path. Add the length parameter
to the eval call.
* libcsupport/src/rmdir.c: Find the parent pathloc then the node
pathloc from that node. Remove the call to find the parent given
the node pathloc.
* libcsupport/src/stat.c: Add the length parameter to the eval
call. Set the device into the rdev field.
* libcsupport/src/unlink.c: Find the parent pathloc then the node
pathloc from that node. Remove the call to find the parent given
the node pathloc.
* libfs/src/dosfs/fat.c, libfs/src/dosfs/msdos_format.c: Get the
disk device number from the stat rdev field.
* libfs/src/dosfs/msdos.h: Add the length parameter to the eval
call. Add the parent pathloc to the rmnod handler.
* libfs/src/dosfs/msdos_dir.c: Add the parent pathloc to the rmnod
handler.
* libfs/src/dosfs/msdos_eval.c: Add the length parameter to the
eval and token call.
* libfs/src/imfs/imfs_directory.c: Add the parent pathloc to the
rmnod handler.
* libfs/src/imfs/imfs_fchmod.c: Do not test the mode flags for
only the allowed flags. Add the missing flags spec'ed in the POSIX
standard.
* libfs/src/imfs/imfs_fsunmount.c, libfs/src/imfs/imfs_rmnod.c,
libfs/src/imfs/imfs_unlink.c, libfs/src/imfs/memfile.c: Add the
parent node. Currently ignored in the IMFS.
* libfs/src/imfs/imfs_stat.c: Return the device number in the rdev
field.
* libfs/src/imfs/imfs_mknod.c, libfs/src/imfs/imfs_symlink.c : Add
the length parameter to the token call.
* libfs/src/nfsclient/src/nfs.c: Add the length parameter to the
eval call and parent node to the rmnod and unlink command.
* libmisc/shell/internal.h: Remove the libc mounter decl to make
public.
* libmisc/shell/main_mount.c: Add support for hooking external
mount support for new file systems.
* libmisc/shell/shell.h: Add helper functions for the mount
command.
Diffstat (limited to 'cpukit/libblock')
-rw-r--r-- | cpukit/libblock/src/bdbuf.c | 25 | ||||
-rw-r--r-- | cpukit/libblock/src/bdpart.c | 5 | ||||
-rw-r--r-- | cpukit/libblock/src/ide_part_table.c | 2 |
3 files changed, 17 insertions, 15 deletions
diff --git a/cpukit/libblock/src/bdbuf.c b/cpukit/libblock/src/bdbuf.c index 8be4bd8180..2bfa70efb1 100644 --- a/cpukit/libblock/src/bdbuf.c +++ b/cpukit/libblock/src/bdbuf.c @@ -1936,7 +1936,7 @@ rtems_bdbuf_swapout_modified_processing (rtems_bdpool_id pid, * a device at a time. The task level loop will repeat this operation while * there are buffers to be written. If the transfer fails place the buffers * back on the modified list and try again later. The pool is unlocked while - * the buffers are beign written to disk. + * the buffers are being written to disk. * * @param pid The pool id to process modified buffers on. * @param timer_delta It update_timers is true update the timers by this @@ -1965,14 +1965,14 @@ rtems_bdbuf_swapout_pool_processing (rtems_bdpool_id pid, /* * When the sync is for a device limit the sync to that device. If the sync - * is for a buffer handle the devices in the order on the sync list. This - * means the dev is -1. + * is for a buffer handle process the devices in the order on the sync + * list. This means the dev is -1. */ if (pool->sync_active) dev = pool->sync_device; /* - * If we have any buffers in the sync queue move then to the modified + * If we have any buffers in the sync queue move them to the modified * list. The first sync buffer will select the device we use. */ rtems_bdbuf_swapout_modified_processing (pid, &dev, @@ -1990,22 +1990,22 @@ rtems_bdbuf_swapout_pool_processing (rtems_bdpool_id pid, timer_delta); /* - * We have all the buffers that have been modified for this device so - * the pool can be unlocked because the state is set to TRANSFER. + * We have all the buffers that have been modified for this device so the + * pool can be unlocked because the state of each buffer has been set to + * TRANSFER. */ - rtems_bdbuf_unlock_pool (pool); /* - * If there are buffers to transfer to the media tranfer them. + * If there are buffers to transfer to the media transfer them. */ if (rtems_chain_is_empty (&transfer)) transfered_buffers = false; else { /* - * Obtain the disk device. Release the pool mutex to avoid a dead - * lock. + * Obtain the disk device. The pool's mutex has been released to avoid a + * dead lock. */ dd = rtems_disk_obtain (dev); if (dd == NULL) @@ -2020,14 +2020,13 @@ rtems_bdbuf_swapout_pool_processing (rtems_bdpool_id pid, /* * Take as many buffers as configured and pass to the driver. Note, the - * API to the drivers has the array of buffers and if a chain was passed + * API to the drivers has an array of buffers and if a chain was passed * we could have just passed the list. If the driver API is updated it * should be possible to make this change with little effect in this * code. The array that is passed is broken in design and should be - * removed. Merging to members of a struct into the first member is + * removed. Merging members of a struct into the first member is * trouble waiting to happen. */ - write_req->status = RTEMS_RESOURCE_IN_USE; write_req->error = 0; write_req->bufnum = 0; diff --git a/cpukit/libblock/src/bdpart.c b/cpukit/libblock/src/bdpart.c index 355bd8014d..5f005452fb 100644 --- a/cpukit/libblock/src/bdpart.c +++ b/cpukit/libblock/src/bdpart.c @@ -110,6 +110,9 @@ static void rtems_bdpart_type_to_string( uuid_unparse_lower( type, str); } +/* + * FIXME: This code should the deviceio interface and not the bdbug interface. + */ static rtems_status_code rtems_bdpart_get_disk_data( const char *disk_name, dev_t *disk, @@ -128,7 +131,7 @@ static rtems_status_code rtems_bdpart_get_disk_data( if (rv != 0) { return RTEMS_INVALID_NAME; } - *disk = st.st_dev; + *disk = st.st_rdev; /* Get disk begin, end and block size */ dd = rtems_disk_obtain( *disk); diff --git a/cpukit/libblock/src/ide_part_table.c b/cpukit/libblock/src/ide_part_table.c index 31edc31a41..026b5d05dc 100644 --- a/cpukit/libblock/src/ide_part_table.c +++ b/cpukit/libblock/src/ide_part_table.c @@ -467,7 +467,7 @@ rtems_ide_part_table_get(const char *dev_name, rtems_disk_desc_t *disk_desc) } strncpy (disk_desc->dev_name, dev_name, 15); - disk_desc->dev = dev_stat.st_dev; + disk_desc->dev = dev_stat.st_rdev; disk_desc->sector_size = (dev_stat.st_blksize) ? dev_stat.st_blksize : RTEMS_IDE_SECTOR_SIZE; |