From: xie xingguo Date: Thu, 25 Aug 2016 06:25:21 +0000 (+0800) Subject: os/bluestore/bluefs: check against locked field during unlink X-Git-Tag: v11.0.1~365^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8cf9386748f4df379473d8fba204201c19fcee01;p=ceph.git os/bluestore/bluefs: check against locked field during unlink Signed-off-by: xie xingguo --- diff --git a/src/os/bluestore/BlueFS.cc b/src/os/bluestore/BlueFS.cc index 30982d0b1f6f..49b1485344b3 100644 --- a/src/os/bluestore/BlueFS.cc +++ b/src/os/bluestore/BlueFS.cc @@ -2074,6 +2074,11 @@ int BlueFS::unlink(const string& dirname, const string& filename) return -ENOENT; } FileRef file = q->second; + if (file->locked) { + dout(20) << __func__ << " file " << dirname << "/" << filename + << " is locked" << dendl; + return -EBUSY; + } dir->file_map.erase(filename); log_t.op_dir_unlink(dirname, filename); _drop_link(file);