fs/fat: Do not write unmodified fat entries to disk
authorStefan Brüns <stefan.bruens@rwth-aachen.de>
Sun, 11 Sep 2016 20:51:40 +0000 (22:51 +0200)
committerTom Rini <trini@konsulko.com>
Fri, 23 Sep 2016 12:55:56 +0000 (08:55 -0400)
commit3c0ed9c3a561ca744b2b76921bb8352ba2340669
tree96eaf61ad2db6e61e4b17944aa222c914cb07b49
parented76f912777066c788ae7e9cfb1d5e19e8c35274
fs/fat: Do not write unmodified fat entries to disk

The code caches 6 sectors of the FAT. On FAT traversal, the old contents
needs to be flushed to disk, but only if any FAT entries had been modified.
Explicitly flag the buffer on modification.

Currently, creating a new file traverses the whole FAT up to the first
free cluster and rewrites the on-disk blocks.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>
fs/fat/fat.c
fs/fat/fat_write.c
include/fat.h