[PATCH] don't pass bogus flags to LOOKUP_PARENT lookup in spufs
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 3 Aug 2008 02:40:42 +0000 (22:40 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Thu, 23 Oct 2008 09:12:55 +0000 (05:12 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/powerpc/platforms/cell/spufs/syscalls.c

index 49c87769b1f8f96936ac713be1b42014062adf51..c23617c6baf39ed1f4854f1f2ed2fde10ebd8e33 100644 (file)
@@ -69,9 +69,9 @@ static long do_spu_create(const char __user *pathname, unsigned int flags,
        if (!IS_ERR(tmp)) {
                struct nameidata nd;
 
-               ret = path_lookup(tmp, LOOKUP_PARENT|
-                               LOOKUP_OPEN|LOOKUP_CREATE, &nd);
+               ret = path_lookup(tmp, LOOKUP_PARENT, &nd);
                if (!ret) {
+                       nd.flags |= LOOKUP_OPEN | LOOKUP_CREATE;
                        ret = spufs_create(&nd, flags, mode, neighbor);
                        path_put(&nd.path);
                }