Files
rtems/testsuites/fstests/fsdosfssync01/Makefile.am
Sebastian Huber 86ef0df976 dosfs: Remove fat_file_datasync()
The fat_file_datasync() read every cluster of the file into the cache
and then synchronized it step-by-step.  For unmodified buffers this is a
non-operation.  For modified buffers this will wake-up the swapout task
which performs then a single buffer write operation.  This is usually
quite inefficient.  Firstly we do single buffer writes, secondly we
may perform a lot of unnecessary read operations (for huge files this is
really bad), and thirdly this leads likely to cache evictions.

The synchronization procedure is replaced by a simple
rtems_bdbuf_sync_dev().  This has the side-effect that also buffers not
related to the file are synchronized, but since the modified list is
normally short this should be acceptable.
2012-05-11 13:58:43 +02:00

20 lines
560 B
Makefile

rtems_tests_PROGRAMS = fsdosfssync01
fsdosfssync01_SOURCES = init.c
dist_rtems_tests_DATA = fsdosfssync01.scn fsdosfssync01.doc
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../automake/compile.am
include $(top_srcdir)/../automake/leaf.am
AM_CPPFLAGS += -I$(top_srcdir)/../support/include
LINK_OBJS = $(fsdosfssync01_OBJECTS)
LINK_LIBS = $(fsdosfssync01_LDLIBS)
fsdosfssync01$(EXEEXT): $(fsdosfssync01_OBJECTS) $(fsdosfssync01_DEPENDENCIES)
@rm -f fsdosfssync01$(EXEEXT)
$(make-exe)
include $(top_srcdir)/../automake/local.am