Date: Tue, 11 Dec 2001 09:01:00 -0800 (PST) From: "Richard S. Conto" <rsc@merit.edu> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/32700: inode changes for large Message-ID: <200112111701.fBBH10L72112@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 32700 >Category: ports >Synopsis: inode changes for large >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Dec 11 09:10:01 PST 2001 >Closed-Date: >Last-Modified: >Originator: Richard S. Conto >Release: 4.4-STABLE >Organization: Merit Network, Inc >Environment: FreeBSD x25.family 4.4-STABLE FreeBSD 4.4-STABLE #0: Fri Nov 30 12:20:51 EST 2001 root@x25.family:/usr/src/sys/compile/INSPIRON3K i386 >Description: After change to ./src/sys/sys/vnode.h 1.111.2.14, Tue Oct 16 23:16:24 2001 UTC by dillon, `arla' (built against a previous version) would hang the system. Attempts to re-compile arla would fail due to changes in vnode.h >How-To-Repeat: Build a system from before October 16. Build arla from before October 16 Update to a recent (November 26) system. arla will crash the system when files or directories in /afs are referenced. Attempts to re-compile arla will fail. >Fix: I have an ugly patch. I've been using it on two machines, and a co-worker has been using it too. I don't know how to make this patch work with systems prior to the change to vnode.h on October 16. cd /usr/ports/net/arla/work/arla-0.35.5 and apply the following patch ---------------------------------------------------------------- *** xfs/bsd/BAK/xfs_message.c Fri Apr 27 19:43:05 2001 --- xfs/bsd/xfs_message.c Wed Nov 28 12:35:56 2001 *************** *** 464,474 **** --- 464,483 ---- /* XXX see comment in xfs_node_find */ /* XXXSMP do gone[l] need to get mntvnode_slock ? */ + #if !defined(BIGJOBS) + for(vp = TAILQ_FIRST(&(XFS_TO_VFS(&xfs[fd])->mnt_nvnodelist)); + vp != NULL; + #else /* BIGJOBS */ for(vp = XFS_TO_VFS(&xfs[fd])->mnt_vnodelist.lh_first; vp != NULL; + #endif /* BIGJOBS */ vp = next) { + #if !defined(BIGJOBS) + next = TAILQ_NEXT(vp, v_nmntvnodes); + #else next = vp->v_mntvnodes.le_next; + #endif /* BIGJOBS */ gc_vnode (vp, p); } } else { *** xfs/bsd/BAK/xfs_node-bsd.c Mon Nov 26 12:20:49 2001 --- xfs/bsd/xfs_node-bsd.c Wed Nov 28 12:37:25 2001 *************** *** 270,278 **** * on FreeBSD once. */ for(t = XFS_TO_VFS(xfsp)->mnt_vnodelist.lh_first; t != NULL; ! t = t->v_mntvnodes.le_next) { xn = VNODE_TO_XNODE(t); if (xn && xfs_handle_eq(&xn->handle, handlep)) break; --- 270,285 ---- * on FreeBSD once. */ + #if !defined(BIGJOBS) + for(t = TAILQ_FIRST(&(XFS_TO_VFS(xfsp)->mnt_nvnodelist)); + t != NULL; + t = TAILQ_NEXT(t, v_nmntvnodes) + #else for(t = XFS_TO_VFS(xfsp)->mnt_vnodelist.lh_first; t != NULL; ! t = t->v_mntvnodes.le_next ! #endif /* BIGJOBS */ ! ) { xn = VNODE_TO_XNODE(t); if (xn && xfs_handle_eq(&xn->handle, handlep)) break; >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200112111701.fBBH10L72112>