Patch-ID# 100089-06 Keywords: tmpfs, crash, fail assertion Synopsis: SunOS 4.1:fixes for various tmpfs bugs Date: 30-May-91 SunOS release: 4.1 Unbundled Product: Unbundled Release: Topic: BugId's fixed with this patch: 1042253 1042028 1042025 1041989 1037425 1034804 1033329 1033326 1033262 1032932 1032904 1038651 1044192 1042350 1043270 1057963 1049027 1054054 1047586 Architectures for which this patch is available: sun3 sun3x sun4 sun4c sun4/490-PSR_A Obsoleted by: Problem Description: 1042253: truncating tmpfs files can cause loss of available swap space 1042028: tmpfs should check directory execution permissions 1042025: set-uid/gid bits should be turned off when writing to a tmpfs file. 1041989: tmpfs memory allocation inefficient 1037425: attempt to mkdir in tmpfs can result in assertion failed panic 1034804: SCTS: st_rmdir_09u.c will made system panics on tmpfs file system. 1033329: tmp vfs out of space after creating 2000 empty files 1033326: chmod +t /tmp has no effect on the tmp vfs 1033262: write to tmpfs file fails assertion 1032932: tmpfs problem with updating access time and modified time. 1032904: Doing a mkfifo on tmpfs filesystem causes crash 1038651: Using tmpfs ie ram /tmp can cause data initialization with Fortran on SunOS 4.1. 1044192: hard link to a directory succeeds on tmpfs for non-root users 1042350: tmpfs problem with ftruncate test in SCTS from SUNVS. 1043270: tmpfs disallows mmap beyond end of file 1057963: cannot mount an exported tmpfs directory 1049027: tmpfs hangs and deadlocks 1054054: +s and +t together do not work as expected INSTALL: AS ROOT: SAVE THE OLD VERSION: mv /sys/`arch -k`/OBJ/tmp_dir.o /sys/`arch -k`/OBJ/tmp_dir.o.FCS mv /sys/`arch -k`/OBJ/tmp_tnode.o /sys/`arch -k`/OBJ/tmp_tnode.o.FCS mv /sys/`arch -k`/OBJ/tmp_vfsops.o /sys/`arch -k`/OBJ/tmp_vfsops.o.FCS mv /sys/`arch -k`/OBJ/tmp_vnodeops.o /sys/`arch -k`/OBJ/tmp_vnodeops.o.FCS INSTALL THE NEW VERSION: cp `arch -k`/tmp_dir.o /sys/`arch -k`/OBJ/tmp_dir.o cp `arch -k`/tmp_tnode.o /sys/sun{3,3x,4,4c}/OBJ/tmp_tnode.o cp `arch -k`/tmp_vfsops.o /sys/`arch -k`OBJ/tmp_vfsops.o cp `arch -k`/tmp_vnodeops.o /sys/`arch -k/OBJ/tmp_vnodeops.o run /etc/config on your kernel and do a make. Install the newly configured vmunix and reboot. Refer to the Systems and Network administrations manual on how to configure a kernel.