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
On Jun 20, 10:09pm, manu%netbsd.org@localhost (Emmanuel Dreyfus) wrote:
-- Subject: 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.
|
This is not that simple. There is at least one more place where
it does while (vp->v_numoutput != 0) cv_wait().. And I am not
sure what happens if you make VOP_PUTPAGES timeout.
christos
Home |
Main Index |
Thread Index |
Old Index