afs: Do not skip flushing pages for dv-0 files
authorAndrew Deason <adeason@sinenomine.net>
Thu, 15 Nov 2012 00:29:35 +0000 (18:29 -0600)
committerDerrick Brashear <shadow@your-file-system.com>
Tue, 20 Nov 2012 09:57:10 +0000 (01:57 -0800)
commitad4e634051e18fa5bd07016b6405e53e236c2f45
treef2003dbbda72700dc59b419abd733d9862118dc1
parentaeb2763b741a218ad6fd93adc6157a6a31f27e13
afs: Do not skip flushing pages for dv-0 files

If the dv for a file is 0, we know the file is empty. Currently we
skip flushing pages for such files, presumably the idea being there is
no data in the file, so there should be no pages to flush.

However, Linux seems to keep empty pages around for empty files. So, a
future read can result in the application reading a page full of
zeroes, unless we flush the page here. While this has only been found
to happen on Linux 2.6.22 and later (and distribution-specific
backports, like RHEL 2.6.18-128), other platforms could in theory also
choose to do this. It would be difficult to find out when another
platform started to behave like this, so just remove this skip for
everyone so we never have to deal with this again.

Replace this code with a comment with a quick explanation, in case
anyone tries to add a similar optimization here in the future.

Thanks to Richard Brittain.

Change-Id: I68c51bb7612a98a5c75112bb8f4bb1edd949fda1
Reviewed-on: http://gerrit.openafs.org/8465
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
src/afs/afs_osi_vm.c