Patch-ID# 100177-01
Keywords: ufs, itrunc, panic 
Synopsis: SunOS 4.1: quotas and heavy system load.
Date: 13/Dec/90
 
SunOS release: 4.1
 
Unbundled Product:
 
Unbundled Release:
 
Topic: 
 
BugId's fixed with this patch: 1034916

Architectures for which this patch is available: sun3, sun3x, sun4, sun4c

Patches which may conflict with this patch:

Obsoleted by: Next major release of SunOS

Problem Description:

This patch fixes a race condition in iget()
 
        dqrele() may sleep.  Even though the new inode is in the
        new hash chain, the new ino number is not yet in.
        Therefore, if another process comes in to get the same
        inode, having failed to find one, will create another
        inode with the same dev and ino.

        The fix is to move dqrele() before bread().  This
        is what has been done in 4.3tahoe.
 
INSTALL:
	
   After extracting, as root install the correct architecture type;
   sun3, sun4, sun3x, or sun4c patch as follows:
 
 # arch -k
to find out which architecture you have

 # mv /sys/sun[3,3x,4,4c]/OBJ/ufs_inode.o /sys/[3,3x,4,4c]/OBJ/ufs_inode.o.orig 
 [3,3x,4,4c] is dependent of results of arch -k

 # cp sun[3,3x,4,4c]/ufs_inode.o /sys/[3,3x,4,4c]/OBJ/ufs_inode.o
 # chmod 644 /sys/[3,3x,4,4c]/OBJ/ufs_inode.o

run /etc/config on your kernel and build and install this
new kernel. Please refer to the system and networking administration
manual for instructions on building a custom kernel.

