-/* ffs_inode.c 4.11 82/06/07 */
-
-/* merged into kernel: @(#)iget.c 2.2 4/8/82 */
-
-#include "../h/param.h"
-#include "../h/systm.h"
-#include "../h/mount.h"
-#include "../h/dir.h"
-#include "../h/user.h"
-#include "../h/inode.h"
-#include "../h/fs.h"
-#include "../h/conf.h"
-#include "../h/buf.h"
-#include "../h/inline.h"
-
-#define INOHSZ 63
-#define INOHASH(dev,ino) (((dev)+(ino))%INOHSZ)
-short inohash[INOHSZ];
-short ifreel;
+/*
+ * Copyright (c) 1982, 1986, 1989 Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms are permitted
+ * provided that the above copyright notice and this paragraph are
+ * duplicated in all such forms and that any documentation,
+ * advertising materials, and other materials related to such
+ * distribution and use acknowledge that the software was developed
+ * by the University of California, Berkeley. The name of the
+ * University may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ * @(#)ffs_inode.c 7.28 (Berkeley) %G%
+ */
+
+#include "param.h"
+#include "systm.h"
+#include "mount.h"
+#include "user.h"
+#include "proc.h"
+#include "file.h"
+#include "buf.h"
+#include "cmap.h"
+#include "vnode.h"
+#include "../ufs/inode.h"
+#include "../ufs/fs.h"
+#include "../ufs/ufsmount.h"
+#ifdef QUOTA
+#include "../ufs/quota.h"
+#endif
+#include "kernel.h"
+#include "malloc.h"
+
+#define INOHSZ 512
+#if ((INOHSZ&(INOHSZ-1)) == 0)
+#define INOHASH(dev,ino) (((dev)+(ino))&(INOHSZ-1))
+#else
+#define INOHASH(dev,ino) (((unsigned)((dev)+(ino)))%INOHSZ)
+#endif
+
+union ihead {
+ union ihead *ih_head[2];
+ struct inode *ih_chain[2];
+} ihead[INOHSZ];
+
+int prtactive; /* 1 => print out reclaim of active vnodes */