Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Oct 2000 04:52:28 -0700
From:      Alfred Perlstein <bright@wintelcom.net>
To:        David Malone <dwmalone@FreeBSD.org>
Cc:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/nfs nfs.h nfs_subs.c nfsm_subs.h
Message-ID:  <20001024045227.B28123@fw.wintelcom.net>
In-Reply-To: <200010241013.DAA74467@freefall.freebsd.org>; from dwmalone@FreeBSD.org on Tue, Oct 24, 2000 at 03:13:37AM -0700
References:  <200010241013.DAA74467@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
* David Malone <dwmalone@FreeBSD.org> [001024 03:13] wrote:
> dwmalone    2000/10/24 03:13:37 PDT
> 
>   Modified files:
>     sys/nfs              nfs.h nfs_subs.c nfsm_subs.h 
>   Log:
>   Problem to avoid processes getting stuck in "vmopar". From Ian's
>   mail:
>   
>   	The problem seems to originate with NFS's postop_attr
>   	information that is returned with a read or write RPC.
>   	Within a vm_fault context, the code cannot deal with
>   	vnode_pager_setsize() shrinking a vnode.
>   
>   	The workaround in the patch below stops the nfsm_postop_attr()
>   	macro from ever shrinking a vnode. If the new size in the
>   	postop_attr information is smaller, then it just sets the
>   	nfsnode n_attrstamp to 0 to stop the wrong size getting
>   	used in the future. This change only affects postop_attr
>   	attributes; the nfsm_loadattr() macro works as normal.
>   
>   	The change is implemented by adding a new argument to
>   	nfs_loadattrcache() called 'dontshrink'. When this is
>   	non-zero, nfs_loadattrcache() will never reduce the
>   	vnode/nfsnode size; instead it zeros n_attrstamp.

  ok...

>   
>   There remain other was processes can get stuck in vmopar.

  huh?  Do you mean even with this patch processes can still wedge
  in 'vmopar'?

-- 
-Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]
"I have the heart of a child; I keep it in a jar on my desk."


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20001024045227.B28123>