Speed up test suite by avoiding fsync

Add grub_util_disable_fd_syncs call to turn grub_util_fd_sync calls into
no-ops, and use it in programs that copy files but do not need to take
special care to sync writes (grub-mknetdir, grub-rescue,
grub-mkstandalone).

On my laptop, this reduces partmap_test's runtime from 1236 seconds to
204 seconds.
This commit is contained in:
Colin Watson 2013-11-27 10:06:07 +00:00
parent fc3f2b72cd
commit 5c7206e45e
9 changed files with 52 additions and 11 deletions

View file

@ -191,10 +191,19 @@ grub_util_fd_strerror (void)
return strerror (errno);
}
static int allow_fd_syncs = 1;
void
grub_util_fd_sync (grub_util_fd_t fd)
{
fsync (fd);
if (allow_fd_syncs)
fsync (fd);
}
void
grub_util_disable_fd_syncs (void)
{
allow_fd_syncs = 0;
}
void