[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMoswejffB4ys=2C5zL_j9SBrdka8MJWV3hpwber9cggo=1GQQ@mail.gmail.com>
Date: Tue, 19 Nov 2019 08:47:31 +0000
From: Paul Richards <paul.richards@...il.com>
To: linux-ext4@...r.kernel.org
Subject: Query about ext4 commit interval vs dirty_expire_centisecs
Hello there,
I'm trying to understand the interaction between the ext4 `commit`
interval option, and the `vm.dirty_expire_centisecs` tuneable.
The ext4 `commit` documentation says:
> Ext4 can be told to sync all its data and metadata every 'nrsec' seconds. The default value is 5 seconds. This means that if you lose your power, you will lose as much as the latest 5 seconds of work (your filesystem will not be damaged though, thanks to the journaling).
The `dirty_expire_centisecs` documentation says:
> 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.
Superficially these sound like they have a very similar effect. They
periodically flush out data that hasn't been explicitly fsync'd by the
application. I'd like to understand a bit more the interaction
between these.
What happens when the ext4 commit interval is shorter than the
dirty_expire_centisecs setting? (Does the latter become "redundant"?)
What happens when the dirty_expire_centisecs setting is shorter than
the ext4 commit interval?
Thanks,
Powered by blists - more mailing lists