Fixed some longstanding timestamp bugs: 1. mark atimes and mtimes of special files and fifos for update upon    successful completion of non-null i/o, not at the beginning of the    syscall. 2. never update file times for readonly filesystems.  They were updated    for stats and closes but not for syncs.  The updates were of course    only in-core and were thrown away when the inode was uncached, so    the times sometimes appeared to go backwards.
Fixed some longstanding timestamp bugs:
1. mark atimes and mtimes of special files and fifos for update upon
   successful completion of non-null i/o, not at the beginning of the
   syscall.
2. never update file times for readonly filesystems.  They were updated
   for stats and closes but not for syncs.  The updates were of course
   only in-core and were thrown away when the inode was uncached, so
   the times sometimes appeared to go backwards.

Improved comments in code related to (1) (mostly by removing them).

Unmacroized ITIMES().  The test in (2) bloated it even more.  Don't
call getmicrotime() in the function version of it when we only need
the time in seconds.

jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase,jrobhoward/SCADAbase