]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore/BlueFS: fix leak of iocs in writer
authorSage Weil <sage@redhat.com>
Tue, 29 Dec 2015 18:10:17 +0000 (13:10 -0500)
committerSage Weil <sage@redhat.com>
Fri, 1 Jan 2016 18:08:55 +0000 (13:08 -0500)
Signed-off-by: Sage Weil <sage@redhat.com>
src/os/bluestore/BlueFS.h

index e682dec1121ebe32b25df13bf7359b4207ea67de..cbdefff3c00edeb2befdb38fe7d93bcf1f0247af 100644 (file)
@@ -67,16 +67,12 @@ public:
     bufferlist tail_block;  ///< existing partial block at end of file, if any
 
     Mutex lock;
-    /*Cond cond;
-    bool num_aio_in_flight;
-    */
     vector<IOContext*> iocv;  ///< one for each bdev
 
     FileWriter(FileRef f, unsigned num_bdev)
       : file(f),
        pos(0),
-       lock("BlueFS::FileWriter::lock") { //,
-       //num_aio_in_flight(0) {
+       lock("BlueFS::FileWriter::lock") {
       file->num_writers.inc();
       iocv.resize(num_bdev);
       for (unsigned i = 0; i < num_bdev; ++i) {
@@ -85,6 +81,9 @@ public:
     }
     ~FileWriter() {
       file->num_writers.dec();
+      for (auto p : iocv) {
+       delete p;
+      }
     }
 
     void append(const char *buf, size_t len) {