~ubuntu-branches/ubuntu/quantal/ceph/quantal

« back to all changes in this revision

Viewing changes to src/client/Client.cc

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2012-08-27 08:23:21 UTC
  • mto: This revision was merged to the branch mainline in revision 21.
  • Revision ID: package-import@ubuntu.com-20120827082321-2cfej6ddvk63vsqq
Tags: upstream-0.48.1
ImportĀ upstreamĀ versionĀ 0.48.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
5140
5140
  r = objectcacher->file_read(&in->oset, &in->layout, in->snapid,
5141
5141
                              off, len, bl, 0, onfinish);
5142
5142
  if (r == 0) {
 
5143
    client_lock.Unlock();
 
5144
    flock.Lock();
5143
5145
    while (!done) 
5144
 
      cond.Wait(client_lock);
 
5146
      cond.Wait(flock);
 
5147
    flock.Unlock();
 
5148
    client_lock.Lock();
5145
5149
    r = rvalue;
5146
5150
  } else {
5147
5151
    // it was cached.
5172
5176
                      pos, left, &tbl, 0,
5173
5177
                      in->truncate_size, in->truncate_seq,
5174
5178
                      onfinish);
 
5179
    client_lock.Unlock();
 
5180
    flock.Lock();
5175
5181
    while (!done)
5176
 
      cond.Wait(client_lock);
 
5182
      cond.Wait(flock);
 
5183
    flock.Unlock();
 
5184
    client_lock.Lock();
5177
5185
 
5178
5186
    if (r < 0)
5179
5187
      return r;
5339
5347
                       in->truncate_size, in->truncate_seq,
5340
5348
                       onfinish, onsafe);
5341
5349
    
 
5350
    client_lock.Unlock();
 
5351
    flock.Lock();
5342
5352
    while (!done)
5343
 
      cond.Wait(client_lock);
 
5353
      cond.Wait(flock);
 
5354
    flock.Unlock();
 
5355
    client_lock.Lock();
5344
5356
  }
5345
5357
 
5346
5358
  // time