Re: sparc: Clashing values for O_PATH and FMODE_NONOTIFY?

From: David Miller
Date: Wed Nov 19 2014 - 15:30:11 EST


From: David Drysdale <drysdale@xxxxxxxxxx>
Date: Tue, 18 Nov 2014 13:13:51 +0000

> Hi folks,
>
> It looks like the value for O_PATH on sparc:
>
> arch/sparc/include/uapi/asm/fcntl.h:37:#define O_PATH 0x1000000
>
> clashes with the arch-independent value for __FMODE_NONOTIFY:
>
> include/linux/fs.h:137:#define FMODE_NONOTIFY ((__force fmode_t)0x1000000)
> include/linux/fs.h:2764:#define __FMODE_NONOTIFY ((__force int)
> FMODE_NONOTIFY)
>
> and they are both in the same numbering space, as indicated by the
> comment at the top of include/uapi/asm-generic/fcntl.h and the use in
> fs/notify/fanotify/fanotify_user.c:715.
>
> Presumably this could theoretically cause problems (no notifications for
> O_PATH files on SPARC?), so would it be a good idea to renumber
> FMODE_NONOTIFY? (I *think* that value is entirely kernel-internal.)
>
> Given that this has happened before (12ed2e36c98aec6c4155 "fanotify:
> FMODE_NONOTIFY and __O_SYNC in sparc conflict") it would probably
> also be a good idea to add __FMODE_NOTIFY to the uniqueness check in
> fs/fcntl.c:fcntl_init().
>
> Thoughts?

I think you will need to change the internal value, to not clash with
the sparc exported one, for sure.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/