]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
Merge branch 'unstable' into mix_stale
authorSage Weil <sage@newdream.net>
Tue, 2 Nov 2010 23:25:37 +0000 (16:25 -0700)
committerSage Weil <sage@newdream.net>
Tue, 2 Nov 2010 23:25:37 +0000 (16:25 -0700)
1  2 
src/mds/CDir.cc
src/mds/CInode.cc
src/mds/CInode.h
src/mds/Locker.cc
src/mds/MDCache.cc
src/mds/Migrator.cc
src/mds/ScatterLock.h
src/mds/SimpleLock.h

diff --cc src/mds/CDir.cc
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index cde6e74a9474295c75c192762b64e618236f4189,d384ca224039cccc3fa781ea0be29fa589f80fd5..085ce400185a1ccd667f2884307ff1b8ee3c01f6
@@@ -29,10 -28,10 +29,10 @@@ class ScatterLock : public SimpleLock 
  
      more_bits_t(ScatterLock *lock) :
        dirty(false), flushing(false), scatter_wanted(false),
 -      item_updated(lock)
 +      item_updated(lock), stale(false)
      {}
  
-     bool empty() {
+     bool empty() const {
        return dirty == false &&
        flushing == false &&
        scatter_wanted == false &&
@@@ -138,23 -140,10 +142,25 @@@ public
      finish_flush();
    }
    
 +  bool is_stale() const {
 +    return have_more() && _more->stale;
 +  }
 +
 +  void set_stale() {
 +    more()->stale = true;
 +  }
 +
 +  void clear_stale() {
 +    if (is_stale()) {
 +      _more->stale = false;
 +      try_clear_more();
 +    }
 +  }
 +
    void set_last_scatter(utime_t t) { more()->last_scatter = t; }
-   utime_t get_last_scatter() { return more()->last_scatter; }
+   utime_t get_last_scatter() {
+     return more()->last_scatter;
+   }
  
    void infer_state_from_strong_rejoin(int rstate, bool locktoo) {
      if (rstate == LOCK_MIX || 
Simple merge