"It's impressive what can happen when attention is drawn to a
problem; the 2.6.30 kernel will contain fixes which seemingly
eliminate many of the latencies experienced by ext3 users. This
article will look at the changes that were made, including a
surprising change to the default journaling mode made just before
the 2.6.30-rc1 release.
"The problem, in short, is this: the ext3 filesystem, when
running in the default data=ordered mode, can exhibit lengthy
stalls when some process calls fsync() to flush data to disk. This
issue most famously manifested itself as the much-lamented Firefox
system-freeze problem, but it goes beyond just Firefox. Anytime
there is reasonably heavy I/O going on, an fsync() call can bring
everything to a halt for several seconds. Some stalls on the order
of minutes have been reported. This behavior has tended to
discourage the use of fsync() in applications and it makes the
Linux desktop less fun to use. It's clearly worth fixing - but
nobody did that for years."