> hmm... i seem to recall a problem with partial writes that derrick > was trying to debug. at some point i think the calls to afs_DoPartialWrite > aren't enabled AFS_VM_RDWR_ENV. perhaps config shouldnt claim linux is > AFS_VM_RDWR_ENV? this does seem to fix the problem. atleast iozone > passes.
Oh, so turns out my original statement wasn't quite correct; we do call afs_DoPartialWrite on Linux (I was confused by the 64BIT_CLIENT #ifdef's). However, we only call it once after the entire write op has been executed. On Solaris, we call afs_DoPartialWrite every time through the write loop (i.e. after each chunk, I think). And turning off AFS_VM_RDWR_ENV causes afs_UFSWrite to call afs_DoPartialWrite each time through the loop. Maybe we want to remove the #ifdef AFS_VM_RDWR_ENV in afs_UFSWrite entirely, since there's no way for the upper-level write routine like afs_linux_write to call afs_DoPartialWrite at the right time (i.e. between chunks in the middle of the write process)? On a slightly related note, I also noticed that the Linux client never calls afs_PrefetchChunk. We probably want to copy the afs_PrefetchChunk invocation from some other VM-based platform into afs_linux_read or somesuch.. -- kolya _______________________________________________ OpenAFS-devel mailing list [EMAIL PROTECTED] https://lists.openafs.org/mailman/listinfo/openafs-devel
