about summary refs log tree commit homepage
path: root/GIT-VERSION-GEN
diff options
context:
space:
mode:
authorEric Wong <e+fbsd@80x24.org>2014-07-16 19:32:08 +0000
committerEric Wong <e+fbsd@80x24.org>2014-07-16 19:35:19 +0000
commit54d8f7898470fa2bb08d308876eecf3e32b33dff (patch)
tree066362f517f35972b02b7e1a6a21a0c20166a61c /GIT-VERSION-GEN
parent1fd6784e59e9b6d733b1712573d4689affed0140 (diff)
downloadyahns-54d8f7898470fa2bb08d308876eecf3e32b33dff.tar.gz
This bug is noticeable on a amd64 FreeBSD 9.2 VM, and possible under
Linux, too.  This happens as a zero-copy sendfile implementation means
pages queued for transmission by the sendfile system call should not be
modified at any point after the sendfile syscall is made.

To prevent modification, we replace the temporary file with a new one.
This has a similar effect as truncate and can still prevent a dirty
flush in cases when a client consumes the response fast enough.

This reverts the misguided ade89b5142bedbcf07f38aa062bfdbfcb8bc48d3
commit ("wbuf: hack to avoid response corruption on FreeBSD")

Note: this bug was finally fixed because I finally noticed this flaw
in a different (non-Ruby, non-HTTP) server of mine.
Diffstat (limited to 'GIT-VERSION-GEN')
0 files changed, 0 insertions, 0 deletions