Re: how_much_to_cache?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 14, 2005 at 01:20:23 -0800, prasanna wakhare wrote:
> Hi Jan,
> Thanks for excellent reply.It refresh my concepts.
> I knew these generic_* functions .
> Rather i implemented readpage ,prepare write and
> commit write for network file system,
> The main confusion i got when locking comes into
> picture,
> We cant rely on thoses pages on the current machines
> which are not under lock,as it bacause some other
> clients might modify those pages.And this all stuff

You have to put consistency checks in the right places and use
invalidate_inode_pages (or make a variant of it that accepts a range
and use that).

> makes me think of our own explicit caching atleast in
> large cluster filesystems.

Network filesystem can't, principialy, achieve absolute consistency
(because it's not well defined). So you have to define what rules of
consistency you have.

And it turns out, that trying to define strict rules won't win you
anything. You can check here and there and finaly find, that you can't
guarantee much anyway. Been there, done that.

So I suggest you define consistency in terms of open, close and POSIX
locks. Than these calls will have to do the appropriate consistency
checks and perhaps invalidate the pages. Between, just let the cache do
the best it can. Trying to get stronger consistency (and actualy
guarantee it) is bound to kill performance completely.

Basicaly applications that do concurent access have to do locking even
on local filesystems. The only thing beyond locks that must be
guaranteed is, that if node 1 opens A and closes it and then opens B and
closes it, than node 2 can't see unmodified A and modified B at the same
time.

> Akthough i dont know how worst or good it is.
> Or if somebody knows about lustre cachind then i
> really pleased to listen the comments on lustres.

I don't really know, but I believe lustre really has relatively relaxed
consistency guarantees.

-------------------------------------------------------------------------------
						 Jan 'Bulb' Hudec <bulb@xxxxxx>

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux