Messages in this thread | | | Subject | Re: [patch] inotify: make user visible types portable | From | Robert Love <> | Date | Fri, 01 Oct 2004 03:39:59 -0400 |
| |
On Thu, 2004-09-30 at 23:44 -0700, Paul Jackson wrote:
> I've no doubt you're right here. But I'm a little confused. > > Are you saying to use __u32 so user code can compile with these kernel > headers and see your new inotify symbols w/o polluting their name space > with the non-underscored typedef symbols?
I am saying I have to use __u32, because they are user visible and u32 is not. Also, the rule is to use __u32.
> I though such use of kernel headers in compiling user code was > deprecated. I'd have figured this meant while we might not go out of > way to break someone already doing it, we wouldn't make any effort, or > tolerate any ugly as sin __foo names, in order to add to the list of > symbols so accessible. > > If you have a few minutes more patience, perhaps you could explain > where my understanding departed from reality.
How else is user-space to know about this structure?
It has always been a no-no for user-space to access __KERNEL__ wrapped parts of headers, but sharing a header (or at least generating user-space's version of the header from the kernel header) is the only way to ensure that both kernel and user-space speak the same language.
And not just structures, but flags, ioctl commands, ...
Robert Love
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |