From: Liu Yuan <[email protected]>

To quote from Kazutaka:
"It is okay to read the older data if the vm doesn't receive the ack of
the write requests yet."

So we don't need locks either for object cache.

Signed-off-by: Liu Yuan <[email protected]>
---
 sheep/object_cache.c |   20 --------------------
 1 files changed, 0 insertions(+), 20 deletions(-)

diff --git a/sheep/object_cache.c b/sheep/object_cache.c
index d3fada3..a722259 100644
--- a/sheep/object_cache.c
+++ b/sheep/object_cache.c
@@ -319,17 +319,7 @@ static int read_cache_object_noupdate(uint32_t vid, 
uint32_t idx, void *buf,
                goto out;
        }
 
-       if (flock(fd, LOCK_SH) < 0) {
-               ret = SD_RES_EIO;
-               eprintf("%m\n");
-               goto out_close;
-       }
        size = xpread(fd, buf, count, offset);
-       if (flock(fd, LOCK_UN) < 0) {
-               ret = SD_RES_EIO;
-               eprintf("%m\n");
-               goto out_close;
-       }
 
        if (size != count) {
                eprintf("size %zu, count:%zu, offset %jd %m\n",
@@ -366,17 +356,7 @@ static int write_cache_object_noupdate(uint32_t vid, 
uint32_t idx, void *buf,
                goto out;
        }
 
-       if (flock(fd, LOCK_EX) < 0) {
-               ret = SD_RES_EIO;
-               eprintf("%m\n");
-               goto out_close;
-       }
        size = xpwrite(fd, buf, count, offset);
-       if (flock(fd, LOCK_UN) < 0) {
-               ret = SD_RES_EIO;
-               eprintf("%m\n");
-               goto out_close;
-       }
 
        if (size != count) {
                eprintf("size %zu, count:%zu, offset %jd %m\n",
-- 
1.7.1

-- 
sheepdog mailing list
[email protected]
http://lists.wpkg.org/mailman/listinfo/sheepdog

Reply via email to