Aucbvax.5401 net.2bsd-bugs utzoo!decvax!ucbvax!dist2 Sun Dec 6 03:27:45 1981 FIX: to kernel/sys/sys/sys4.c The utime() routine is a mess. In particular, if UCB_FSFIX is undefined and an error occurs, the inode remains locked. The necessary changes are: diff kernel/sys/sys/sys4.c.old kernel/sys/sys/sys4.c 454d453 #ifdef UCB_FSFIX 458d457 iupdat(ip, &tv[0], &tv[1]); 463a461 > } This is possibly the most obscure set of diffs we've yet published, so here are the lines involved, in context: kernel/sys/sys/sys4.c.old: if (copyin((caddr_t)uap->tptr, (caddr_t)tv, sizeof(tv))) { u.u_error = EFAULT; #ifdef UCB_FSFIX } else { ip->i_flag |= IACC|IUPD|ICHG; iupdat(ip, &tv[0], &tv[1], 0); } #else return; } iupdat(ip, &tv[0], &tv[1]); #endif iput(ip); kernel/sys/sys/sys4.c: if (copyin((caddr_t)uap->tptr, (caddr_t)tv, sizeof(tv))) { u.u_error = EFAULT; } else { ip->i_flag |= IACC|IUPD|ICHG; #ifdef UCB_FSFIX iupdat(ip, &tv[0], &tv[1], 0); #else iupdat(ip, &tv[0], &tv[1]); #endif } iput(ip); These changes should be made to all tapes written before 12/5/81. Carl ----------------------------------------------------------------- gopher://quux.org/ conversion by John Goerzen of http://communication.ucsd.edu/A-News/ This Usenet Oldnews Archive article may be copied and distributed freely, provided: 1. There is no money collected for the text(s) of the articles. 2. The following notice remains appended to each copy: The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996 Bruce Jones, Henry Spencer, David Wiseman.