Messages in this thread | | | From | Linus Torvalds <> | Date | Mon, 17 Jun 2019 10:49:44 -0700 | Subject | Re: [PATCH] uapi: avoid namespace conflict in linux/posix_types.h |
| |
On Mon, Jun 17, 2019 at 4:45 AM Florian Weimer <fweimer@redhat.com> wrote: > > I wanted to introduce a new header, <asm/kernel_long_t.h>, and include > it where the definition of __kernel_long_t is needed, something like > this (incomplete, untested):
So this doesn't look interesting to me: __kernel_long_t is neither interesting as a type anyway (it's just a way for user space to override "long"), nor is it a namespace violation.
So honestly, user space could do whatever it wants for __kernel_long_t anyway.
The thing that I think we should try to fix is just the "val[]" thing, ie
> A different approach would rename <asm/posix_types.h> to something more > basic, exclude the two structs, and move all internal #includes which do > need the structs to the new header.
In fact, I wouldn't even rename <posix_types.h> at all, I'd just make sure it's namespace-clean.
I _think_ the only thing causing problems is '__kernel_fsid_t' due to that "val[]" thing, so just remove ity entirely, and add it to <statfs.h> instead.
And yeah, then we'd need to maybe make sure that the (couple) of __kernel_fsid_t users properly include that statfs.h file.
Hmm?
Linus
| |