tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: VOP_PUTPAGE ignores mount_nfs -o soft,intr



Christos Zoulas <christos%astron.com@localhost> wrote:

> Ok, what is it supposed to do? Does it fail? Give up? Get interrupted
> and keep looping?

The process stuck in tstile waiting for vnode lock is a consequence of
the initial problem: ioflush stuck in cv_wait().

What about this: we introduce a mnt_timeo in struct mount, and use
cv_timedwait() instead of cv_wait() in genfs_do_putpages(). If timeout
expires, we get a failure: the page was not put to storage. 

mnt_timeo should have a sane default (which one) for all filesystems,
not only NFS: that way we fix process stuck in tstile because of hardare
failure (I already saw that).  For NFS we use the NFS timeout.

That way ioflush never holds a vnode lock forever, and umount -f should
work.

Opinion?

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index