Re: smbfs read cacheing w/ WfW
Bill Hawes (whawes@star.net)
Mon, 08 Dec 1997 22:59:41 -0500
Steven N. Hirsch wrote:
> As you requested, I turned on debugging in smbfs/inode.c and ran iozone on
> auto mode. Interestingly enough, for each write/read iteration, it spits
> out one of these:
>
> Dec 8 22:15:13 cy kernel: smb_revalidate_inode: up-to-date, \
> jiffies=10173611, oldtime=10173611
>
> They occur at the point where it turns around to read back the temporary
> file. Unless I'm totally misreading the code, doesn't this mean that the
> cache is _not_ being invalidated because smbfs thinks it's current?
If it says "up-to-date", it doesn't even call getattr to check mtime.
Somethine is odd here, because it should close the file after writing,
and at close time I zap the revalidate time to force a revalidation. So
it should call getattr, but mtime should be unchanged.
The only other thing I can suggest is to check the count of inode pages
at the start of reading -- there should be a debug statement to do this
already in file.c. A 1 meg file should have 250 pages at the start of
the reading.
Regards,
Bill