From 98b3943e954553f7a02036e76a6ce9691727fe41 Mon Sep 17 00:00:00 2001 From: anwleung Date: Thu, 1 Mar 2007 03:04:35 +0000 Subject: [PATCH] little changed...still in weird state :) git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@1142 29311d96-e01e-0410-9327-a35deaab8ce9 --- branches/aleung/security1/ceph/osdc/ObjectCacher.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/branches/aleung/security1/ceph/osdc/ObjectCacher.h b/branches/aleung/security1/ceph/osdc/ObjectCacher.h index f97294c7df529..aa45b1ac206aa 100644 --- a/branches/aleung/security1/ceph/osdc/ObjectCacher.h +++ b/branches/aleung/security1/ceph/osdc/ObjectCacher.h @@ -502,6 +502,8 @@ class ObjectCacher { off_t offset, size_t len, bufferlist& bl, ExtCap *write_ext_cap, objectrev_t rev=0) { + // insert write_cap into write object + // will be inserted into bufferhead later Objecter::OSDWrite *wr; if (!write_ext_cap) wr = new Objecter::OSDWrite(bl); @@ -533,7 +535,11 @@ class ObjectCacher { bufferlist& bl, Mutex &lock, ExtCap *write_ext_cap=0, objectrev_t rev=0) { - Objecter::OSDWrite *wr = new Objecter::OSDWrite(bl); + // we really should always have a cap + if (write_ext_cap != 0) + Objecter::OSDWrite *wr = new Objecter::OSDWrite(bl, write_exp_cap); + else + Objecter::OSDWrite *wr = new Objecter::OSDWrite(bl); filer.file_to_extents(inode, offset, len, wr->extents); return atomic_sync_writex(wr, inode.ino, lock); } -- 2.39.5