]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
caching fixes
authorsageweil <sageweil@29311d96-e01e-0410-9327-a35deaab8ce9>
Thu, 12 Oct 2006 23:19:47 +0000 (23:19 +0000)
committersageweil <sageweil@29311d96-e01e-0410-9327-a35deaab8ce9>
Thu, 12 Oct 2006 23:19:47 +0000 (23:19 +0000)
git-svn-id: https://ceph.svn.sf.net/svnroot/ceph@932 29311d96-e01e-0410-9327-a35deaab8ce9

ceph/client/FileCache.cc
ceph/osdc/ObjectCacher.h

index a52a5ac4b76fdb7f743a305924e53dbe899879bb..b8e5c94ee32ac674d44029b3b5bcceda6e53da25 100644 (file)
@@ -5,6 +5,12 @@
 #include "FileCache.h"
 #include "osdc/ObjectCacher.h"
 
+#include "msg/Messenger.h"
+
+#undef dout
+#define dout(x)  if (x <= g_conf.debug_client) cout << g_clock.now() << " " << oc->objecter->messenger->get_myaddr() << ".filecache "
+#define derr(x)  if (x <= g_conf.debug_client) cout << g_clock.now() << " " << oc->objecter->messenger->get_myaddr() << ".filecache "
+
 
 // flush/release/clean
 
@@ -70,7 +76,7 @@ void FileCache::check_caps()
   // check callbacks
   map<int, list<Context*> >::iterator p = caps_callbacks.begin();
   while (p != caps_callbacks.end()) {
-    if (~(p->first) & used) {
+    if (used == 0 || (~(p->first) & used)) {
       // implemented.
       dout(10) << "used is " << cap_string(used) 
                << ", caps " << cap_string(p->first) << " implemented, doing callback(s)" << endl;
index 817f492b4caa8623b3569eea49e34f7f158acf31..b722062f2c457d2be93eb7214984377dc807acc3 100644 (file)
@@ -187,9 +187,11 @@ class ObjectCacher {
   
   // ******* ObjectCacher *********
   // ObjectCacher fields
- private:
+ public:
   Objecter *objecter;
   Filer filer;
+
+ private:
   Mutex& lock;
   
   hash_map<object_t, Object*> objects;