]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
kclient: reverse logic of O_CREAT create vs open check
authorSage Weil <sage@newdream.net>
Wed, 8 Apr 2009 18:03:15 +0000 (11:03 -0700)
committerSage Weil <sage@newdream.net>
Wed, 8 Apr 2009 18:03:15 +0000 (11:03 -0700)
src/kernel/file.c
src/kernel/mds_client.c

index 01ff65814deeb8b7ffa6bf474091c5bcc9cfb8de..99494b31425053cdcfa7894c3be925a73fd8225b 100644 (file)
@@ -26,15 +26,12 @@ prepare_open_request(struct super_block *sb, int flags, int create_mode)
        struct ceph_mds_client *mdsc = &client->mdsc;
        struct ceph_mds_request *req;
        int want_auth = USE_ANY_MDS;
+       int op = (flags & O_CREAT) ? CEPH_MDS_OP_CREATE : CEPH_MDS_OP_OPEN;
 
        if (flags & (O_WRONLY|O_RDWR|O_CREAT|O_TRUNC))
                want_auth = USE_AUTH_MDS;
 
-       dout(5, "prepare_open_request flags %d\n", flags);
-       if (flags & O_CREAT)
-               req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_OPEN, want_auth);
-       else
-               req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_CREATE, want_auth);
+       req = ceph_mdsc_create_request(mdsc, op, want_auth);
        if (IS_ERR(req))
                goto out;
        req->r_fmode = ceph_flags_to_mode(flags);
index b16e137e1e7da11934ff303faf4a991ecd133647..f9f14636deb888a1116edc8bc0f1a2865f12fc20 100644 (file)
@@ -1069,7 +1069,7 @@ static int set_request_path_attr(struct inode *rinode, struct dentry *rdentry,
                *freepath = build_dentry_path(rdentry, ppath,
                                              pathlen, ino);
                dout(10, "create_request_message dentry %p %llx/%.*s\n",
-                    rdentry, rino, *pathlen, *ppath);
+                    rdentry, *ino, *pathlen, *ppath);
        } else if (rpath) {
                *ino = rino;
                *ppath = rpath;