From da4d919720c4ecbd9e24ad748567b48c744689e7 Mon Sep 17 00:00:00 2001 From: chopps Date: Thu, 2 Jun 1994 23:42:19 +0000 Subject: [PATCH] fix an off by one error in hash chain counting code. Also fix "lockup" bug --- sys/adosfs/adutil.c | 6 +++++- sys/adosfs/advnops.c | 6 +++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/sys/adosfs/adutil.c b/sys/adosfs/adutil.c index 54b1d4962cc8..d4d938a9ea8f 100644 --- a/sys/adosfs/adutil.c +++ b/sys/adosfs/adutil.c @@ -27,7 +27,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: adutil.c,v 1.1 1994/05/11 18:49:13 chopps Exp $ + * $Id: adutil.c,v 1.2 1994/06/02 23:42:19 chopps Exp $ */ #include #include @@ -317,6 +317,10 @@ adosfs_reclaim(vp) #endif ap = VTOA(vp); LIST_REMOVE(ap, link); + if (vp->v_type == VDIR) + free(ap->tab, M_ANODE); + else if (vp->v_type == VLNK) + free(ap->slinkto, M_ANODE); cache_purge(vp); return(0); } diff --git a/sys/adosfs/advnops.c b/sys/adosfs/advnops.c index 8cbbb5a68379..fbbcc7655477 100644 --- a/sys/adosfs/advnops.c +++ b/sys/adosfs/advnops.c @@ -27,7 +27,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: advnops.c,v 1.4 1994/05/25 11:34:15 chopps Exp $ + * $Id: advnops.c,v 1.5 1994/06/02 23:42:50 chopps Exp $ */ #include #include @@ -280,7 +280,7 @@ adosfs_select(vp, which, fflags, ucp, p) * sure there's something to read... */ #ifdef ADOSFS_DIAGNOSTIC - printf("(select [0x%x %d 0x%x 0x%x 0x%x] 1)", vp, which, fflags, ucp + printf("(select [0x%x %d 0x%x 0x%x 0x%x] 1)", vp, which, fflags, ucp, p); #endif return(1); @@ -855,7 +855,7 @@ adosfs_inactive(vp, p) #ifdef ADOSFS_DIAGNOSTIC printf("(inactive "); #endif - if (vp->v_usecount == 0 && 0 /* check for file gone? */) + if (vp->v_usecount == 0 /* && check for file gone? */) vgone(vp); #ifdef ADOSFS_DIAGNOSTIC