atom feed27 messages in org.freebsd.freebsd-hackersNFS client/buffer cache deadlock
FromSent OnAttachments
Brian Fundakowski FeldmanApr 14, 2005 10:07 pm 
Marc OlzheimApr 15, 2005 6:21 am 
Brian Fundakowski FeldmanApr 15, 2005 8:21 am 
Marc OlzheimApr 18, 2005 2:25 am 
Marc OlzheimApr 19, 2005 6:32 am 
Brian Fundakowski FeldmanApr 19, 2005 8:18 am 
Marc OlzheimApr 19, 2005 9:02 am 
Marc OlzheimApr 19, 2005 9:09 am 
Brian Fundakowski FeldmanApr 19, 2005 9:17 am 
Brian Fundakowski FeldmanApr 19, 2005 1:48 pm 
Marc OlzheimApr 20, 2005 7:04 am 
Brian Fundakowski FeldmanApr 20, 2005 7:26 am 
Marc OlzheimApr 20, 2005 7:39 am 
Brian Fundakowski FeldmanApr 20, 2005 8:22 am 
Marc OlzheimApr 20, 2005 8:35 am 
Brian Fundakowski FeldmanApr 20, 2005 8:54 am 
Jilles TjoelkerApr 20, 2005 10:12 am 
Brian Fundakowski FeldmanApr 20, 2005 10:31 am 
Brian Fundakowski FeldmanApr 20, 2005 11:03 am 
Marc OlzheimApr 20, 2005 11:03 am 
Dag-Erling SmørgravApr 21, 2005 1:36 am 
Garrett WollmanApr 21, 2005 4:50 am 
Garrett WollmanApr 21, 2005 4:51 am 
Garrett WollmanApr 22, 2005 5:49 am 
Brian Fundakowski FeldmanApr 22, 2005 8:12 am 
Brian Fundakowski FeldmanApr 22, 2005 8:38 am 
Garrett WollmanApr 23, 2005 5:09 am 
Subject:NFS client/buffer cache deadlock
From:Brian Fundakowski Feldman (gre@FreeBSD.ORG)
Date:Apr 22, 2005 8:12:02 am
List:org.freebsd.freebsd-hackers

On Wed, Apr 20, 2005 at 01:29:10PM -0400, Garrett Wollman wrote:

<<On Wed, 20 Apr 2005 11:52:33 -0400, Brian Fundakowski Feldman
<gre@FreeBSD.ORG> said:

I think the first is more useful behavior than the last. Supporting it should be exactly the same as supporting what happens if the actual filesystem fills up. In this case, the filesystem is being requested to write more "than there is room for."

Returning a short write for operations on regular files would definitely be considered astonishing. The changes that you have made should be considered flow control, not admission control, and should appear to the user no differently than if we were waiting for a slow disk to write something; i.e., the user thread should be blocked until either the entire write completes, or the process is interrupted by a signal.

Can you find any evidence that it's acceptable to interleave multiple writers that are doing O_APPEND? At best, to do what you're asking, they could be kept from being interleaved from the context of one specific NFS client host...