aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/dir.c2
-rw-r--r--kernel/fuse_kernel.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/kernel/dir.c b/kernel/dir.c
index 121a350..b493e4e 100644
--- a/kernel/dir.c
+++ b/kernel/dir.c
@@ -491,7 +491,7 @@ static int fuse_create(struct inode *dir, struct dentry *entry, int mode,
struct nameidata *nd)
{
#ifdef HAVE_LOOKUP_INSTANTIATE_FILP
- if (nd && (nd->flags & LOOKUP_CREATE)) {
+ if (nd && (nd->flags & LOOKUP_OPEN)) {
int err = fuse_create_open(dir, entry, mode, nd);
if (err != -ENOSYS)
return err;
diff --git a/kernel/fuse_kernel.h b/kernel/fuse_kernel.h
index f909df6..7ebff8b 100644
--- a/kernel/fuse_kernel.h
+++ b/kernel/fuse_kernel.h
@@ -374,7 +374,7 @@ struct fuse_dirent {
char name[0];
};
-#define FUSE_NAME_OFFSET ((unsigned) ((struct fuse_dirent *) 0)->name)
+#define FUSE_NAME_OFFSET offsetof(struct fuse_dirent, name)
#define FUSE_DIRENT_ALIGN(x) (((x) + sizeof(__u64) - 1) & ~(sizeof(__u64) - 1))
#define FUSE_DIRENT_SIZE(d) \
FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET + (d)->namelen)