On Fri, 25 Mar 2011 14:20:04 -0700, Venkateswararao Jujjuri<jvrao@xxxxxxxxxxxxxxxxxx> wrote:On 03/25/2011 04:30 AM, Aneesh Kumar K.V wrote:With dotl we can have new operations and so we added tsyncfs. TheNow that we use write_inode to flush serverWhy are you singling out dotu only? won't it be applicable to dotl too?
cache related to fid, we don't need tsyncfs.
This help us to do a more efficient server flush
for dotu protocol
primary goal is to add an operation that can flush server cache. We
hooked that to sync(2) on the client. With dotu we cannot add new
operations so we always forced the write on the server in case of dotu
to O_SYNC. That is much slower than doing an fsync on write_inode. But
whether doing an fsync on write inode is better than doing tsyncfs on
sync(2) on client is something i haven't yet measured. Stefan Hajnoczi wants to
see some numbers before we push tsyncfs in the server(qemu). We also don't
want a kernel release with 9p operation which we may remove later. So
the plan now is to get write_inode changes upstream in this merge window
and later get numbers against tsyncfs/write_inode -> fsync and add tsyncfs only
if we see a benefit. BTW NFS use the write_inode approach.
-aneesh