Text File

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 <jgoerzen@complete.org> 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.