Hello,

Egy kedves ismerosom keresett meg egy kerdessel, de nem tudtam neki
valaszolni, hatha itt valaki tud segiteni! (bocsanat, angolul van)


What is the meaning of dirty_expire_centisecs ?


The most authentic-looking info I have found is in
https://www.kernel.org/doc/Documentation/sysctl/vm.txt

dirty_expire_centisecs
This tunable is used to define when dirty data is old enough to be eligible
for writeout by the kernel flusher threads.  It is expressed in 100'ths
of a second.  Data which has been dirty in-memory for longer than this
interval will be written out next time a flusher thread wakes up.

That can be read in two different ways:

- persistence is "guaranteed" (modulo system load, disk spinned down
etc) to happen in dirty_expire_centisecs + dirty_writeback_centisecs

- the other reading is that if a page wasn't updated in
dirty_expire_centisecs, it'll be persisted at most
dirty_writeback_centisecs after that, but if it is being written
regularly, no persistence ever happens (at least not by the flusher thread)

I'd think the latter is the correct reading: this is a performance
tuning optimization for the filesystem cache - the OS doesn't want to
generate unnecessary I/O by persisting pages that keep changing, but it
can be beneficial not to hold back all writes creating a bottleneck for
later, so pages that no longer seem to be written get persisted in the
background.

Did try to find the corresponding code with no luck, a pointer would be
appreciated!


koszi


Szo
_________________________________________________
linux lista      -      linux@mlf.linux.rulez.org
http://mlf.linux.rulez.org/mailman/listinfo/linux

válasz