Date: Wed, 14 May 2003 18:12:09 -0400 (EDT) From: Robert Watson <rwatson@FreeBSD.org> To: Don Lewis <truckman@FreeBSD.org> Cc: current@FreeBSD.org Subject: Re: rpc.lockd spinning; much breakage Message-ID: <Pine.NEB.3.96L.1030514181016.12519A-100000@fledge.watson.org> In-Reply-To: <200305140545.h4E5jWM7052038@gw.catspoiler.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Per your suggestion, the attached changes do cause a non-blocking request to now get "the right error" -- my only concern is whether or not this is too sweeping a mapping of this error case. The spec lists LCK_DENIED as "Indicates that the procedure failed because the request conflicted with existing lock reservations for the file", but doesn't appear to offer an error that denies the locked based on local configuration (security), etc. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Network Associates Laboratories RCS file: /data/ncvs/src/usr.sbin/rpc.lockd/kern.c,v retrieving revision 1.11 diff -u -r1.11 kern.c --- kern.c 15 Aug 2002 21:52:21 -0000 1.11 +++ kern.c 14 May 2003 22:00:41 -0000 @@ -487,7 +487,7 @@ break; case nlm4_denied: if (pid_p == NULL) - ans.la_errno = EACCES; + ans.la_errno = EAGAIN; else { /* this is an answer to a nlm_test msg */ ans.la_set_getlk_pid = 1; @@ -530,7 +530,7 @@ break; case nlm_denied: if (pid_p == NULL) - ans.la_errno = EACCES; + ans.la_errno = EAGAIN; else { /* this is an answer to a nlm_test msg */ ans.la_set_getlk_pid = 1;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1030514181016.12519A-100000>