lkml.org 
[lkml]   [2016]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectclose() behaviour changes depending on whether file exists or not?
I'm running 3.14 on my laptop, and I'm seeing some unexpected behaviour when I 
write out to a big file. Basically if the

If I run

strace dd if=/dev/zero of=bigfile bs=1M count=1000;cat /proc/meminfo |egrep
"Dirty|Writeback"

I see the final close() of "bigfile" (fd 1 in the strace output) complete right
away, and I get speeds of 1.5GB/s. When it completes I see "Dirty" in
/proc/meminfo right at about a GB of data.

However, if I then immediately repeat the test (so the "bigfile" file exists
already) I see the final close() delay until the writeback is done, almost as
though there is an implicit fsync() call. When it completes /proc/meminfo has a
"Dirty" value of basically nothing and a "Writeback" value of about 67MB.

Is this a known issue? I checked a 3.10 kernel that I had hanging around and it
showed the same behaviour.

Thanks,
Chris


PS: Please CC me on reply, I'm not subscribed to the list.


\
 
 \ /
  Last update: 2016-01-07 11:41    [W:1.359 / U:0.524 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site