mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-09-02 21:52:13 +08:00
The scope of the file system operations is the file system instance. The scope of the file system node handlers is the file location. The benefit of moving the operations to the mount table entry is a size reduction of the file location (rtems_filesystem_location_info_t). The code size is slightly increased due to additional load instructions. Restructure rtems_filesystem_mount_table_entry_t to improve cache efficiency.
35 lines
827 B
C
35 lines
827 B
C
/*
|
|
* Copyright (c) 2012 embedded brains GmbH. All rights reserved.
|
|
*
|
|
* embedded brains GmbH
|
|
* Obere Lagerstr. 30
|
|
* 82178 Puchheim
|
|
* Germany
|
|
* <rtems@embedded-brains.de>
|
|
*
|
|
* The license and distribution terms for this file may be
|
|
* found in the file LICENSE in this distribution or at
|
|
* http://www.rtems.com/license/LICENSE.
|
|
*/
|
|
|
|
#if HAVE_CONFIG_H
|
|
#include "config.h"
|
|
#endif
|
|
|
|
#include <rtems/libio_.h>
|
|
|
|
void rtems_filesystem_location_clone(
|
|
rtems_filesystem_location_info_t *clone,
|
|
const rtems_filesystem_location_info_t *master
|
|
)
|
|
{
|
|
int rv = 0;
|
|
|
|
clone = rtems_filesystem_location_copy( clone, master );
|
|
rv = (*clone->mt_entry->ops->clonenod_h)( clone );
|
|
if ( rv != 0 ) {
|
|
rtems_filesystem_location_remove_from_mt_entry( clone );
|
|
rtems_filesystem_location_initialize_to_null( clone );
|
|
}
|
|
}
|